var someVar = []; function setValue(value) { someVar += value; } function getLogin(userLogin) { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; setValue(rows[0].login) }); // set the value of nik to the nickname of the retrieved user } getLogin('petya') console.log(someVar) JS var someVar = []; function setValue(value) { someVar += value; } function getLogin(userLogin) { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; setValue(rows[0].login) }); // set the value of nik to the nickname of the retrieved user } getLogin('petya') console.log(someVar) хуйня выводит: (0) [] ну какого хуя оно не становится равным значению, пиздец, я питонист если че, там все намного лучше с этим
function setValue(value) { someVar.push(value); } JS function setValue(value) { someVar.push(value); }
FUKKDABROKE, var someVar = []; function setValue(value) { someVar.push(value); console.log(someVar[0]); } function getLogin(userLogin) { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; setValue(rows[0].login) }); // set the value of nik to the nickname of the retrieved user } getLogin('petya') JS var someVar = []; function setValue(value) { someVar.push(value); console.log(someVar[0]); } function getLogin(userLogin) { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; setValue(rows[0].login) }); // set the value of nik to the nickname of the retrieved user } getLogin('petya')
WickedFace, вообще вот для чего использую, но нихуя не работает var someVar = []; function setValue(value) { someVar.push(value); } function getLogin(userLogin) { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; setValue(rows[0].login) }); // set the value of nik to the nickname of the retrieved user } app.use(compression()); getLogin('petya') app.use( '/' + someVar[0], express.static(publicFolderName) ); JS var someVar = []; function setValue(value) { someVar.push(value); } function getLogin(userLogin) { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; setValue(rows[0].login) }); // set the value of nik to the nickname of the retrieved user } app.use(compression()); getLogin('petya') app.use( '/' + someVar[0], express.static(publicFolderName) );
WickedFace, захожу по localhost:5000/petya/ не существует такой, как мне придать роуту динамичный путь, который будет определяться в зависимости результата sql
У тебя connection.query асинхронно выполняется. Ты выводишь переменную, когда еще асинхронная функция не была завершена
FUKKDABROKE, const someVar = []; function setValue(value) { someVar.push(value); } function getLogin(userLogin) { return new Promise(r => { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; r(rows[0].login) }); }) // set the value of nik to the nickname of the retrieved user } main() async function main(){ const login = await getLogin('petya') setValue(login) console.log(someVar) } Code const someVar = []; function setValue(value) { someVar.push(value); } function getLogin(userLogin) { return new Promise(r => { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; r(rows[0].login) }); }) // set the value of nik to the nickname of the retrieved user } main() async function main(){ const login = await getLogin('petya') setValue(login) console.log(someVar) }
FUKKDABROKE, бля чел если ты не смог за день осилить две статьи по промисам на learnjavascript, то ты сам понимаешь...
caedes, лирнжаваскрипт в душе не ебу что этого до этого момента, твое решение правильное, но при этом когда я пытаюсь заусунуть в роуты эти значения, какого то хуя не работает. app.use( `/${someVar[0]}`, express.static(publicFolderName) ); Cannot GET /petya/ JS app.use( `/${someVar[0]}`, express.static(publicFolderName) ); Cannot GET /petya/
caedes, var someVar = []; function setValue(value) { someVar.push(value); } function getLogin(userLogin) { return new Promise(r => { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; r(rows[0].login) }); }) // set the value of nik to the nickname of the retrieved user } async function main(){ const login = await getLogin('petya') setValue(login) console.log(someVar[0]) } app.use(compression()); main() app.use( `/${someVar[0]}`, express.static(publicFolderName) ); JS var someVar = []; function setValue(value) { someVar.push(value); } function getLogin(userLogin) { return new Promise(r => { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function ( err, rows, ) { if (err) throw err; r(rows[0].login) }); }) // set the value of nik to the nickname of the retrieved user } async function main(){ const login = await getLogin('petya') setValue(login) console.log(someVar[0]) } app.use(compression()); main() app.use( `/${someVar[0]}`, express.static(publicFolderName) );
caedes, а как сделать чтобы оно ... я ж не могу app.use куда то засунуть и в него тоже, покажи как надо
Код не работает так, как ожидается, потому что функция setValue() пытается добавить значение к массиву someVar, который изначально пуст. Для добавления значения к массиву следует использовать метод push(). Кроме того, функция getLogin() выполняет асинхронный запрос к базе данных, поэтому вывод результата в консоль должен происходить после завершения запроса. Исправленный код: var someVar = []; function setValue(value) { someVar.push(value); } function getLogin(userLogin) { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function (err, rows) { if (err) throw err; setValue(rows[0].login); console.log(someVar); // выведем результат после завершения запроса }); } getLogin('petya'); Code var someVar = []; function setValue(value) { someVar.push(value); } function getLogin(userLogin) { const result = connection.query('SELECT * FROM users WHERE login = ?', [userLogin], function (err, rows) { if (err) throw err; setValue(rows[0].login); console.log(someVar); // выведем результат после завершения запроса }); } getLogin('petya');
caedes, по статьям делал, вот по опыту по питону, иногда статьи лютая хуйня говнокодская, но выбирать не приходится, потому что познаний в жс 0.1%, щас попробую без статика, вроде было написано, что static нужен, чтобы передавать файл
Статик чтобы передавать статичные файлы, главную страницу, например. Если ты из бд что-то тянешь, то обычный get запрос принимаешь
caedes, @app.route('/') def index(): try: cursor = mysql.new_cursor(dictionary=True) cursor.execute('SELECT * FROM domains WHERE domain = %s', (app.config['HOST'],)) domain = cursor.fetchone() cursor.execute('SELECT * FROM designs WHERE id = %s AND login = %s', (domain['design'], domain['login'])) design = cursor.fetchone() cursor.execute('SELECT * FROM users WHERE login = %s', (domain['login'],)) user = cursor.fetchone() cursor.execute('SELECT * FROM statistic WHERE login = %s AND date = %s', (domain['login'], today.strftime("%Y-%m-%d"))) userstat = cursor.fetchone() return render_template('index.html', context=None, logo=design['logo'], img1=design['1img'], title1=design['1title'], podtitle1=design['1podtitle'], button1=design['1button'], img2=design['2img'], title2=design['2title'], podtitle2=design['2podtitle'], button2=design['2button'], button22=design['2button2'], urlbutton2=design['urlbutton2'], img3=design['3img'], title3=design['3title'], podtitle3=design['3podtitle'], img4=design['4img'], title4=design['4title'], podtitle4=design['4podtitle'], img5=design['5img'], title5=design['5title'], podtitle5=design['5podtitle'], url5button1=design['5urlbutton1'], url5button2=design['5urlbutton2'], text5button1=design['5textbutton1'], text5button2=design['5textbutton12']) except Exception as err: pass Python @app.route('/') def index(): try: cursor = mysql.new_cursor(dictionary=True) cursor.execute('SELECT * FROM domains WHERE domain = %s', (app.config['HOST'],)) domain = cursor.fetchone() cursor.execute('SELECT * FROM designs WHERE id = %s AND login = %s', (domain['design'], domain['login'])) design = cursor.fetchone() cursor.execute('SELECT * FROM users WHERE login = %s', (domain['login'],)) user = cursor.fetchone() cursor.execute('SELECT * FROM statistic WHERE login = %s AND date = %s', (domain['login'], today.strftime("%Y-%m-%d"))) userstat = cursor.fetchone() return render_template('index.html', context=None, logo=design['logo'], img1=design['1img'], title1=design['1title'], podtitle1=design['1podtitle'], button1=design['1button'], img2=design['2img'], title2=design['2title'], podtitle2=design['2podtitle'], button2=design['2button'], button22=design['2button2'], urlbutton2=design['urlbutton2'], img3=design['3img'], title3=design['3title'], podtitle3=design['3podtitle'], img4=design['4img'], title4=design['4title'], podtitle4=design['4podtitle'], img5=design['5img'], title5=design['5title'], podtitle5=design['5podtitle'], url5button1=design['5urlbutton1'], url5button2=design['5urlbutton2'], text5button1=design['5textbutton1'], text5button2=design['5textbutton12']) except Exception as err: pass
caedes, но теперь вопрос в том, как к @app.route('/') прибавить еще значение из бд чтобы получилось @app.route('/ktme'), например, это типо защита от кт гугла или яндекса