Se connecter / S'enregistrer
Votre question

Minichat, le dernier message ne s'affiche pas / cherche doc sur le PHP

Tags :
  • Html
  • Programmation
Dernière réponse : dans Programmation
28 Janvier 2010 17:34:35

Bonjour, j'ai créer un Mini chat grâce au site du zéro, j'ai limité le nombre de messages sur la page à 10 mais, normalement le 11ème message devrait s'afficher, et le moins récent devrait s'effacer. Mais ce n'est pas le cas: le dernier message envoyer ne s'affiche pas, et le moins récent ne s'efface pas. Pourtant, dans ma base de donnée, le dernier message s'affiche, voici le code ?
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" rel="nofollow" target="_blank">http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd</a>">
  2. <html xmlns="<a href="http://www.w3.org/1999/xhtml" rel="nofollow" target="_blank">http://www.w3.org/1999/xhtml</a>" xml:lang="fr" lang="fr">
  3. <head>
  4. <title>Mini-chat</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  6. </head>
  7. <style type="text/css">
  8. form
  9. {
  10. text-align:center;
  11. }
  12. </style>
  13. <body>
  14.  
  15.  
  16. <?php
  17. if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent
  18. {
  19. if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
  20. {
  21. // D'abord, on se connecte à MySQL
  22. mysql_connect("localhost", "root", "");
  23. mysql_select_db("coursphp");
  24.  
  25. // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité
  26. $message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
  27. $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
  28.  
  29. // Ensuite on enregistre le message
  30. mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')");
  31.  
  32. // On se déconnecte de MySQL
  33.  
  34. }
  35. }
  36.  
  37.  
  38. // Que l'on ait enregistré des données ou pas...
  39. // On affiche le formulaire puis les 10 derniers messages
  40.  
  41. // Tout d'abord le formulaire :
  42. ?>
  43.  
  44.  
  45.  
  46. <form action="index.php" method="post">
  47.  
  48. <p>
  49. Pseudo : <input type="text" name="pseudo" /><br />
  50. Message : <input type="text" name="message" /><br />
  51.  
  52. <input type="submit" value="Envoyer" />
  53. </p>
  54.  
  55. </form>
  56.  
  57.  
  58.  
  59. <?php
  60.  
  61. // Maintenant on doit récupérer les 10 dernières entrées de la table
  62. // On se connecte d'abord à MySQL :
  63. mysql_connect("localhost", "root", "");
  64. mysql_select_db("coursphp");
  65.  
  66. // On utilise la requête suivante pour récupérer les 10 derniers messages :
  67. $reponse = mysql_query("SELECT * FROM minichat ORDER BY ID LIMIT 0,10");
  68.  
  69. // On se déconnecte de MySQL
  70.  
  71.  
  72. // Puis on fait une boucle pour afficher tous les résultats :
  73. while ($donnees = mysql_fetch_array($reponse) )
  74. {
  75. ?>
  76.  
  77. <p><strong><?php echo $donnees['pseudo']; ?></strong> : <?php echo $donnees['message']; ?></p>
  78.  
  79.  
  80.  
  81. <?php
  82. }
  83. // Fin de la boucle, le script est terminé !
  84. ?>
  85.  
  86.  
  87. </body>
  88. </html>



Pouvez-vous m'aider svp ?



Aussi, je cherche un bon site sur la doc du PHP. Si vous en connaissez un bien claire, merci de me le faire parvenir.

Merci d'avance.

Autres pages sur : minichat dernier message affiche cherche doc php

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS