cot Posté 8 Février 2012 Posté 8 Février 2012 avant je faisais ça $sql = "SELECT * FROM maillist WHERE email='$email'"; echo "<br>".$sql."<br>"; $resultat = mysql_query($sql, $connecte); $nb_enr = mysql_num_rows($resultat); maintenant ça bug Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource Il est ou le bug? SVP!
cot Posté 8 Février 2012 Auteur Posté 8 Février 2012 $connecte est il réussi comme connexion en BDD ? yes !
Aenoa Posté 8 Février 2012 Posté 8 Février 2012 place un "echo mysql_error()" juste en dessous de chaque action mysql_query, connect, select_db et num_rows, cela t'affichera l'erreur de chaque action, si il y en a une
cot Posté 8 Février 2012 Auteur Posté 8 Février 2012 place un "echo mysql_error()" juste en dessous de chaque action mysql_query, connect, select_db et num_rows, cela t'affichera l'erreur de chaque action, si il y en a une j'ai pas utilisé select_db
Aenoa Posté 8 Février 2012 Posté 8 Février 2012 j'ai pas utilisé select_db si tu n'a pas sélectionné de base de donnée, mysql peut paniquer. Soit, tu définis une base de donnée mysql_select_db("MA_DB", $connecte); soit tu peut l'intégrer directement dans le code SQL $sql = "SELECT * FROM MA_DB.maillist WHERE email='$email'";
cot Posté 8 Février 2012 Auteur Posté 8 Février 2012 C'est pour cela que je ne trouve pas d'interet à utiliser mysql_select_db puisque la base est precisée dans la requette sql $sql = "SELECT * FROM maillist WHERE email='$email'";
Aenoa Posté 8 Février 2012 Posté 8 Février 2012 C'est pour cela que je ne trouve pas d'interet à utiliser mysql_select_db puisque la base est precisée dans la requette sql $sql = "SELECT * FROM maillist WHERE email='$email'"; tu précise la table, mais pas la base de donnée table = maillist recherche = email équivalent a $email base de donnée = inconnue
cot Posté 8 Février 2012 Auteur Posté 8 Février 2012 au fait echo mysql_error($resultat); ça bug, je dois mal l'utiliser Je crois que je me rapproche de mon erreur
Aenoa Posté 8 Février 2012 Posté 8 Février 2012 au fait echo mysql_error($resultat); ça bug, je dois mal l'utiliser Je crois que je me rapproche de mon erreur il ne faut pas indiquer $resultat dans les parenthèses. Cette fonction ne prends aucun argument, elle retourne simplement la dernière erreur que MySQL a connu. d'où le fait que je te le fais mettre sous chaque fonction mysql_*
jcaron Posté 9 Février 2012 Posté 9 Février 2012 Au passage, intégrer directement une variable dans une requête SQL sans passer par mysql_real_escape_string c'est une TRES, TRES, TRES mauvaise idée. Non seulement ça va planter si jamais il y a quelque chose qui ne va pas dans ta variable (par exemple un '), ce qui est peut-être le problème ici, mais en plus c'est un trou de sécurité énorme. Jacques.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant