Que signifie ce message d'erreur?

Fermé
ml500 Messages postés 699 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 11 septembre 2022 - 13 janv. 2009 à 13:24
ThEBiShOp Messages postés 8318 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 - 13 janv. 2009 à 15:04
Bonjour,
J'ai écris mon pgm de chat en php, mais je recois un message d'erreur en lançant mon pgm. ce message c'est :

"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/barreau/public_html/minichat.php on line 73"

Je ne sais pas ce que ca signifie, et comment corriger le problème?

10 réponses

ThEBiShOp Messages postés 8318 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 600
13 janv. 2009 à 13:25
la valeur que tu transmets à la fonction mysql_fetch_array() n'est pas valide
0
ml500 Messages postés 699 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 11 septembre 2022 22
13 janv. 2009 à 13:33
voici tout le code, aidez moi à le corriger...


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Mini-chat</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<style type="text/css">
form
{
text-align:center;
}
</style>
<body>


<?php
if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL)
{
mysql_connect("localhost", "barreau", "uaerrab");
mysql_select_db("barreau_minichat");


$message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));


mysql_query("INSERT INTO chattable VALUES('', '$pseudo', '$message')");

mysql_close();
}
}


?>



<form action="minichat.php" method="post">

<p>
Pseudo : <input type="text" name="pseudo" /><br />
Message : <input type="text" name="message" /><br />

<input type="submit" value="Envoyer" />
</p>

</form>



<?php


mysql_connect("localhost", "barreau", "uaerrab");
mysql_select_db("barreau_minichat");

$reponse = mysql_query("SELECT * FROM chattable ORDER BY ID DESC LIMIT 0,10");


mysql_close();

while ($donnees = mysql_fetch_array($reponse) )
{
?>

<p><strong><?php echo $donnees['pseudo']; ?></strong> : <?php echo $donnees['message']; ?></p>



<?php
}

?>


</body>
</html>
0
Bonjour

Pourquoi fermer la connexion à ta base de données si c'est pour la rouvrir quelques lignes plus loin ? Ça n'est pas ça qui provoque ton erreur, mais c'est du gaspillage...
Tu as dû modifier le scrit entre le message d'erreur et celui que tu donnes message 2. L'erreur ne devrait pas être ligne 73.
En supposant qu'elle soit à la ligne
$reponse = mysql_query("SELECT * FROM chattable ORDER BY ID DESC LIMIT 0,10");
modifie-là comme ça :
$reponse = mysql_query("SELECT * FROM chattable ORDER BY ID DESC LIMIT 0,10") or die (mysql_error());
Ça ne va pas résoudre le problème, mais ça nous dira d'où il vient. C'est une bonne habitude d'ajouter or die (mysql_error()); après les appels à mysql_query.
Je risque un pronostic : ton champ ne s'appelle pas ID (si l'erreur est bien sur cette ligne)
0
ThEBiShOp Messages postés 8318 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 600
13 janv. 2009 à 13:54
première démarche à avoir :
exécuter toutes ses requêtes dans phpmyadmin afin d'être sûr qu'elle sont valide. Si elles ne le sont pas dans phpmyadmin, elles ne risquent pas de l'être en production sur un fichier php.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ml500 Messages postés 699 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 11 septembre 2022 22
13 janv. 2009 à 14:34
le problème était le champ id que moi j'ai nommé par erreur ip dans ma base de données.
Mais, en executant le chat, il ne présente plus d'erreur, mais apres avoir saisi le pseudo et le message, il n'ya pas effet.
rien ne bouge, je ne comprend plus rien;
aidez moi
0
ThEBiShOp Messages postés 8318 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 600
13 janv. 2009 à 14:47
les informations apparaissent dans la base de données ?
0
ml500 Messages postés 699 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 11 septembre 2022 22
13 janv. 2009 à 14:51
wi, les données apparaissent, mais ne sont pas affiché au retour
0
ThEBiShOp Messages postés 8318 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 600
13 janv. 2009 à 14:55
donc vérifie tes fonctions et tes requêtes qui gèrent l'affichage..
0
ml500 Messages postés 699 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 11 septembre 2022 22
13 janv. 2009 à 14:59
tu as raison, j'ai retrouvé l'erreur.
Mais comment on insert des paragraphes en php, comme en xhtml c'est <p
Au faite pour dire ajouter des lignes...
0
ThEBiShOp Messages postés 8318 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 600
13 janv. 2009 à 15:04
gnu ?

j'ai pas vraiment compris ce que tu essayes de dire

pour mettre un <p> en php, bah tu fais :

echo '<p>';
0