[SQL] Problème mysqsl_num_rows....
Fermé
nanti
Messages postés
59
Date d'inscription
samedi 14 avril 2007
Statut
Membre
Dernière intervention
2 avril 2010
-
14 avril 2007 à 14:12
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 - 16 avril 2007 à 18:50
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 - 16 avril 2007 à 18:50
A voir également:
- [SQL] Problème mysqsl_num_rows....
- Logiciel sql - Télécharger - Bases de données
- Sql replace plusieurs valeurs - Forum Programmation
- Requête sql date supérieure à ✓ - Forum Programmation
- Récupération serveur sql - Télécharger - Gestion de données
- Ora-00933: la commande sql ne se termine pas correctement ✓ - Forum Oracle
9 réponses
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
14 avril 2007 à 15:00
14 avril 2007 à 15:00
salut,
il faut exécuter ta requête pour exploiter le résultat.
je te propose un excellent cours, regarde page 78.
il faut exécuter ta requête pour exploiter le résultat.
je te propose un excellent cours, regarde page 78.
nanti
Messages postés
59
Date d'inscription
samedi 14 avril 2007
Statut
Membre
Dernière intervention
2 avril 2010
15 avril 2007 à 06:39
15 avril 2007 à 06:39
Help, please !
J'ai bien regardé le cours mais je ne vois pas trop ce qu'il faut que je fasse : je débute !
Le problème d'exécution vient-il du fait que je passe 2 paramètres dans le WHERE ou c'est parce que l'exploitation des résultat dans les "if" n'est pas bon ???
J'ai bien regardé le cours mais je ne vois pas trop ce qu'il faut que je fasse : je débute !
Le problème d'exécution vient-il du fait que je passe 2 paramètres dans le WHERE ou c'est parce que l'exploitation des résultat dans les "if" n'est pas bon ???
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
15 avril 2007 à 10:30
15 avril 2007 à 10:30
salut,
pour te montrer une connexion classique :
est-ce que l'on est d'accord sur ça ?
pour te montrer une connexion classique :
<?php connexion à la bdd avec tes paramètres de connexion $link = mysql_connect('serveur', 'id', 'mdp'); si la connexion a réussi if ($link) { on définit la table visée mysql_select_db('bdd', $link); définition de la requête $sql_query = "SELECT `champ` FROM `table` WHERE `condition`"; exécution de la requête $result = mysql_query($sql_query, $link); maintenant un peut traiter le résultat if (mysql_num_rows($result) >0) { IL Y A DES RESULTATS } else{ IL N'Y A PAS DE RESULTATS } on oublie pas de fermer la porte en partant mysql_close(); } si la connexion a échoué else{ $error = mysql_error; } ?>
est-ce que l'on est d'accord sur ça ?
nanti
Messages postés
59
Date d'inscription
samedi 14 avril 2007
Statut
Membre
Dernière intervention
2 avril 2010
15 avril 2007 à 10:52
15 avril 2007 à 10:52
Salut Dalida !
Je suis tout à fait d'accord avec toi, d'ailleurs pour ce qui est de la connexion à la bdd, j'ai une fonction que j'appelle avant :
Si ça peut complèter le truc afin que je sache ce qui fait crier mon navigateur... ???
Je suis tout à fait d'accord avec toi, d'ailleurs pour ce qui est de la connexion à la bdd, j'ai une fonction que j'appelle avant :
function connect_bdd() { $link = mysql_connect('localhost', 'root', '') or die("Impossible de se connecter : " . mysql_error()); mysql_select_db('fiches_pirates',$link);
Si ça peut complèter le truc afin que je sache ce qui fait crier mon navigateur... ???
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
15 avril 2007 à 14:13
15 avril 2007 à 14:13
salut,
je crois que si j'ouvrais les yeux je te ferai gagner du temps...
essai d'écrire ta condition comme ça :
si c'est ça j'ai honte...
je crois que si j'ouvrais les yeux je te ferai gagner du temps...
essai d'écrire ta condition comme ça :
if (mysql_num_rows($sql)==1) {}ça doit juste être l'asignation ('=') qui le démange il attend que des égalités ('==') !
si c'est ça j'ai honte...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
nanti
Messages postés
59
Date d'inscription
samedi 14 avril 2007
Statut
Membre
Dernière intervention
2 avril 2010
15 avril 2007 à 14:35
15 avril 2007 à 14:35
Dalida, tu n'as aucune honte à avoir : ça ne vient pas de ça !
En fait, on dirait que la fonction log_membres ne lit pas les champs de la base de donnée car quand je tape n'importe quoi comme pseudo et comme mot de passe, il me logue quand même et me souhaite la bienvenue ! Et le même message d'erreur apparait au-dessus...
c'est lassant ce truc ! lolll
En fait, on dirait que la fonction log_membres ne lit pas les champs de la base de donnée car quand je tape n'importe quoi comme pseudo et comme mot de passe, il me logue quand même et me souhaite la bienvenue ! Et le même message d'erreur apparait au-dessus...
c'est lassant ce truc ! lolll
nanti
Messages postés
59
Date d'inscription
samedi 14 avril 2007
Statut
Membre
Dernière intervention
2 avril 2010
15 avril 2007 à 14:44
15 avril 2007 à 14:44
Je viens de voir que tu voulais que j'enlève aussi ma variable $res de la ligne, ce que j'ai fait et j'ai un message qui me dit que la variable de session est undifined en ligne 25 :-(
Je vais devenir chèvre !!! mdr
Je vais devenir chèvre !!! mdr
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
15 avril 2007 à 15:06
15 avril 2007 à 15:06
else { $res=mysql_num_rows($sql); if ($res==0) { //ligne 23 // Création de la variable de session pour les abonnés $_SESSION['Log_02_abonnes']=0; echo 'Bienvenue "'.$_POST['Log_02'].'"'; } }
ça bricole, ça bricole...
nanti
Messages postés
59
Date d'inscription
samedi 14 avril 2007
Statut
Membre
Dernière intervention
2 avril 2010
15 avril 2007 à 16:15
15 avril 2007 à 16:15
Bon... ça s'améliore un peu, je n'ai plus l'erreur en ligne 25 ! Cool !!
Je te redonne mon code car il a évolué depuis, tu t'en doutes... :
Mais saches qu'il n'aime toujours pas ma fonction mysql_num_rows qu'il considère toujours comme :
mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\...
Je dois avoir un problème de connection à ma bdd, mais lequel ??? Tous les paramètes sont écrits comme il faut : casse respectée et tout le toutim !!!
Sinon, ça t'intéresse que je mette ma page d'affichage en code ??? (celle que je te laisse depuis le début de la conversation, c'est celle qui contient mes fonctions !
Je te redonne mon code car il a évolué depuis, tu t'en doutes... :
// Connexion à la base de données *** function connect_bdd() { $link = mysql_connect('localhost', 'root', '') or die("Impossible de se connecter : " . mysql_error()); mysql_select_db('fiches_pirates',$link); } // Fin de fonction *** // fnoction de log des membres *** function log_membres() { // Si le formulaire est envoyé if (isset($_POST['Submit_02'])) { // Vérifier les champs de la table $sql = mysql_query("SELECT Verif_pseudo FROM pirates WHERE Pseudo == '".$_POST['Log_02']."' && MotPass=='".$_POST['PWD_02']."'"); // Si le résultat de la vérif est à 1 if ($res=mysql_num_rows($sql)==1) { // Création de la variable de session pour les membres $_SESSION['Log_02_membres']=1; echo 'Bienvenue '.$_POST['Log_02'].''; } // Sinon si le résutltat de la vérif est à 0 else { $res=mysql_num_rows($sql); if ($res==0) { // Création de la variable de session pour les abonnés $_SESSION['Log_02_abonnes']=0; echo 'Bienvenue '.$_POST['Log_02'].''; } } // Sinon ne pas connecter /*else { die ('Beurk ! t\'es pas beau et j\'te connais pas !'); }*/ } }
Mais saches qu'il n'aime toujours pas ma fonction mysql_num_rows qu'il considère toujours comme :
mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\...
Je dois avoir un problème de connection à ma bdd, mais lequel ??? Tous les paramètes sont écrits comme il faut : casse respectée et tout le toutim !!!
Sinon, ça t'intéresse que je mette ma page d'affichage en code ??? (celle que je te laisse depuis le début de la conversation, c'est celle qui contient mes fonctions !
nanti
Messages postés
59
Date d'inscription
samedi 14 avril 2007
Statut
Membre
Dernière intervention
2 avril 2010
16 avril 2007 à 10:34
16 avril 2007 à 10:34
Si une bonne âme peut m'aider, ça serait cool car je galère depuis le début du week-end et ça me saoule !!!
Merci d'avance !
Merci d'avance !
nanti
Messages postés
59
Date d'inscription
samedi 14 avril 2007
Statut
Membre
Dernière intervention
2 avril 2010
16 avril 2007 à 14:18
16 avril 2007 à 14:18
Bon... j'ai trouvé une partie de la solution :
Il fallait utilise AND et non && dans la partie sql ! lol
Par contre, quand je me logge sous quelqu'un qui devrait être abonné, il me logge comme membre !
Il ne logge les abonnés que s'ils ne sont pas dans la bdd !
Je pense que j'ai dû mal configurer mon champ de bdd, puisqu'il n'en tient pas compte. Normalement 0, c'est un abonné et 1, c'est un membre.
J'espère avoir été assez clair ?
Il fallait utilise AND et non && dans la partie sql ! lol
Par contre, quand je me logge sous quelqu'un qui devrait être abonné, il me logge comme membre !
Il ne logge les abonnés que s'ils ne sont pas dans la bdd !
Je pense que j'ai dû mal configurer mon champ de bdd, puisqu'il n'en tient pas compte. Normalement 0, c'est un abonné et 1, c'est un membre.
J'espère avoir été assez clair ?
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
16 avril 2007 à 18:50
16 avril 2007 à 18:50
LOL, j'avais même pas lu la requête !
tu peux aussi enlever le double '=='.
tu peux aussi enlever le double '=='.
14 avril 2007 à 15:09
je pense avoir exécuté ma requète... enfin si exécuter ma requête c'est bien ce que je pense :
cette fonction est sur une page externe ! je l'ai donc appelée avec un include de la page et un echo de la fonction, en l'occurence echo log_membre(); !
c'est bien ça exécuter une requête ????
14 avril 2007 à 18:31