Partage
  • Partager sur Facebook
  • Partager sur Twitter

Le mini-chat

problème

Sujet résolu
    2 janvier 2006 à 12:28:48

    Bonjour, voilà, j'ai un problème avec le mini-chat, quand je l'essaye, je rentre un pseudo, un message et je fais envoyer, et là rien n'apparaît. J'ai regardé mon script et celui de la correction, et à part les détails que j'ai rajoutés, tout est pareil.

    J'ai créé une table minichat comme la correction.

    Par contre je crois que les messages ont étés enregistrés car quand j'envois une requête dans PHPMyAdmin pour vérifier si il a un pseudo comme celui que j'ai entré, il me dit qu'il l'a trouvé.

    Si vous voulez je veux bien vous montrer mon script.

    Je n'ai que 13 ans et je suis un ZérO, veuillez pardonner des imbécibilitées que j'aurai pues dire. :-°

    Merci de votre compréhension.
    • Partager sur Facebook
    • Partager sur Twitter
      2 janvier 2006 à 12:35:30

      Tu vois, j'ai 13 ans aussi et c'est pas pour autant que j'ai raté mon chat ^^ enfin passons
      Primo, je peux pas t'aider si tu me montre pas ton code ;)
      Ensuite, pour vérifier que tes messages sont enregistrés, t'a juste à aller voir ta BDD (127.0.0.1/mysql/ dans la barre d'adresse)
      • Partager sur Facebook
      • Partager sur Twitter
        2 janvier 2006 à 12:41:07

        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>
        <body>
        <?php

        if(isset($_POST['pseudo']) AND isset($_POST['message']))
        {
        if($_POST['pseudo'] != NULL AND $_POST['message'] != NULL)
        {
        mysql_connect("localhost", "root", "");
        mysql_select_db("test");

        $message = htmlentities ($_POST['message']);
        $pseudo = htmlentities ($_POST['pseudo']);

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

        mysql_close();
        }
        }

        ?>



        <form action="minichat.php" method="post">
        <p>
        pseudo : <input type="text" name="pseudo" value="$_POST['pseudo']"/><br/>
        message : <input type="text" name="message"/><br/>
        </p>
        <input type="submit" value="Envoyer" /><br/>
        </form>

        <?php

        mysql_connect("localhost", "root", "");
        mysql_select_db("test");

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

        mysql_close();

        while($donnees = mysql_fetch_array($reponse))
        {
        ?>
        <p> <?php echo $donnees['pseudo']; ?> : <?php echo $donnees['message']; ?> </p>
        <?php
        }
        ?>
        <?php

        mysql_connect("localhost", "root", "");
        mysql_select_db("test");

        DELETE FROM minichat WHERE ID='50'

        mysql_close()

        ?>

        </body>
        </html>
        • Partager sur Facebook
        • Partager sur Twitter
          2 janvier 2006 à 12:49:22

          <!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>
          <body>
          <?php

          if(isset($_POST['pseudo']) AND isset($_POST['message']))
          {
          if($_POST['pseudo'] != NULL AND $_POST['message'] != NULL)
          {
          mysql_connect("localhost", "root", "");
          mysql_select_db("test");

          $message = htmlentities ($_POST['message']);
          $pseudo = htmlentities ($_POST['pseudo']);

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

          mysql_close();
          }
          }

          ?>



          <form action="minichat.php" method="post">
          <p>
          pseudo : <input type="text" name="pseudo" value="$_POST['pseudo']"/><br/>
          message : <input type="text" name="message"/><br/>
          </p>
          <input type="submit" value="Envoyer" /><br/>
          </form>

          <?php

          mysql_connect("localhost", "root", "");
          mysql_select_db("test");

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

          mysql_close();

          while($donnees = mysql_fetch_array($reponse))
          {
          ?>
          <p> <?php echo $donnees['pseudo']; ?> : <?php echo $donnees['message']; ?> </p>
          <?php
          }
          ?>
          <?php

          mysql_connect("localhost", "root", "");
          mysql_select_db("test");

          mysql_query("DELETE FROM minichat WHERE ID='50'") or die(mysql_error());

          mysql_close()

          ?>

          </body>
          </html>

          Voila, sa sera plus lisible

          EDIT : C'est que ce DELETE qui traine en plein milieu ?? Corrigé :D
          • Partager sur Facebook
          • Partager sur Twitter
            2 janvier 2006 à 12:50:49

            Merci beaucoup ! comment as-tu fait ?
            • Partager sur Facebook
            • Partager sur Twitter
              2 janvier 2006 à 12:51:38

              fais ceci j'ai déjà eu des problèmes a cause de ça

              while($donnees == mysql_fetch_array($reponse))


              avec la balise "code" disponible dans la liste déroulante
              • Partager sur Facebook
              • Partager sur Twitter
                2 janvier 2006 à 12:55:55

                En tout cas, un gars de 13 ans qui rédige un poste aussi propre et qui se met au php a cet age... J appleudis et j encourage...
                • Partager sur Facebook
                • Partager sur Twitter
                  2 janvier 2006 à 12:57:43

                  bah il n'est pas le seul
                  • Partager sur Facebook
                  • Partager sur Twitter
                    2 janvier 2006 à 13:02:33

                    ah oui, je suis vraiment un ZérO pour avoir laissé ce DELETE sans requête :euh:

                    C'est gentil de m'encourager, merci :)

                    mais c'est vrai que je ne suis pas le seul
                    • Partager sur Facebook
                    • Partager sur Twitter
                      2 janvier 2006 à 13:05:07

                      Je vais corriger tout ça ;)
                      <!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>
                      <body>
                      <?php

                      if(isset($_POST['pseudo']) AND isset($_POST['message']))
                      {
                      if($_POST['pseudo'] != NULL AND $_POST['message'] != NULL)
                      {
                      mysql_connect("localhost", "root", "");
                      mysql_select_db("test");

                      $message = htmlentities ($_POST['message']);
                      $pseudo = htmlentities ($_POST['pseudo']);

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

                      mysql_close();
                      }
                      }

                      ?>



                      <form action="minichat.php" method="post">
                      <p>
                      pseudo : <input type="text" name="pseudo" value="$_POST['pseudo']"/><br/>
                      message : <input type="text" name="message"/><br/>
                      </p>
                      <input type="submit" value="Envoyer" /><br/>
                      </form>

                      <?php

                      mysql_connect("localhost", "root", "");
                      mysql_select_db("test");

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

                      mysql_close();

                      while($donnees == mysql_fetch_array($reponse))
                      {
                      ?>
                      <p> <?php echo $donnees['pseudo']; ?> : <?php echo $donnees['message']; ?> </p>
                      <?php
                      }
                      ?>

                      // Fait comme moi, va supprimer manuellement de temps en temps ;)

                      </body>
                      </html>


                      Citation : elfugu

                      En tout cas, un gars de 13 ans qui rédige un poste aussi propre et qui se met au php a cet age... J appleudis et j encourage...


                      Et les gens qui font ce site à 13 ans c'est bien aussi non ? (je me sens concerné ^^ et le contenu n'est pas terminé faute de temps de le faire)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        2 janvier 2006 à 13:23:55

                        il y a un morceau dans tout ça que je ne comprends pas :
                        $reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10");

                        surtout le LIMIT 0,10
                        d'après ce que j'ai compris dans le cours, il va afficher le 1er message posté et les 10 suivants, mais alors quand une personne postera le 11ème message, il ne sera pas affiché. :o

                        Pouvez vous m'aider s'il-vous-plaît ?

                        • Partager sur Facebook
                        • Partager sur Twitter
                          2 janvier 2006 à 13:27:01

                          si car la page va être refaite.

                          et grâce au DESC se sera le 1er message qui a été enregistrer qui partira!!(pas de la BDD mais il ne sera plus afficher)
                          • Partager sur Facebook
                          • Partager sur Twitter
                            2 janvier 2006 à 13:55:08

                            En fait, plus simplement, c'est juste que le DESC indique qu'il faut mettre tous les id dans l'ordre décroissant ;)
                            • Partager sur Facebook
                            • Partager sur Twitter

                            Le mini-chat

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown