Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Formularz nie zawsze działa
Forum PHP.pl > Forum > Przedszkole
Bojakki
Mam kod:
  1. <?php
  2. // sprawdzamy, czy zmienna $submit jest pusta
  3. if (empty($_POST['submit'])) {
  4. // wyświetlamy formularz
  5. echo '<table border="0"><form method="post">
  6. <tr>
  7. <td>Tresc wiadomosci</td>
  8. <td><textarea name="tresc" style="width: 250px; height: 100px"></textarea></td>
  9. </tr>
  10. <tr>
  11. <td>Imie, nazwisko lub nick</td>
  12. <td><input type="text" name="imie" style="width: 250px"></td>
  13. </tr>
  14. <tr>
  15. <td>Adres e-mail</td>
  16. <td><input type="text" name="email" style="width: 250px"></td>
  17. </tr>
  18. <tr>
  19. <td>&nbsp;</td>
  20. <td><input type="submit" name="submit" value="Wyslij">&nbsp;
  21. <input type="reset" value="Od nowa"></td></form>
  22. </tr>
  23. </table>';
  24. }
  25. // sprawdzamy, czy zmienne przesłane z formularza nie są puste
  26. elseif (!empty($_POST['tresc']) && !empty($_POST['imie']) && !empty($_POST['email'])) {
  27. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
  28. // zmienna $message zawiera treść wiadomości
  29. $message = "Tresc wiadomosci:\n$_POST[tresc]\nWyslal: $_POST[imie]\ne-mail: $_POST[email]";
  30. // zmienna $header zawiera przede wszystkim adres zwrotny
  31. $header = "From: $_POST[imie] <$_POST[email]>";
  32. // funkcja mail() za pomocą której wiadomość zostanie wysłana
  33. @mail("mail@gmail.com","Wiadomosc ze strony WWW","$message","$header")
  34. or die('Nie udało sie wyslac wiadomosci');
  35. // wyświetlenie komunikatu w przypadku powodzenia
  36. echo "<div align=\"center\"><strong>Wiadomosc zostala wysłana poprawnie!</strong></div>";
  37. }
  38. // lub w przypadku nie wypełnienia formularza do końca
  39. else echo "<span style=\"color: #FF0000; text-align: center;\">Wypelnij wszystkie pola formularza!</span>";
  40. ?>

Niestety wiadomosci nie dochodzą. Tzn. czasami ale bardzo żadko dojdzie jakaś, chyba wtedy jak ktoś uzyje jakiejś starej przeglądarki, która w inny posób validuje kod. Wie może ktoś gdzie jest błąd?
JamalBIG
Spróbuj dołożyć więcej informacji w nagłówku - http://www.php.net/manual/en/function.mail.php
Ogólnie polecał bym korzystanie z klasy phpmailer - http://sourceforge.net/projects/phpmailer/
nospor
Masz sieczkę w kodzie HTML...
FORM nie wstawia się w TABLE.....
FORM wstawia się przed TABLE a /FORM po TABLE....
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.