Probleme avec php

Résolu
morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention   -  
Revan26914 Messages postés 1778 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je travail sur la réalisation d'un minichat sur mon site :
le problème est que mon code ne marche pas .

voici mon 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("localhost", "root", "");
        mysql_select_db("minichat");
 
        // 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("localhost", "root", "");
mysql_select_db("minichat");
 
// 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
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é !
?>
 
 
    </body>
</html>

  




et voici la reponse afficher par wamp:


Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\www.eureka.com\index.php on line 73



quelle est le problème?

merci a tous!
A voir également:

3 réponses

Ricky38 Messages postés 4349 Date d'inscription   Statut Contributeur Dernière intervention   1 462
 
Bonjour,

je ne suis pas vraiment certain mais tu te déconnectes avant même de faire ta boucle alors moi personnellement j'essaierais ceci :

enleve ton :

// On se déconnecte de MySQL
mysql_close();

et met le à la fin complètement soit:

<?php
}
// Fin de la boucle, le script est terminé !
// On se déconnecte de MySQL
mysql_close();
?>
1
morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
merci! RICKY38 ! mais ca ne marche pas.
0
Revan26914 Messages postés 1778 Date d'inscription   Statut Contributeur Dernière intervention   320
 
Bonjour,

as-tu bien créé ta table dans la base de donnée?



Cordialement

Revan
0
morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
oui! ravan j'ai cree ma table avec :un ID , un speudo ET un message
mais ca ne marche pas.
0
Revan26914 Messages postés 1778 Date d'inscription   Statut Contributeur Dernière intervention   320 > morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai testé ton code et chez moi ça fonctionne sans problème. donc la seule chose qui change entre chez toi et chez moi c'est la base de donnée.

explique exactement comment tu as organisé ta base de donnée. nom de la base, nom de la table, etc stp.

Qu'elle est le nom de ta base de donnée? le nom de ta base?


A mon avis le problème est là:

/ Maintenant on doit récupérer les 10 dernières entrées de la table
// On se connecte d'abord à MySQL :
mysql_connect("localhost", "root", "");
mysql_select_db("minichat");


et plus précisément c'est le mysql_select_db("minichat");

je pense que ta base de donnée ne s'appelle pas minichat et que tu as confondu avec la table qui s'appelle "minichat".
0
morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention   > Revan26914 Messages postés 1778 Date d'inscription   Statut Contributeur Dernière intervention  
 
le nom de ma base est : minichat.


meci!
0
Torkass Messages postés 166 Date d'inscription   Statut Membre Dernière intervention   95 > morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
mysql_connect("localhost", "root", "root");

et avec ça ?
0
socra92 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   > Torkass Messages postés 166 Date d'inscription   Statut Membre Dernière intervention  
 
a torkass


si je fais cela wamp affiche:

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: YES) in C:\wamp\www\www.eureka.com\index.php on line 63

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\www.eureka.com\index.php on line 73
0
Revan26914 Messages postés 1778 Date d'inscription   Statut Contributeur Dernière intervention   320
 
je viens de refaire un test chez moi en utilisant exactement les même nom que toi, et ça marche parfaitement.

dans ton phpMyAdmin tu devrais arriver à ça==>http://www.cijoint.fr/cj200805/cijo5kJXls.jpg


est-ce le cas?

0
morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
oui c'est le cas , les meme image ;
0
Torkass Messages postés 166 Date d'inscription   Statut Membre Dernière intervention   95 > morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
Peux-tu nous faire un screen de la tienne pour être sûrs ?
Un détail t'a peut-être échappé.
0
Revan26914 Messages postés 1778 Date d'inscription   Statut Contributeur Dernière intervention   320 > Torkass Messages postés 166 Date d'inscription   Statut Membre Dernière intervention  
 
Je suis d'accord avec Torkass^^

puisque chez moi ça fonctionne très bien^^

il doit s'agir d'une petite faute d'inattention quelque part^^

0
morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention   > Revan26914 Messages postés 1778 Date d'inscription   Statut Contributeur Dernière intervention  
 
salut raven !


merci merci! j'ai enfin ressui ; en effet je me deconnectait trop vite avant que le message ne sois en enregistre.


merci a tous les amis ! je ne sais ce que j'aurais fais sans vous.
0
Revan26914 Messages postés 1778 Date d'inscription   Statut Contributeur Dernière intervention   320 > morykeita Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
De rien^^


bonne soirée

@+ ;-)

0