Advertisement
Guest User

Untitled

a guest
Dec 3rd, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.63 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="pl">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Kontakt - Świat zwierząt</title>
  6. <meta content="Formularz kontaktowy z autorami strony." name="description">
  7. <meta content="kontakt, komentarz, wiadomość, uwagi" name="keywords">
  8. <link href="style.css" rel="Stylesheet" type="text/css">
  9. </head>
  10.  
  11. <body>
  12. <header>
  13. <h1 id="main-header"><a href="index.html">Świat zwierząt</a></h1>
  14. <nav class="nav-container">
  15. <ul>
  16. <li>Komponenty
  17. <ul>
  18. <li>Podstawowe
  19. <ul>
  20. <li><a href="tekst.html">Tekst</a></li>
  21. <li><a href="linki.html">Odnośniki</a></li>
  22. <li><a href="liczby.html">Tabela</a></li>
  23. </ul>
  24. </li>
  25. <li>Formularze
  26. <ul>
  27. <li><a href="formularz_osobowy.html">Osobowy</a></li>
  28. <li><a href="formularz_dodatkowe.html">Dodatkowy</a></li>
  29. </ul>
  30. </li>
  31. </ul>
  32. </li>
  33. <li>Kategorie
  34. <ul>
  35. <li>
  36. ZOO
  37. <ul>
  38. <li><a href="zoo.html">ZOO Wrocław</a></li>
  39. <li><a href="maskotka.html">Maskotka</a></li>
  40. </ul>
  41. </li>
  42. <li>Pozostałe
  43. <ul>
  44. <li><a href="intro.html">Wprowadzenie</a></li>
  45. <li><a href="kontakt.html">Kontakt</a></li>
  46. <li><a href="stawonogi.html">Stawonogi</a></li>
  47. <li><a href="strunowce.html">Strunowce</a></li>
  48. </ul>
  49. </li>
  50. </ul>
  51. </li>
  52. <li>Wszystko
  53. <ul>
  54. <li>
  55. A-M
  56. <ul>
  57. <li><a href="formularz_osobowy.html">Formularz os.</a></li>
  58. <li><a href="formularz_dodatkowe.html">Formularz dod.</a></li>
  59. <li><a href="kontakt.html">Kontakt</a></li>
  60. <li><a href="liczby.html">Liczby</a></li>
  61. <li><a href="maskotka.html">Maskotka</a></li>
  62. </ul>
  63. <li>
  64. N-Ź
  65. <ul>
  66. <li><a href="linki.html">Odnośniki</a></li>
  67. <li><a href="stawonogi.html">Stawonogi</a></li>
  68. <li><a href="index.html">Strona główna</a></li>
  69. <li><a href="strunowce.html">Strunowce</a></li>
  70. <li><a href="intro.html">Wprowadzenie</a></li>
  71. <li><a href="zoo.html">ZOO Wrocław</a></li>
  72. </ul>
  73. </li>
  74. </ul>
  75. </li>
  76. </ul>
  77. </nav>
  78. </header>
  79.  
  80. <h2>Kontakt</h2>
  81. <?php
  82. define("THANKYOU_GENERIC", "Dziękujemy za wiadomość!");
  83. $thankyou = array(
  84. "s-blad" => "Dziękujemy za zgłoszenie błędu!",
  85. "s-uwagi" => "Dziękujemy za uwagi dotyczące strony!",
  86. "k-*" => "Dziękujemy za komentarz!"
  87. );
  88. $fieldNames = array(
  89. "from" => "Autor",
  90. "tel" => "Telefon",
  91. "category" => "Kategoria",
  92. "subject" => "Temat",
  93. "message" => "Treść",
  94. "rating" => "Ocena strony",
  95. "rodo" => "Zgoda na przetwarzanie danych osobowych",
  96. "pub" => "Zgoda na publikację",
  97. "respond" => "Odpowiedź na e-mail"
  98. );
  99. $checkBoxes = array("rodo", "pub", "respond");
  100. $requiredFields = array("from", "tel", "category", "subject", "message", "rating", "rodo");
  101. $categoryNames = array(
  102. "s-pochwala" => "Pochwała",
  103. "s-uwagi" => "Uwagi",
  104. "s-blad" => "Zgłoszenie błędu",
  105. "k-ulubione" => "Ulubione zwierzęta",
  106. "k-moje" => "Moje zwierzaki",
  107. "i-inne" => "Inne"
  108. );
  109.  
  110. function dieError($error) {
  111. die("<strong>Błąd:</strong> $error </body></html>");
  112. }
  113.  
  114. function validateOrDie($formName, $friendlyName) {
  115. if (!isset($_POST[$formName]) || empty($_POST[$formName])) {
  116. dieError("Nie wypełniono pola $friendlyName.");
  117. }
  118. }
  119.  
  120. if ($_SERVER["REQUEST_METHOD"] !== "POST") {
  121. dieError('Formularz został wysłany w nieprawidłowy sposób. <a href="kontakt.html">Spróbuj ponownie</a>');
  122. }
  123.  
  124. foreach ($requiredFields as $requiredField) {
  125. validateOrDie($requiredField, $fieldNames[$requiredField]);
  126. }
  127.  
  128. if (!preg_match("/\\d{3}-\\d{3}-\\d{3}/", $_POST["tel"])) {
  129. dieError("Niepoprawny format numeru telefonu.");
  130. } else if (strcmp($_POST["tel"], "737-523-461") == 0){
  131. $msg = "Telefon zastrzeżony! Kod błędu: ";
  132. $five = "5";
  133. $num = (5+5*$five);
  134. $finalmsg = $msg . $num;
  135. dieError($finalmsg);
  136. } else {
  137. echo("Wypełniono " . count($requiredFields) . " wymaganych pól:" . '<br />');
  138. while ($field = current($requiredFields)) {
  139.  
  140. echo key($requiredFields) . '. ' . current($requiredFields) .'<br />';
  141. next($requiredFields);
  142. }
  143. reset($requiredFields);
  144. echo ("Zaczynając od: " . current($requiredFields). '<br />');
  145.  
  146. echo ("Mogłeś zaznaczyć także: " . '<br />');
  147. $size = sizeOf($checkBoxes);
  148. for ($i = 0; $i < $size; $i++) {
  149. echo $checkBoxes[$i] . " ";
  150. }
  151. }
  152.  
  153. $category = $_POST["category"];
  154. $categoryBase = preg_replace("/-.+/", "-*", $category);
  155.  
  156. echo("<h3>");
  157. if (key_exists($category, $thankyou)) {
  158. echo($thankyou[$category]);
  159. } else if (key_exists($categoryBase, $thankyou)) {
  160. echo($thankyou[$categoryBase]);
  161. } else {
  162. echo(THANKYOU_GENERIC);
  163. }
  164. echo("</h3>");
  165. ?>
  166. <p>Wysłana wiadomość pomoże nam w dalszym rozwoju strony.</p>
  167. <?php if ((int)$_POST["rating"] < 3): ?>
  168. <p>Przykro nam, że strona się nie spodobała. Twój kometarz zostanie wykorzystany do jej poprawienia.</p>
  169. <?php endif; ?>
  170. <h3>Wysłane informacje</h3>
  171. <ul>
  172. <?php
  173. foreach ($fieldNames as $formName => $friendlyName) {
  174. echo("<li><strong>$friendlyName:</strong> ");
  175. if (in_array($formName, $checkBoxes)) {
  176. if (key_exists($formName, $_POST)) {
  177. echo("TAK");
  178. } else {
  179. echo("NIE");
  180. }
  181. } else if ($formName === "category") {
  182. echo($categoryNames[$_POST[$formName]]);
  183. } else {
  184. echo($_POST[$formName]);
  185. }
  186. echo('</li>');
  187. }
  188. echo('<li><strong>Adres IP:</strong> ' . $_SERVER['REMOTE_ADDR'] . '</li>');
  189. ?>
  190. </ul>
  191. </body>
  192. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement