Discord.js ошибка запроса mysql недопустимый ввод

#javascript #mysql #node.js #discord #discord.js

#javascript #mysql #node.js #Discord #discord.js

Вопрос:

Я хотел сделать запрос MySQL с моим Discord.js бот, однако, я всегда получаю сообщение об ошибке.

Мой код:

 client.on("message", async (message) => {
    if (message.content.startsWith("?userinfo")) {
        database.query("SELECT members FROM usertable WHERE username=?", [message.content], function (err, results) {
            if (err) {
                throw err;
            }
            //console.log(results[0]);

            var resultArray = Object.values(JSON.parse(JSON.stringify(results[0])));
            console.log(resultArray);
            steamid = resultArray;
        });
    }
});
 

Комментарии:

1. Какую ошибку вы получаете?

Ответ №1:

вы берете на себя полное содержимое сообщения, и поэтому возникает ошибка создайте переменную и передайте ей содержимое сообщения

 var messageContent = message.content.slice(10);
 

(фрагмент берет полную строку и обрезает ее до указанной длины)

А затем замените message.content в sql-запросе на «MessageContent».

пример:

     client.on('message', async message => {
        if (message.content.startsWith('?userinfo')) {
            var messageContent = message.content.slice(10);
            database.query('SELECT members FROM usertable WHERE username=?', [messageContent], function (err,results) {
                if (err) {
                    throw err;
                }
                //console.log(results[0]);
    
                var resultArray = Object.values(JSON.parse(JSON.stringify(results[0])));
                console.log(resultArray);
                steamid = resultArray;
            })
    
      }
    }