DarkCid
Messages postés195Date d'inscriptionmardi 22 février 2005StatutMembreDernière intervention26 octobre 2009
-
10 juil. 2006 à 21:47
davwart
Messages postés855Date d'inscriptionmardi 19 novembre 2002StatutMembreDernière intervention28 juillet 2009
-
12 juil. 2006 à 16:28
Yaoh !
Là g un gros problème ! J'utilise dans plein de pages le mysql_num_rows pour faire mes boucles. Sur mon PC en local sa marche impec, mais là je viens de mettre une partie du site en ligne, et sa marche plus du tout !!!!!!
pcgpegase
Messages postés96Date d'inscriptionlundi 24 novembre 2003StatutMembreDernière intervention24 avril 20071 11 juil. 2006 à 09:23
Bonjour,
La fonction mysql_num_rows permet de retourner le nombre d'enregistrements qu'à retourner une requête.
Peux-tu donner un exemple de boucle que tu utilises ?
DarkCid
Messages postés195Date d'inscriptionmardi 22 février 2005StatutMembreDernière intervention26 octobre 20091 11 juil. 2006 à 09:30
Yaoh !
Moi je ve bien donner un exemple de boucle, mais :
1) l'erreur a lieu avant la boucle car je met le num_rows dans une variable
2) sa marche très bien sur mon pc, c sur le site en ligne que sa marche plus
Donc je vois pas ce ke ma boucle a à voir là dedans
davwart
Messages postés855Date d'inscriptionmardi 19 novembre 2002StatutMembreDernière intervention28 juillet 20091 11 juil. 2006 à 11:06
Le bug se situe bien souvent entre l'ecran de l'ordi et la chaise. ;)
Pourrais tu nous donner ne serait-ce que le message d'erreur, car deviner ce qui se passe entre toi et ton serveur, c'est véritablement impossible.
-------------------------------------
Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
DarkCid
Messages postés195Date d'inscriptionmardi 22 février 2005StatutMembreDernière intervention26 octobre 20091 11 juil. 2006 à 11:41
Yaoh !
Bon voilà un exemple de code :
$sql="SELECT * FROM utilisateur WHERE Login = '".$_POST["login"]."' AND Password = '".$_POST["passwd"]."'";
$result=mysql_query($sql,$connexion);
if(mysql_num_rows($result) == 0)
{
$valide = 0 ;
}
et l'erreur qu'il produit :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home.10.2/signanet/www/Pages/accueiladmin.php on line 52 (<-- c la ligne du if)
pcgpegase
Messages postés96Date d'inscriptionlundi 24 novembre 2003StatutMembreDernière intervention24 avril 20071 11 juil. 2006 à 12:08
Ca veut tout simplement dire qu'il y a soit :
- Un problème avec ta requète (une erreur de syntaxe ou autre),
- Un problème de connexion avec ta base MySQL.
Revérifie bien que ton script PHP a bien sélectionné la bonne base, et ainsi que tes paramètres de connexion !
davwart
Messages postés855Date d'inscriptionmardi 19 novembre 2002StatutMembreDernière intervention28 juillet 20091 11 juil. 2006 à 16:31
Je crois que malalam avait fait un "mode d'emploi pour faire une demande sur le forum" il y a un bail.
Ca serait bien de mettre ce mode d'emploi de manière centralisée...
Pour ton cas, le problème est simple: ta query n'est pas bonne.
pour remedier à ça, y 'a un système que tout developpeur DOIT utiliser : mysql_error()
remplace donc ta ligne requete par:
$result=mysql_query($sql,$connexion) or die(mysql_error());
tu n'auras plus qu'à lire ton erreur sur l'ecran.
-------------------------------------
Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
DarkCid
Messages postés195Date d'inscriptionmardi 22 février 2005StatutMembreDernière intervention26 octobre 20091 11 juil. 2006 à 16:51
Yaoh !
Vous êtes bien gentils, mais vous avez sans doute zappé un point ke g dis plus haut : tout marche sur mon pc en local ! Donc oubliez un peu ma requete ke g tester et retester. En plus Cette rquete n'est qu'un exemple car mon problème viens du num_rows ke j'utilise partout.
pcgpegase
Messages postés96Date d'inscriptionlundi 24 novembre 2003StatutMembreDernière intervention24 avril 20071 11 juil. 2006 à 17:06
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home.10.2/signanet/www/Pages/accueiladmin.php on line 52 (<-- c la ligne du if)
Ce message d'erreur de la part de MySQL te dit CLAIREMENT que ta requête n'est pas bonne, ecoute ce que te dit davwart et utilises mysql_error() pour savoir ce que MySQL retourne comme erreur...
DarkCid
Messages postés195Date d'inscriptionmardi 22 février 2005StatutMembreDernière intervention26 octobre 20091 11 juil. 2006 à 17:15
Yaoh !
Dites tout de suite ke g des hallus kan j'entre la meme requete (ke g prise grace à un echo) dans phpMyAdmin et k'elle fonctionne à la perfection ! Et dois-je encore répéter ke tout marche sur mon pc en local mais ke c kan c en ligne ke sa foire ? (ps pour ceux ki penserais ke g oublié de changer les parmaètres de connexion, j'y ai pensé et toc !)
davwart
Messages postés855Date d'inscriptionmardi 19 novembre 2002StatutMembreDernière intervention28 juillet 20091 11 juil. 2006 à 17:36
tu es gentil également.
l'erreur qu'il ressort est dû à un problème de connection : $result n'est pas une ressource mysql valide.
Donc soit ta query n'est pas bonne, soit $connection n'est pas bon.
si tu ne veux pas rajouter le die(mysql_error()) alors trouve la solution par toi meme.
bone chance.
-------------------------------------
Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
DarkCid
Messages postés195Date d'inscriptionmardi 22 février 2005StatutMembreDernière intervention26 octobre 20091 11 juil. 2006 à 18:00
Yaoh !
je disais pas ça contre toi davwart. Je v essayer de voir où ma connection foire et surtout pourkoi :(
Pour le die, sa va enlever l'erreur mais sa va pas faire ke la requete retournera ce ke je ve, donc sa sert pas trop dans mon cas, mais merci kan meme
DarkCid
Messages postés195Date d'inscriptionmardi 22 février 2005StatutMembreDernière intervention26 octobre 20091 11 juil. 2006 à 18:46
Yaoh !
Hihi, en effet je ne sais pas ce ke fait mysql_error(), fo dire ke je suis sur PHP depuis moins de 8 semaines, fo pas m'en vouloir. Là g pas accès à mon code, il est à mon boulo donc j'orais pas pu te dire ce ki s'affiche :)
J'essairais ça 2m1, là ce soir j'essaye d'accumuler les pistes car à mon boulo, mon accès internet est très limité, pour ne pas dire inexistant.
davwart
Messages postés855Date d'inscriptionmardi 19 novembre 2002StatutMembreDernière intervention28 juillet 20091 11 juil. 2006 à 19:18
ha... ;)
bon alors mysql_error() va te sortir l'erreur mysql rencontrée.
souvent il s'agit d'une erreur de syntaxe, mais ça peut etre une mauvaise connection à la db par exemple.
Avec ça tu auras ton erreur.
;)
tiens nous au courant demain !
-------------------------------------
Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]