[Demande] bind pubm SQL
#14
(01/04/2017, 21:00)DiXiT a écrit : @Strategy :
Moi je suis tout ouïe de ton idée car ce que tu marques on le sait déjà, je le prouve avec le code donc la question est: comment coderais-tu cela
PS: la Table box est dynamique et contient plus de 50mots pour le moment donc il y a forcement une boucle quelques part

Avec la fonction LIKE tu as pas forcement de boucles ca dépend comment tu codes le truc coté TCL et ca c'est le problème de tout développeurs pour arriver a un truc stable maintenable et évolutif avant de ce lancer tête baissé dans un code il faut avant tout réfléchir a ce que l'on veut faire et comment le faire. Sans vouloir êtres péjoratif juste explicatif! Il y a plusieurs méthodes pour faire ce que vous voulez faire de mon point de vue vous partez a l'envers en cherchant a boucler la BDD alors que la boucle devrait au pire des cas être faite sur votre phrase moi ce que je ferai a votre place sans etre un expert en TCL c'est:

1: Je verifiai si le protect='off' de votre requete est valide ou pas j'ai pas compris ce passage si non valide j’arrête la procédure
2: Je contrôlerai bien avoir une chaîne de caractère en vérifiant que j'ai pas du nul
3: Si j'ai bien au moins un mot  je commencerai par déclarer ma variable $request en lui indiquant quelques chose comme "select mot from box"
4: Je ferai une boucle de ma phrase avec un incrément commençant a 0 (ce qui me semble le plus simple mais dans d'autres langage je ferai autrement au experts du TCL de vous donnez d'autres solutions)
5: Si l’incrément est de 0 j'ajoute WHERE sinon OR a ma variable $request puis la suite nick LIKE MON_MOT 
6: J'incrémente encore ma variable sortie de ma boucle en vérifiant le salon "AND channel = $channel"
7: j'execute la requete SQL
8: Si j'ai un résultat a ma requête sql c'est que le mot est détecté dans ma phrase dans ce cas tu kick ban ou que sais je

 Après j'ai un raisonnement de développeur web mais je pense que cette solution est plus adéquate.

Un petit PS: Même si dans de très très rare cas on a pas le choix tout le monde te le dira il faut toujours éviter une boucle dans une boucle c'est le meilleur moyen de faire ramer un code ou pire de faire crasher le système et en général quand tu te retrouve avec une boucle dans une boucle c'est que forcément il y a un défaut de conception derrière.
Répondre Avertir


Messages dans ce sujet
bind pubm SQL - par aliasangelius - 30/03/2017, 12:03
RE: bind pubm SQL - par CrazyCat - 30/03/2017, 12:55
RE: bind pubm SQL - par aliasangelius - 30/03/2017, 13:27
RE: bind pubm SQL - par CrazyCat - 30/03/2017, 13:36
RE: bind pubm SQL - par aliasangelius - 30/03/2017, 13:41
RE: bind pubm SQL - par CrazyCat - 30/03/2017, 14:01
RE: bind pubm SQL - par aliasangelius - 30/03/2017, 14:12
RE: bind pubm SQL - par CrazyCat - 31/03/2017, 08:54
RE: bind pubm SQL - par aliasangelius - 31/03/2017, 09:59
RE: bind pubm SQL - par Strategy - 31/03/2017, 15:28
RE: bind pubm SQL - par DiXiT - 01/04/2017, 17:28
RE: bind pubm SQL - par Strategy - 01/04/2017, 19:26
RE: bind pubm SQL - par DiXiT - 01/04/2017, 21:00
RE: bind pubm SQL - par Strategy - 01/04/2017, 22:54
RE: bind pubm SQL - par CrazyCat - 01/04/2017, 23:32
RE: bind pubm SQL - par DiXiT - 01/04/2017, 23:52
RE: bind pubm SQL - par CrazyCat - 02/04/2017, 00:14
RE: bind pubm SQL - par DiXiT - 02/04/2017, 00:55

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté