Mise en forme de code: pensez à utiliser les balises [ tcl ] et [ /tcl ] (sans les espaces bien sûr) autour de vos codes tcl afin d'avoir un meilleur rendu et une coloration syntaxique. x


Problème d'arguments
#1
Bonjour,

J'ai un petit problème (qui est surement idiot), mais la question la plus idiote étant celle que l'on ne pose pas, je me lance :)

J'essai d'apprendre à manipuler SQL via un eggdrop, j'ai donc le code pour enregistrer les users (/msg botnick register <pseudo> <passe> <description>) qui marche en enregistrant le pseudo, le passe, une description et le pseudo IRC utilisé par la personne au moment de l'enregistrement.
Je voudrais qu'a l'identification (/msg botnick login <pseudo> <passe>), le pseudo actuel de la personne se mette à jour dans la table, pour ce la j'ai une procédure authentification :


Code:
proc auth {nick arg} {
    service:connect
    
    mysqlsel $::mysqlink "UPDATE `gamers` SET `statut` = 'On', `irc_nick` = '$nick' WHERE pseudo = '$arg'"
    
    service:deconnect
}
Mon problème c'est que le bot me répond : Tcl error [msg:login]: wrong # args: should be "auth nick arg".

Je ne sais pas si il existe une règle pour le choix des arguments :/ si j'enleve l'un des deux (nick ou arg), de façon trés ligique le bot me retourne un "variable inconnue".

Pourriez-vous m'aider SVP, Merci et bonne journée :)
#2
Le problème vient simplement de la définition de ta procédure.
Si je comprend bien, elle réagit à un bind msg.
Les arguments obligatoires sont donc nick, uhost, handle, args.

tcl
proc auth {nick uhost handle args} {
   service::connect
   mysqlsel $::mysqlink "UPDATE `gamers` SET `statut` = 'On', `irc_nick` = '$nick' WHERE pseudo = '$arg'"
   service::deconnect
}

Et je pense qu'il existe déjà une procédure AUTH dans eggdrop, je te conseille de nommer la tienne autrement (C'est surement l'erreur principale d'ailleurs)
Zeolia - Offrez-moi un café
Merci de ne pas demander d'aide en MP
Away
#3
Ha oki donc les arguments des bind msg sont prédéfinies je ne savais pas. Je vais aussi renommé ma procédure !
Merci pour ta réponse :D
#4
Toutes les procédures dépendantes des BINDS ont leur structure prédéfinie.
Il existe quelques petites variantes d'une version à une autre d'Eggdrop mais elles sont signalées et souvent compatibles avec les versions précédentes.
Zeolia - Offrez-moi un café
Merci de ne pas demander d'aide en MP
Away


Forum Jump:


Users browsing this thread: 1 Guest(s)