Mysql_fetch_array

Fermé
ciocciu Messages postés 42 Date d'inscription jeudi 2 novembre 2006 Statut Membre Dernière intervention 2 janvier 2009 - 24 sept. 2008 à 15:20
Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 - 13 oct. 2008 à 11:54
Bonjour,
petit pb de requête sql sur une boucle
je débute un peu donc merci de m'éclairer
voici le code
//minitchat
<?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("localhost", "ID", "pswd");
        mysql_select_db("test");
 
        // 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 minichatvolley 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="page2.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("localhost", "ID", "pswd");
mysql_select_db("test");
 
// On utilise la requête suivante pour récupérer les 10 derniers messages :
$reponse = mysql_query("SELECT * FROM minichatvolley ORDER BY ID DESC LIMIT 0,10");
 
// On se déconnecte de MySQL
mysql_close();
 
// 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']; ?></p>

 
 
 
<?php
}
// Fin de la boucle, le script est terminé !


	echo "</td>";
?>



l'erreur me dit
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in line "celle en gras et soulignée"

merci par avance
lolo

22 réponses

ciocciu Messages postés 42 Date d'inscription jeudi 2 novembre 2006 Statut Membre Dernière intervention 2 janvier 2009 7
12 oct. 2008 à 14:55
personne?
:-((
0
Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 1 389
13 oct. 2008 à 11:54
Bonjour,

Je ne comprends pas très bien ton code SQL pour INSERT et pour SELECT, en effet pourquoi mets- tu date_match avant la variable $date, je pense que le code devrait être le suivant
mysql_query("INSERT INTO tchat VALUES('', '$pseudo', '$message','$date')") or die(mysql_error());
et
$reponse = mysql_query("SELECT * FROM tchat where date_match = '.$date' ORDER BY DESC LIMIT 0,10")
or die(mysql_error()) ;
si ta colonne date_match est du type DATE et non DATETIME et que ta variable $date contient la date sous les formats suivants: AAAA-MM-DD , AAAAMMDD

A plus
PS: J'étais en weekend prolongé, il faisait trop beau pour travailler.
0