Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Formularz kontaktowy + TOKEN
albectus
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 8.09.2010

Ostrzeżenie: (0%)
-----


Witam serdecznie, mam taki oto formularz kontaktowy
Kod
<?php
// sprawdzamy, czy zmienna $submit jest pusta
if (empty($_POST['submit'])) {
// wyświetlamy formularz
echo "<table border=\"0\"><FORM id=form method=post >  
                          
<tr>
<td>

<IMG style=\"MARGIN: 92px 0px 0px 20px; FLOAT: left \" border=0 src=\"namst.gif \" width=16 height=16>
<textarea placeholder=\"Tekst wiadomości \" name='tresc' cols='30' rows='3' wrap='virtual' style=\"background: none; border: solid 0px #3f5763; color: black; width: 250px; height: 180px; margin: 7px 0 0 5px; font-size: 14px; \">Tekst wiadomości</textarea>
</td>
</tr>

<tr> <td>
<input placeholder=\"Imię i Nazwisko\" type='Text' name='imie' maxlength='50' value='Imię i Nazwisko' style=\"background: none; border: solid 0px black; width: 250px; margin: 7px 0 0 25px; font-size: 14px; \">
<b style=\"color: red; \">*</b></td>
</tr>

<tr> <td>
<input placeholder=\"Imię i Nazwisko\" type='Text' name='email' maxlength='50' value='Email' style=\"background: none; border: solid 0px black; width: 250px; margin: 7px 0 0 25px; font-size: 14px; \">
<b style=\"color: red; \">*</b></td>
</tr>

<td><input type=\"submit\" style= \"width: 100px \" name=\"submit\" value=\"Wyślij\">&nbsp;
</tr>
</table>";
}
// sprawdzamy, czy zmienne przesłane z formularza nie są puste
elseif (!empty($_POST['tresc']) && !empty($_POST['imie']) && !empty($_POST['email'])) {
// jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
// zmienna $message zawiera treść wiadomości
$message = "Treść wiadomości:\n$_POST[tresc]\nWysłał: $_POST[imie]\ne-mail: $_POST[email]";
// zmienna $header zawiera przede wszystkim adres zwrotny
$header = "From: $_POST[imie] <$_POST[email]>";
// funkcja mail() za pomocą której wiadomość zostanie wysłana
@mail("xxxxxx","Wiadomosc ze strony Dxxx","$message","$header")
or die('Nie udało się wysłać wiadomości');
// wyświetlenie komunikatu w przypadku powodzenia
echo "<br><br><Br><span style=\"color: #FF0000; text-align:center; font-size: 15pt;\"><strong>Wiadomość została wysłana poprawnie!</strong><br><br><br>";
}
// lub w przypadku nie wypełnienia formularza do końca
else echo "<br><br><br><br><span style=\"color: #FF0000; text-align:center; font-size: 15pt;\">Wypełnij wszystkie pola formularza!</span><br><br><br><br><br><br><br>";

?>


Chciałbym do niego dorobić TOKENa jednak nie wiem jak... proszę o pomoc!

Ten post edytował albectus 23.10.2010, 20:26:00
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
fr33d0m
post
Post #2





Grupa: Zarejestrowani
Postów: 132
Pomógł: 4
Dołączył: 22.10.2010

