Advertisement
Guest User

Untitled

a guest
Jul 9th, 2017
502
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.70 KB | None | 0 0
  1. <?php
  2. session_start();
  3. $titre = "Livre d'or";
  4.  
  5. include("haut.php");
  6. include("menu.php");
  7. ?>
  8.  
  9. <style type="text/css">
  10. form
  11. {
  12. width: 50%;
  13. margin: auto;
  14. text-align: center;
  15. }
  16.  
  17. .border
  18. {
  19. border: solid #8d5430 1px;
  20. background-color: #b19175;
  21. width: 45%;
  22. margin: auto;
  23. text-align: center;
  24. padding: 3px;
  25. }
  26. </style>
  27.  
  28. <div id="corps_6"><!-- Les infos sont écrites ici -->
  29.  
  30. <form method="post" action="KarateHTML_livreor.php">
  31. <p>Vous souhaitez nous dire quelque chose ? Vous êtes au bon endroit !<br />
  32. Info : L'Email restera confidentiel.</p><br /><br />
  33.  
  34. <label>Pseudo</label>&nbsp;&nbsp;&nbsp;<input name="pseudo" tabindex='10' size='30'/><br /><br />
  35.  
  36. <label>Email</label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="email" tabindex="20" size="30"/><br /><br />
  37.  
  38. <p>Message<br />
  39. <textarea name="message" rows="4" cols="35"></textarea></p>
  40.  
  41. <input type="submit" value="Envoyer" name="valider" /><br /><br />
  42.  
  43. </form>
  44. <p>
  45. <?php
  46. include('identifiant.php');
  47. ?>
  48.  
  49.  
  50. <?php
  51.  
  52. if (isset($_POST['valider']))
  53. {
  54. $error = false;
  55. $mail = (isset($_POST['email']) && $_POST['email'] != '') ? $_POST['email'] : '';
  56. $email = 'karatepassionfg@gmail.com';
  57.  
  58. // --------------- Etape 1 -----------------
  59. // Si un message est envoyé, on l'enregistre
  60. // -----------------------------------------
  61. if (isset($_POST['message']) && $_POST['message'] == '')
  62. {
  63. echo'<p>Vous n\'avais pas écrit de message !</p><br /><br />';
  64. $error = true;
  65. }
  66.  
  67. if (isset($_POST['pseudo']) && $_POST['pseudo'] == '')
  68. {
  69. echo'<p>Choisissez un pseudo !</p><br /><br />';
  70. $error = true;
  71. }
  72.  
  73. if ($mail != '' && !preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $mail))
  74. {
  75. echo'<br />Votre Email n\'à pas un format valide !<br /><br />';
  76. $error = true;
  77. }
  78.  
  79. if ($error === false)
  80. {
  81. $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
  82. $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); // De même pour le message
  83. $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
  84.  
  85. // On peut enfin enregistrer :o)
  86. date_default_timezone_set('Europe/Paris');
  87. mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "', '" . date('Y-m-d H:i:s') . "')")or die (mysql_error());
  88.  
  89. // On envoi le mail
  90. if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $email))
  91. {
  92. $passage_ligne = "\r\n";
  93. }
  94. else
  95. {
  96. $passage_ligne = "\n";
  97. }
  98.  
  99. $message = 'Un nouveau message à été posté sur le livre d\'or.<br /><br />
  100. <span style="text-decoration: underline; font-weight: bold;">Son Email</span> : ' . $mail . '<br />
  101. <span style="text-decoration: underline; font-weight: bold;">Son pseudo</span> : ' . htmlentities(stripslashes($_POST['pseudo'])) .'<br />
  102. <span style="text-decoration: underline; font-weight: bold;">Contenu du message</span> : ' . htmlentities(stripslashes($_POST['message'])) . '';
  103.  
  104. $sujet = 'Un nouveau message dans le Livre d\'or';
  105.  
  106. $headers = "From: \"Utilisateur\"<Karatepassionfg@gmail.com>".$passage_ligne;
  107. $headers .= "Reply-to: \"Utilisateur\" <Karatepassionfg@gmail.com>".$passage_ligne;
  108. $headers .= 'MIME-Version: 1.0' . "\r\n";
  109. $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  110.  
  111. mail($email, $sujet, $message, $headers);
  112. }
  113. }
  114.  
  115. // --------------- Etape 2 -----------------
  116. // On écrit les liens vers chacune des pages
  117. // -----------------------------------------
  118.  
  119. // On met dans une variable le nombre de messages qu'on veut par page
  120. $nombreDeMessagesParPage = 15; // Essayez de changer ce nombre pour voir :o)
  121. // On récupère le nombre total de messages
  122. $retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor') or die(mysql_error());
  123. $donnees = mysql_fetch_array($retour);
  124. $totalDesMessages = $donnees['nb_messages'];
  125. // On calcule le nombre de pages à créer
  126. $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
  127. // Puis on fait une boucle pour écrire les liens vers chacune des pages
  128. echo 'Page : ';
  129. for ($i = 1 ; $i <= $nombreDePages ; $i++)
  130. {
  131. echo '<a href="KarateHTML_livreor.php?page=' . $i . '">' . $i . '</a> ';
  132. }
  133. ?>
  134.  
  135. </p>
  136.  
  137. <?php
  138.  
  139. // --------------- Etape 3 ---------------
  140. // Maintenant, on va afficher les messages
  141. // ---------------------------------------
  142.  
  143. if (isset($_GET['page']) && is_int($_GET['page']))
  144. {
  145. $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (test.php?page=4)
  146. }
  147. else // La variable n'existe pas, c'est la première fois qu'on charge la page
  148. {
  149. $page = 1; // On se met sur la page 1 (par défaut)
  150. }
  151.  
  152. // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
  153.  
  154. $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
  155.  
  156. $reponse = mysql_query('SELECT * FROM livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage) or die(mysql_error());
  157.  
  158. while ($donnees = mysql_fetch_array($reponse))
  159. {
  160. echo '<div class="border"><span class="gras">' . stripslashes($donnees['pseudo']) . '</span> a écrit à <span style="font-size: 12px;">'.date('H\hi').'</span> :<br />' . stripslashes($donnees['message']) . '</div><br />';
  161. }
  162.  
  163.  
  164. ?>
  165. </p>
  166.  
  167.  
  168. <!-- Bla Bla Bla ca continue ici -->
  169.  
  170.  
  171. </div>
  172.  
  173.  
  174. <?php include ("pied_page.php");?>
  175.  
  176. </body>
  177. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement