erreur php => besoin d'aide

arglow Message lu Posté le 21 Jan 2009 à 19:23 Bulle
Avatar de arglow
Nouveau Membre

Messages : 19
GCPoints : 12772
Bonjour à tous,

voila j'ai un petit probléme.
J'essaye de mettre en place un tchat sur mon futur site dont voila le code :

Code :
<!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'])) // Si les variables existent
{
    if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
    {
        // D'abord, on se connecte à MySQL
        mysql_connect("sql.hostarea.org", "plumesenherbe", "creationdelivre");
        mysql_select_db("plumesenherbe");
 
        // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité
        $message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
        $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
 
        // Ensuite on enregistre le message
        mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')");
 
        // On se déconnecte de MySQL
        mysql_close();
    }
}
 
 
// Que l'on ait enregistré des données ou pas...
// On affiche le formulaire puis les 10 derniers messages
 
// Tout d'abord le formulaire :
?>
 
 
 
<form action="index.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
 
// Maintenant on doit récupérer les 10 dernières entrées de la table
// On se connecte d'abord à MySQL :
        mysql_connect("sql.hostarea.org", "plumesenherbe", "creationdelivre");
        mysql_select_db("plumesenherbe");
 
 
// On utilise la requête suivante pour récupérer les 10 derniers messages :
$reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10");
 
// On se déconnecte de MySQL

 
// Puis on fait une boucle pour afficher tous les résultats :
while ($donnees = mysql_fetch_array($reponse) )
{

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

 
    </body>
</html>

Mais cela me met ça comme erreur :


Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/web/clients/plumesenherbe.hostarea.org/www/index.php on line 75


Je n'arrive pas à comprendre et à corriger cette erreur. merci de votre aide
stilobique Message lu Posté le 21 Jan 2009 à 19:25 Bulle
Avatar de stilobique
Newser

Messages : 2368
GCPoints : 834447
Tu a oublier de mettre les point virgules dans ta boucle.

Code : PHP
// Puis on fait une boucle pour afficher tous les résultats :
while ($donnees = mysql_fetch_array($reponse) )
{
 
?>
 
<p><strong><?php echo $donnees['pseudo']; ?></strong> : <?php echo $donnees['message'];
mysql_close();
?></p>
 
 
 
<?php
}
?>
Faut croire que j'ai des restes de mon passé :proud:
Hum, sa beug grave l'affichage du code PHP...
Dernière édition le 21 Jan 2009 à 19:26

(___/)
(='.'= )Voici Lapin. Copiez et collez Lapin dans votre signature
(")_(") pour l'aider à concrétiser sa domination du monde.
freemaul Message lu Posté le 21 Jan 2009 à 19:44 Bulle
Avatar de freemaul
Explorateur

Messages : 174
GCPoints : 50213
j'ai souvent eu cette erreur en php/mysql , cela veut dire que dans ta ligne :
Code :
while ($donnees = mysql_fetch_array($reponse) )

la variable $reponse n'est pas une variable valide pour l'utilisation de mysql_fetech_array, le plus souvent cela veut dire que ta requête mysql précédente à échouée, il faut donc regardé à :
Code :
$reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10");

est tu sur que ID est en majuscule ?
"La vie n'a pas de prix, mais elle coûte chère"
arglow Message lu Posté le 21 Jan 2009 à 20:17 Bulle
Avatar de arglow
Nouveau Membre

Messages : 19
GCPoints : 12772
c'est bon probléme résolut.

Merci à tous les deux pour votre aide.
L'erreur venait du nom de la table ( :proud: )

merci encore
Répondre
GameCorp - Site d'apprentissage et d'entraide à la création de jeux vidéo.
XHTML Valid 1.1 - Page générée en 0.1594 secondes