thedeviltogta Posté 27 Décembre 2006 Posté 27 Décembre 2006 Bonjour à tous, Alors voila j'ai un problème avec mon livre d'or... Je l'ai personnalisé via la feuille de style, sans problème, sans l'avoir encore mis dans mon design. Seulement voila, lorsque je l'ai integré dans mon design, j'ai eu une erreur : Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/html/thedeviltogta/livre/index.php on line 75 Voici les lignes (73 à 78) du fichier concerné (la ligne 75 est en gras) : $chercher = mysql_query ("SELECT * FROM livre WHERE date!='xx' ORDER BY id DESC LIMIT $PremierMessage,$MessagesParPage"); while ($voir = mysql_fetch_array ($chercher)) { $time = date('d-m-y', $voir['date']); $pseudo = $voir['pseudo']; Je l'ai integré à mon design via une adresse de type indexhtml.php?page=livredor . J'ai essayé une multitude de choses, sans succès... L'adresse de la page en question : http://thedeviltogta.jupiterii.com/indexht...p?page=livredor Merci d'avance de votre aide Thedeviltogta
Vincent Posté 27 Décembre 2006 Posté 27 Décembre 2006 Bonjour, Pour les requêtes du type SELECT, SHOW, DESCRIBE ou EXPLAIN, mysql_query() retournera une ressource en cas de succès, ou FALSE en cas d'erreur. Ici, manifestement, tu es en erreur et donc tu as "FALSE" et la fonction mysql_fetch_array n'a pas de 'Ressource' a utiliser. Essaye de rentrer un premier jeu de test... ou alors il faut améliorer le code pour prendre en compte le cas '0 enregistrements dans la base' du genre : if (!$result) { $message = 'Erreur : ' . mysql_error() . "\n"; die($message);}
thedeviltogta Posté 27 Décembre 2006 Auteur Posté 27 Décembre 2006 Bonjour et merci pour la réponse Le problème est que j'ai déjà inséré un message dans ma base (visible dans la partie admin d'ailleurs) Je ne comprend pas pourquoi avant d'être integré, ça marchait parfaitement et plus après..
Vincent Posté 27 Décembre 2006 Posté 27 Décembre 2006 Que vaut la valeur $chercher ? Je reste convaincu que ton erreur est plus haut, dans la construction de ta requete par exemple... as-tu testé la requete directement dans phpmyadmin?
thedeviltogta Posté 27 Décembre 2006 Auteur Posté 27 Décembre 2006 mes lignes 40 à 79 : <!-- MESSAGES --><?// pour les pages : /* je regarde si un variable page a ete envoye dans l'url */if (isset ($_GET['page'])) { $page = $_GET['page']; }else { $page = 1; }/* je calcule le nombre de messages posté */$requete = mysql_query ("SELECT COUNT(*) AS nb_messages FROM livre");$nb_message = mysql_fetch_array ($requete);$NombreMessage = $nb_message['nb_messages'];/* Je calclue le nombre de page(s) */$NombrePage = ceil($NombreMessage / $MessagesParPage);/* Premier message a afficher */$PremierMessage = ($page - 1 ) * $MessagesParPage;/* je fais une bouce pour mes liens */echo '<div class="lien_page"><a>Page : </a>';for ($i = 1; $i <= $NombrePage; $i++) { echo '<a href="livre/index.php?page='.$i.'"> '.$i.' </a>'; } echo '<br /><br /></div>';$chercher = mysql_query ("SELECT * FROM livre WHERE date!='xx' ORDER BY id DESC LIMIT $PremierMessage,$MessagesParPage"); while ($voir = mysql_fetch_array ($chercher)) { $time = date('d-m-y', $voir['date']); $pseudo = $voir['pseudo']; Je n'ai pas testé dans phpmyadmin, mais j'y vais de ce pas
captain_torche Posté 27 Décembre 2006 Posté 27 Décembre 2006 Il y a deux possibilités : - comme l'a dit Vincent, une erreur de requête - mais il peut aussi y avoir un problème de connexion à la base Tu peux avoir un aperçu de l'erreur en modifiant la ligne de ta requête comme suit : $chercher = mysql_query ("SELECT * FROM livre WHERE date!='xx' ORDER BY id DESC LIMIT $PremierMessage,$MessagesParPage") or die(mysql_error());
K-Ola Posté 27 Décembre 2006 Posté 27 Décembre 2006 (modifié) Essais également de faire: echo "SELECT * FROM livre WHERE date!='xx' ORDER BY id DESC LIMIT ".$PremierMessage.",".$MessagesParPage; Cela te permettra d'être sûr que ta requête est bien construit. Modifié 27 Décembre 2006 par K-Ola
thedeviltogta Posté 28 Décembre 2006 Auteur Posté 28 Décembre 2006 Bonjour et merci de vos réponses Une légère amélioration : Le cadre des messages apparait maintenant (sans message, date, et nom) et toujours cette fichue erreur..
NorSeb Posté 29 Décembre 2006 Posté 29 Décembre 2006 bonjour, essai ce code : $req = "SELECT * FROM livre WHERE date!='xx' ORDER BY id DESC LIMIT ".$PremierMessage.",".$MessagesParPage;$chercher = mysql_query($req);if (!$chercher) { die(mysql_error()."<br>".$req);}
thedeviltogta Posté 29 Décembre 2006 Auteur Posté 29 Décembre 2006 Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/html/thedeviltogta/livre/index.php on line 75Query was empty C'est la réponse que j'obtiens... Donc apparemment ça ne contient rien ?
K-Ola Posté 29 Décembre 2006 Posté 29 Décembre 2006 tu as essayé de faire un echo $req; Pour t'assurer que les paramétres passés ne sont pas vides ?
thedeviltogta Posté 30 Décembre 2006 Auteur Posté 30 Décembre 2006 Ca revient à la même chose : Query was empty
Vincent Posté 30 Décembre 2006 Posté 30 Décembre 2006 Cela voudrait dire que $req est vide... Si on reprends le début du code de Norseb, $req = "SELECT * FROM livre WHERE date!='xx' ORDER BY id DESC LIMIT ".$PremierMessage.",".$MessagesParPage; et ensuite tu mets echo $req; Ce n'est pas possible d'avoir $req à vide !!! Un petit effort quand même... $req = "SELECT * FROM livre WHERE date!='xx' ORDER BY id DESC LIMIT ".$PremierMessage.",".$MessagesParPage;echo $req;
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant