Boucle while pour bot discord
Résolu/Fermé
David987
Messages postés
120
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
16 octobre 2022
-
3 mars 2022 à 13:33
David987 Messages postés 120 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 16 octobre 2022 - 4 mars 2022 à 23:00
David987 Messages postés 120 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 16 octobre 2022 - 4 mars 2022 à 23:00
A voir également:
- Boucle while pour bot discord
- Discord pour mac - Télécharger - Téléphonie & Visio
- Créer un compte discord - Guide
- Connexion sctr discord - Forum Réseaux sociaux
- Echo discord - Forum Casque et écouteurs
- Caractère invisible discord ✓ - Forum Windows
3 réponses
David987
Messages postés
120
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
16 octobre 2022
1
4 mars 2022 à 11:43
4 mars 2022 à 11:43
Bonjour,
Je viens montrer un test qui ne fait pas planter le bot mais qui ne m'affiche pas toutes les entrées de ma table :
Help me please.
Je viens montrer un test qui ne fait pas planter le bot mais qui ne m'affiche pas toutes les entrées de ma table :
//listage des sigle déjà enregistré else if (message.content.startsWith(prefix + "allsigle")){ message.delete(); var suffix = message.content.split(" ").slice(1).join(" "); pool.query(`SELECT * FROM abreviation`, function (err, results) { if ( results[0] ) { pool.query(`SELECT * FROM abreviation`, function(err) { if ( err ) throw err; }) while (`${results[0].sigle}` > 0) { let embed = { color: 0x000000, title: '__**Liste complète des abréviations connues du bot actuellement: **__', description: '**' + (`${results[0].sigle}`) + '**' + '\n', timestamp: new Date(), }; message.channel.send({ embed: embed }); console.log(`${message.author.username} a consulté la liste des abréviations`) } } else { message.channel.send(`${message.author}` + 'Je ne connais pas encore toutes les abréviations de coc, mon encyclopédie s\'enrichit de jours en jours grâce à toi !'); console.log(`${message.author.username} a tenté de regarder la liste des abréviations.`) } }) return; }
Help me please.
Salut,
pourquoi ne pas faire cela directement au niveau de la base de donnée, lors de la requête SQL?
Cela semble plus logique et éviterait d'avoir à faire des contorsions en PHP et est assez simple à écrire:
https://sql.sh/cours/select
pourquoi ne pas faire cela directement au niveau de la base de donnée, lors de la requête SQL?
Cela semble plus logique et éviterait d'avoir à faire des contorsions en PHP et est assez simple à écrire:
SELECT nomduchamp FROM nomdelatable;
https://sql.sh/cours/select
David987
Messages postés
120
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
16 octobre 2022
1
4 mars 2022 à 20:42
4 mars 2022 à 20:42
bonjour,
Merci pour ton aide, alors j'ai fais comme tu m'as dis :
Sauf que le problème c'est qu'il ne met pas les champs de la tables mais une liste de [object Object],[object Object],
une idée ?
Merci pour ton aide, alors j'ai fais comme tu m'as dis :
else if (message.content.startsWith(prefix + "allsigle")){ message.delete(); var suffix = message.content.split(" ").slice(1).join(" "); pool.query(`SELECT sigle FROM abreviation`, function (err, results) { if ( results[0] ) { pool.query(`SELECT sigle FROM abreviation`, function(err) { if ( err ) throw err; }) var nbr_entree = 0; let embed = { color: 0x000000, title: '__**Liste complète des abréviations connues du bot actuellement: **__', description: '**' + (`${results}[0].sigle`) + '**' + '\n', timestamp: new Date(), }; message.channel.send({ embed: embed }); console.log(`${message.author.username} a consulté la liste des abréviations`) } else { message.channel.send(`${message.author}` + 'Utilise la commande +commandes pour obtenir ce que je peux faire !'); console.log(`${message.author.username} a tenté de regarder la liste des abréviations.`) } }) return; }
Sauf que le problème c'est qu'il ne met pas les champs de la tables mais une liste de [object Object],[object Object],
une idée ?
David987
Messages postés
120
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
16 octobre 2022
1
>
David987
Messages postés
120
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
16 octobre 2022
4 mars 2022 à 20:50
4 mars 2022 à 20:50
Que je fasse :
(`${results}[0].sigle`)
ou ça :
(`${results}[0]`)
ça m'affiche le bon nombre de résultat mais pas le nom mais [object Object],[object Object],
help me please
(`${results}[0].sigle`)
ou ça :
(`${results}[0]`)
ça m'affiche le bon nombre de résultat mais pas le nom mais [object Object],[object Object],
help me please
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
>
David987
Messages postés
120
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
16 octobre 2022
4 mars 2022 à 21:21
4 mars 2022 à 21:21
Ajoute un console.log(results); pour voir la structure de la variable.
A priori results est un tableau d'objet (la liste des sigles), donc results[0] retourne le premier sigle, results[1] le deuxième, etc. Il faudrait plutôt faire une boucle.
A priori results est un tableau d'objet (la liste des sigles), donc results[0] retourne le premier sigle, results[1] le deuxième, etc. Il faudrait plutôt faire une boucle.
David987
Messages postés
120
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
16 octobre 2022
1
>
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
4 mars 2022 à 21:36
4 mars 2022 à 21:36
Bonsoir et merci pour ta réponse,
Justement c'est ça le problème, c'est que je ne sais pas comment la faire la boucle avec node js.
Voici mon code :
j'ai bien tous les bons résultats dans ma console, ça me met ça :
RowDataPacket < sigle: 'nom' >, (91 fois puisqu'il y à 91 lignes dans ma table)
Si tu peux m'aider pour faire cette boucle, je suis preneur.
Justement c'est ça le problème, c'est que je ne sais pas comment la faire la boucle avec node js.
Voici mon code :
//listage des sigle déjà enregistré else if (message.content.startsWith(prefix + "allsigle")){ message.delete(); var suffix = message.content.split(" ").slice(1).join(" "); pool.query(`SELECT sigle FROM abreviation`, function (err, results) { if ( results[0] ) { pool.query(`SELECT sigle FROM abreviation`, function(err) { if ( err ) throw err; }) var nbr_entree = 0; let embed = { color: 0x000000, title: '__**Liste complète des abréviations connues du bot actuellement: **__', description: '**' + results + '**' + '\n', timestamp: new Date(), }; message.channel.send({ embed: embed }); console.log(`${message.author.username} a consulté la liste des abréviations`) console.log(results) } else { message.channel.send(`${message.author}` + 'Utilise la commande +commandes pour obtenir ce que je peux faire !'); console.log(`${message.author.username} a tenté de regarder la liste des abréviations.`) } }) return; }
j'ai bien tous les bons résultats dans ma console, ça me met ça :
RowDataPacket < sigle: 'nom' >, (91 fois puisqu'il y à 91 lignes dans ma table)
Si tu peux m'aider pour faire cette boucle, je suis preneur.
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
>
David987
Messages postés
120
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
16 octobre 2022
4 mars 2022 à 22:06
4 mars 2022 à 22:06
Bonsoir,
La variable pool correspond à quel paquet npm (require) ? La documentation doit avoir des exemples.
C'est normal que tu exécutes deux fois la même requête sql à la suite ?
La variable pool correspond à quel paquet npm (require) ? La documentation doit avoir des exemples.
C'est normal que tu exécutes deux fois la même requête sql à la suite ?
David987
Messages postés
120
Date d'inscription
samedi 19 décembre 2015
Statut
Membre
Dernière intervention
16 octobre 2022
1
4 mars 2022 à 21:22
4 mars 2022 à 21:22
Je précise que lorsque je met
console.log(results), j'ai bien tous ce que je veux mais je n'arrive pas à ce le bot me l'affiche aussi sur le salon ou je fais ma commande.
je comprend plus rien.
console.log(results), j'ai bien tous ce que je veux mais je n'arrive pas à ce le bot me l'affiche aussi sur le salon ou je fais ma commande.
je comprend plus rien.
4 mars 2022 à 12:46
Et ça fonctionne pas, la boucle ne m'affiche pas la liste de ma table, par contre ma console m'affiche bien le message que je veux qu'elle m'affiche.