Advertisement
Guest User

Untitled

a guest
Oct 20th, 2019
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.11 KB | None | 0 0
  1. <?php
  2.  
  3. if ($_SERVER['REQUEST_METHOD'] === 'POST') {
  4. $isValid = true;
  5. if (!isset($_POST['user_name']) || empty($_POST['user_name'])) {
  6. $nameError = "Please enter your name";
  7. $isValid = false;
  8. }
  9. if (!isset($_POST['user_email']) || empty($_POST['user_email'])) {
  10. $emailError = "Please enter your email";
  11. $isValid = true;
  12. }elseif (!filter_var($_POST['user_email'],FILTER_VALIDATE_EMAIL)){
  13. $emailError = "Please enter valid email";
  14. $isValid = false;
  15. }
  16.  
  17. if (!isset($_POST['tel']) || empty($_POST['tel'])) {
  18. $numberError = "Please enter your number";
  19. $isValid = false;
  20. }
  21. if (!isset($_POST['user_message']) || empty($_POST['user_message'])) {
  22. $messageError = "Pleaserequired enter your message";
  23. $isValid = false;
  24. }
  25. if($isValid){
  26. header ("location:success.php");
  27. }
  28.  
  29. }
  30.  
  31. ?>
  32. <!DOCTYPE html>
  33. <html lang="en">
  34. <head>
  35. <meta charset="UTF-8">
  36. <title>Title</title>
  37. </head>
  38. <body>
  39.  
  40. <form action="form.php" method="post">
  41. <div>
  42. <label for="nom">Nom :</label>
  43. <input type="text" id="nom" name="user_name" class="forl-control" >
  44. <?php if (isset($nameError)) echo $nameError ?>
  45. </div>
  46. <div>
  47. <label for="courriel">Courriel :</label>
  48. <input type="email" id="courriel" name="user_email" required>
  49. <?php if (isset($emailError)) echo $emailError ?>
  50. </div>
  51. <div>
  52. <label for="message">Message :</label>
  53. <textarea id="message" name="user_message" required></textarea>
  54. <?php if (isset($messageError)) echo $messageError ?>
  55. </div>
  56. <label for="tel"> Téléphone : </label>
  57. <input type="tel" id="tel" name="tel" pattern="[0-9]{10}"required>
  58. <?php if (isset($numberError)) echo $numberError?>
  59. <label>
  60. <select name="jour" size="1">
  61. <option value="monday">lundi
  62. <option value="tuesday"> mardi
  63. <option value="wednesday"> mercredi
  64. <option value="thursday"> jeudi
  65. <option value="friday"> vendredi
  66. </select>
  67. </label>
  68. <select name="partie_de_la_journee" size="1">
  69. <option value="morning"> matin
  70. <option value="afternoon"> apr&egrave;s-midi
  71. <option value="night"> soir
  72. </select>
  73. </div>
  74. <div class="button">
  75. <button type="submit">Envoyer votre message</button>
  76. </div>
  77. </form>
  78. <style>
  79. form {
  80. /* Uniquement centrer le formulaire sur la page */
  81. margin: 0 auto;
  82. width: 400px;
  83. /* Encadré pour voir les limites du formulaire */
  84. padding: 1em;
  85. border: 1px solid #CCC;
  86. border-radius: 1em;
  87. }
  88.  
  89. form div + div {
  90. margin-top: 1em;
  91. }
  92.  
  93. label {
  94. /* Pour être sûrs que toutes les étiquettes ont même taille et sont correctement alignées */
  95. display: inline-block;
  96. width: 90px;
  97. text-align: right;
  98. }
  99.  
  100. input, textarea {
  101. /* Pour s'assurer que tous les champs texte ont la même police.
  102. Par défaut, les textarea ont une police monospace */
  103. font: 1em sans-serif;
  104.  
  105. /* Pour que tous les champs texte aient la même dimension */
  106. width: 300px;
  107. box-sizing: border-box;
  108.  
  109. /* Pour harmoniser le look & feel des bordures des champs texte */
  110. border: 1px solid #999;
  111. margin-bottom: 10px;
  112. }
  113.  
  114. input:focus, textarea:focus {
  115. /* Pour souligner légèrement les éléments actifs */
  116. border-color: #000;
  117. }
  118.  
  119. select {
  120. text-align: center;
  121. }
  122.  
  123. textarea {
  124. /* Pour aligner les champs texte multi‑ligne avec leur étiquette */
  125. vertical-align: top;
  126.  
  127. /* Pour donner assez de place pour écrire du texte */
  128. height: 5em;
  129. }
  130.  
  131. .button {
  132. /* Pour placer le bouton à la même position que les champs texte */
  133. padding-left: 90px; /* même taille que les étiquettes */
  134. }
  135.  
  136. button {
  137. /* Cette marge supplémentaire représente grosso modo le même espace que celui
  138. entre les étiquettes et les champs texte */
  139. margin-left: .5em;
  140. }
  141. </style>
  142.  
  143.  
  144. </body>
  145. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement