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, бля чел если ты не смог за день осилить две статьи по промисам на 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'); Код 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, вот ебучий чат гпт и статьи мне не смогли помочь, потому что тут уже индивидуальный человеческий фактор, потому что я даже не мог задать вопрос потому что механику языка не понимаю
caedes, но теперь вопрос в том, как к @app.route('/') прибавить еще значение из бд чтобы получилось @app.route('/ktme'), например, это типо защита от кт гугла или яндекса