Ostrzeżenie: (0%)
-----


  1. <?php
  2. // sprawdzamy, czy zmienna $submit jest pusta
  3. if (empty($_POST['submit'])) {
  4. $_SESSION['token'] = '';
  5. for($i=0;$i<5;$i++) {
  6. $numer = rand(0,9);
  7. $_SESSION['token'] .= $numer;
  8. $img .= '<img src="token/'.$numer.'.gif" />'; }
  9. // wyświetlamy formularz
  10. echo "<table border=\"0\"><FORM id=form method=post >
  11.  
  12. <tr>
  13. <td>
  14.  
  15. <DIV style=\"TEXT-ALIGN: left; MARGIN: 0px auto; WIDTH: 300px; BACKGROUND: url(tlo_tekstowe.png) no-repeat; HEIGHT: 200px \">
  16. <IMG style=\"MARGIN: 92px 0px 0px 20px; FLOAT: left \" border=0 src=\"grafika/icon_name.gif \" width=16 height=16>
  17. <textarea placeholder=\"Tekst wiadomości \" name='tresc' cols='30' rows='3' wrap='virtual' style=\"background: none; border: solid 0px #3f5763; color: black; width: 250px; height: 180px; margin: 7px 0 0 5px; font-size: 14px; \">Tekst wiadomości</textarea>
  18. </DIV>
  19. </td>
  20. </tr>
  21.  
  22. <tr> <td>
  23. <DIV style=\"TEXT-ALIGN: left; MARGIN: 0px auto; WIDTH: 300px; BACKGROUND: url(tlo.png) no-repeat; HEIGHT: 40px \">
  24. <input placeholder=\"Imię i Nazwisko\" type='Text' name='imie' maxlength='50' value='Imię i Nazwisko' style=\"background: none; border: solid 0px black; width: 250px; margin: 7px 0 0 25px; font-size: 14px; \">
  25. <b style=\"color: red; \">*</b></DIV>
  26. </td>
  27. </tr>
  28.  
  29. <tr> <td>
  30. <DIV style=\"TEXT-ALIGN: left; MARGIN: 0px auto; WIDTH: 300px; BACKGROUND: url(tlo.png) no-repeat; HEIGHT: 40px \">
  31. <input placeholder=\"Imię i Nazwisko\" type='Text' name='email' maxlength='50' value='Email' style=\"background: none; border: solid 0px black; width: 250px; margin: 7px 0 0 25px; font-size: 14px; \">
  32. <b style=\"color: red; \">*</b></DIV>
  33. </td>
  34. </tr>
  35.  
  36.  
  37.  
  38.  
  39. <tr> <td>Wpisz widoczny poniżej kod:<br><br>";
  40.  
  41.  
  42. echo $img;
  43.  
  44.  
  45. echo " <DIV style=\"TEXT-ALIGN: left; MARGIN: 0px auto; WIDTH: 300px; BACKGROUND: url(tlo.png) no-repeat; HEIGHT: 40px \">
  46. <input placeholder=\"token\" type='Text' name='token' maxlength='50' value='token' style=\"background: none; border: solid 0px black; width: 250px; margin: 7px 0 0 25px; font-size: 14px; \">
  47. <b style=\"color: red; \">*</b></DIV>
  48. </td>
  49. </tr>
  50.  
  51. <td><input type=\"submit\" style= \"width: 100px \" name=\"submit\" value=\"Wyślij\">&nbsp;
  52. </tr>
  53. </table>";
  54. }
  55. // sprawdzamy, czy zmienne przesłane z formularza nie są puste
  56. else if (!empty($_POST['tresc']) && !empty($_POST['imie']) && !empty($_POST['email']) && ($_SESSION['token']==$_POST['token'])) {
  57. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
  58.  
  59. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
  60. // zmienna $message zawiera treść wiadomości
  61. $message = "Treść wiadomości:\n$_POST[tresc]\nWysłał: $_POST[imie]\ne-mail: $_POST[email]";
  62. // zmienna $header zawiera przede wszystkim adres zwrotny
  63. $header = "From: $_POST[imie] <$_POST[email]>";
  64. // funkcja mail() za pomocą której wiadomość zostanie wysłana
  65. @mail("email","Wiadomosc ze strony","$message","$header")
  66. or die('Nie udało się wysłać wiadomości');
  67. // wyświetlenie komunikatu w przypadku powodzenia
  68. echo "<br><br><Br><span style=\"color: #FF0000; text-align:center; font-size: 15pt;\"><strong>Wiadomość została wysłana poprawnie!</strong><br><br><br>";
  69. }
  70. // lub w przypadku nie wypełnienia formularza do końca
  71. else echo "<br><br><br><br><span style=\"color: #FF0000; text-align:center; font-size: 15pt;\">Wypełnij wszystkie pola formularza!</span><br><br><br><br><br><br><br>";
  72. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 10:09