У меня есть небольшая проблема с моим скриптом.NodeJS Проверьте, существует ли запись
if (msg.indexOf('!addcom') === 0) {
if (typeof args[1,2] !== 'undefined' && args[1].trim() !== '') {
if(_.indexOf(modlist, user.username) >= 0) {
msg.split(" ");
check = connection.query('SELECT 1 FROM commands WHERE channel = "'+channel+'" AND command = "'+args[1]+'"');
args[2] = args.slice(2).join(" ");
if (check === null) {
connection.query('INSERT INTO commands (channel, command, message) VALUES ("'+channel+'","'+args[1]+'","'+args[2]+'")');
}
else if (check === 1) {
client.say(channel, "Der Befehl " +args[1]+ " existiert bereits!");
}
else {
client.say(channel, "Ein Fehler ist aufgetreten!");
}
}
else {
client.say(channel, user.username+", du bist kein Moderator und kannst diesen Befehl daher nicht ausführen!");
}
}
else {
client.say(channel, "Syntax Fehler: !addcom [!Befehl] [Nachricht]");
}
}
Я хочу, чтобы проверить, есть ли уже запись для channel = "'+channel'" AND command = "'args[1]'"
, потому что они уникальны вместе, но по какой-то причине он не будет работать должным образом.
Либо он выходит из строя из-за дублирования ввода или он просто переходит к последнему пункту еще else { client.say(channel, "Ein Fehler ist aufgetreten!"); }
Кто-нибудь знает, где я допустил ошибку?
С уважением Kazuto
Ой, спасибо. Я полностью забыл об этом: D – Kazuto
Я изменил его сейчас на: 'connection.query ('SELECT 1 AS check FROM commands WHERE channel ="' + channel + '"AND command ="' + args [1] + ' « 'функция (ERR, строки, поля) { \t \t \t \t \t \t \t если (строки [0] .Проверить === NULL)', но это дает мне следующую ошибку TypeError:. не удается прочитать свойство' 0 'of undefined' – Kazuto
Сначала вы должны сначала проверить свойство 'err'. Я уверен, что он установлен на ошибку. – mscdex