Загрузка...

I want to check if the user exists in the database. Telegraph

Thread in Node.js created by bamschans Aug 29, 2022. 288 views

  1. bamschans
    bamschans Topic starter Aug 29, 2022 138 Nov 16, 2021
    Всем привет есть такая функция которая по идее должна возвращать либо true либо false но она возвращает undefined. Использую бд
    mysql2. Уже бошку сломал.

    Code

    const isUserSet = (chatId) => {
    let chatId1 = chatId;
    let sql = `SELECT * FROM users WHERE chatid="${chatId1}" LIMIT 1`;
    let result = connection.query(sql, (err, res, fields) => {
    if (res.length === 0) {
    return false;
    } else {
    return true;
    }
    });
    }

     
  2. DianoxPlay
    DianoxPlay Aug 29, 2022 Banned 19 Jul 21, 2020
    погоди либо я тупой либо ты поставил три равно
    The post was merged to previous Aug 29, 2022
    как он может вернуть тру или фолс если он сравнить не может
    The post was merged to previous Aug 29, 2022
    попробуй два равно заместь трех
     
    1. bamschans Topic starter
      DianoxPlay, Это строгое сравнение друже, даже если поставлю == все равно так.
    2. vtlstolyarov
      bamschans,
      connection.query
      - асинхронная функция, она ничего не возвращает - она вызывает callback. Так что тебе надо или тоже добавить свой callback или переделать всё на async/await
  3. pinilopa
    pinilopa Aug 30, 2022 Banned 69 Apr 17, 2021
    покажи что выводит res
     
    1. bamschans Topic starter
      pinilopa, Уже решил, спасибо.
  4. mulyar_trx
    mulyar_trx Sep 14, 2022 Banned 3 Jul 13, 2022
    Бля я походу один на этом форуме кто понимает как работают асинхронные запросы
    JavaScript
    const isUserSet = async (chatId) => {
    let chatId1 = chatId;

    let result = await (new Promise((resolve) => {
    let sql = `SELECT * FROM users WHERE chatid="${chatId1}" LIMIT 1`;
    connection.query(sql, (err, res, fields) => {
    if (res.length === 0) {
    resolve(false);
    } else {
    resolve(true);
    }
    });
    }))
    return result;
    }
    И лучше используй какую-то библиотеку для работы с бд получше, с этой еботни много

    Само собой эту функцию юзай в другой асинхронной функции с await, ибо она ожидает ответа от бд
     
  5. el9in
    el9in Sep 18, 2022 lolz.live/threads/7387449 — USDT TRC без комиссии
    JavaScript
    const isUserSet = async (chatId) => {
    let chatId1 = chatId;
    let sql = `SELECT * FROM users WHERE chatid="${chatId1}" LIMIT 1`;
    let result = await connection.query(sql, (err, res, fields) => {
    if (res.length === 0) {
    return false;
    } else {
    return true;
    }
    });
    }
     
Loading...
Top