Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]formularz kontaktowy
Forum PHP.pl > Forum > Przedszkole
jaca121212
Problem z formulatrzem email na ugu.pl mam założony konto e mial i nadal nie przychodzą wiadomości z formularza ze strony link cały czas piszę Błąd: wiadomość nie została wysłana
  1. <?php
  2. //--- początek formularza ---
  3. if(empty($_POST['submit'])) {
  4. ?>
  5.  
  6. <table>
  7. <form action="" method="post">
  8. <tr>
  9. <td>Imię i Nazwisko:</td>
  10. <td><input type="text" name="formName"/></td>
  11. </tr>
  12.  
  13. <tr>
  14. <td>E-Mail:</td>
  15. <td><input type="text" name="formEmail"/></td>
  16. </tr>
  17.  
  18. <tr>
  19. <td>Treść wiadomości:</td>
  20. <td><textarea name="formText"></textarea></td>
  21. </tr>
  22.  
  23. <tr>
  24. <td>&nbsp;</td>
  25. <td><input type="submit" name="submit" value="Wyślij formularz"/></td>
  26. </tr>
  27. </form>
  28. </table>
  29.  
  30. <?php
  31. } else {
  32.  
  33. //twoje dane
  34. $email = 'jaca6999@gmail.com';
  35.  
  36. //dane z formularza
  37. $formName = $_POST['formName'];
  38. $formEmail = $_POST['formEmail'];
  39. $formText = $_POST['formText'];
  40.  
  41. if(!empty($formName) && !empty($formEmail) && !empty($formText)) {
  42.  
  43. //--- początek funkcji weryfikującej adres e-mail ---
  44. function checkMail($checkmail) {
  45. if(filter_var($checkmail, FILTER_VALIDATE_EMAIL)) {
  46. if(checkdnsrr(array_pop(explode("@",$checkmail)),"MX")){
  47. return true;
  48. }else{
  49. return false;
  50. }
  51. } else {
  52. return false;
  53. }
  54. }
  55. //--- koniec funkcji ---
  56.  
  57. if(checkMail($formEmail)) {
  58. //dodatkowe informacje: ip i host użytkownika
  59. $ip = $_SERVER['REMOTE_ADDR'];
  60. $host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
  61.  
  62. //tworzymy szkielet wiadomości
  63. //treść wiadomości
  64. $mailText = "Treść wiadomości:n$formTextnOd: $formName, $formEmail ($ip, $host)";
  65.  
  66. //adres zwrotny
  67. $mailHeader = "From: $formName <$formEmail>";
  68.  
  69. //funkcja odpowiedzialna za wysłanie e-maila
  70. @mail($email, 'Formularz kontaktowy', $mailText, $mailHeader) or die('Błąd: wiadomość nie została wysłana');
  71.  
  72. //komunikat o poprawnym wysłaniu wiadomości
  73. echo 'Wiadomość została wysłana';
  74. } else {
  75. echo 'Adres e-mail jest niepoprawny';
  76. }
  77.  
  78. } else {
  79. //komunikat w przypadku nie powodzenia
  80. echo 'Wypełnij wszystkie pola formularza';
  81. }
  82.  
  83. //--- koniec formularza ---
  84. }
  85. ?>

NickOver
Usuń @ przed funkcją mail() a dowiesz się czemu smile.gif
jaca121212
nic nie pomogło usuniecie @ przed mail nadal jest błąd
viking
Ale teraz już wiesz jaki smile.gif
Jeśli nic nie ma to Temat: Jak poprawnie zadac pytanie
jaca121212
na lokalnym serwerze jest bład Notice: Undefined variable: formTextnOd in C:\xampp\htdocs\formularz.php on line 65 i ze Wiadomość została wysłana a na serwerza ugu nie ma tego błędu z lini 65 teraz jest błąd Notice: Undefined variable: formTextnOd in /virtual/d/a/darmoweogloszenia.ugu.pl/formularz.php on line 67 na serwerze ugu
  1. <?php
  2. ini_set('display_errors','1');
  3. //--- początek formularza ---
  4. if(empty($_POST['submit'])) {
  5. ?>
  6.  
  7. <table>
  8. <form action="" method="post">
  9. <tr>
  10. <td>Imię i Nazwisko:</td>
  11. <td><input type="text" name="formName"/></td>
  12. </tr>
  13.  
  14. <tr>
  15. <td>E-Mail:</td>
  16. <td><input type="text" name="formEmail"/></td>
  17. </tr>
  18.  
  19. <tr>
  20. <td>Treść wiadomości:</td>
  21. <td><textarea name="formText"></textarea></td>
  22. </tr>
  23.  
  24. <tr>
  25. <td>&nbsp;</td>
  26. <td><input type="submit" name="submit" value="Wyślij formularz"/></td>
  27. </tr>
  28. </form>
  29. </table>
  30.  
  31. <?php
  32. } else {
  33.  
  34. //twoje dane
  35. $email = 'test@darmoweogloszenia.ugu.pl';
  36.  
  37. //dane z formularza
  38. $formName = $_POST['formName'];
  39. $formEmail = $_POST['formEmail'];
  40. $formText = $_POST['formText'];
  41.  
  42. if(!empty($formName) && !empty($formEmail) && !empty($formText)) {
  43.  
  44. //--- początek funkcji weryfikującej adres e-mail ---
  45. function checkMail($checkmail) {
  46. if(filter_var($checkmail, FILTER_VALIDATE_EMAIL)) {
  47. if(checkdnsrr(array_pop(explode("@",$checkmail)),"MX")){
  48. return true;
  49. }else{
  50. return false;
  51. }
  52. } else {
  53. return false;
  54. }
  55. }
  56. //--- koniec funkcji ---
  57.  
  58. if(checkMail($formEmail)) {
  59. //dodatkowe informacje: ip i host użytkownika
  60. $ip = $_SERVER['REMOTE_ADDR'];
  61. $host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
  62.  
  63. //tworzymy szkielet wiadomości
  64. //treść wiadomości
  65. $mailText = "Treść wiadomości:n$formTextnOd: $formName, $formEmail ($ip, $host)";
  66.  
  67. //adres zwrotny
  68. $mailHeader = "From: $formName <$formEmail>";
  69.  
  70. //funkcja odpowiedzialna za wysłanie e-maila
  71. mail($email, 'Formularz kontaktowy', $mailText, $mailHeader) or die('Błąd: wiadomość nie została wysłana');
  72.  
  73. //komunikat o poprawnym wysłaniu wiadomości
  74. echo 'Wiadomość została wysłana';
  75. } else {
  76. echo 'Adres e-mail jest niepoprawny';
  77. }
  78.  
  79. } else {
  80. //komunikat w przypadku nie powodzenia
  81. echo 'Wypełnij wszystkie pola formularza';
  82. }
  83.  
  84. //--- koniec formularza ---
  85. }
  86.  
  87. var_dump($formName);
  88. var_dump($$formEmail);
  89. var_dump($formText);
  90. var_dump($ip);
  91. var_dump($host);
  92. var_dump($mailText);
  93. var_dump($mailHeader);
  94. ?>
  95. <?php
  96. echo"$email";
  97. ?>
olszam
czytaj ze zrozumieniem raport.

Gdzie ty masz zmienną $formTextnOd? Przecież ona nawet nie jest zdefiniowana. Weź tam skreśl 3 ostatnie litery i powinno się naprawić. Sam nie jestem inteligentem w php ale żeby tak prostego raportu nie zrozumieć to już szok. Już dodatkowo powiem że zapomniałeś w 65 linijce czy tam w 66 linijce dodać \n.
jaca121212
po usunieciu tego co mówiłeś i tak nie działa błędy ale dobra postanowiłem zrobić prosty formularz wysyłania email i jest problem pisz że e mail nie został wysłany
  1. <?php
  2. $temat=$_POST['temat'];
  3. $wiadomosc=$_POST['wiadomosc'];
  4. if (mail("test@darmoweogloszenia.ugu.pl", $temat, $wiadomosc))
  5. {
  6. echo "mail został wysłany";
  7. }
  8. else
  9. {
  10. echo "mail NIE został wysłany";
  11. }
  12. ?>

  1. </head>
  2. <form method="POST" action="mail.php">
  3. wyślij do mnie maila :</br>
  4. temat:<input type="text" name="temat"></br>
  5. treść<textarea name="wiadomosc">tu wpisz treść wiadomości</textarea></br>
  6. <br>
  7. <input type="submit" value="ok">
  8. </form>
  9. </body>
  10. </html>

co tu w tym kodzie jest źle zrobione
olszam
spróbuj zamiast formularza samą funkcję mail wykonać i na sztywno wstaw dane, jeśli to nie pójdzie to znaczy że z serwerem masz coś nie tak.
viking
No i pytanie skąd to wysyłasz? Bo jak z Windows bez serwera pocztowego to może być żdziubko ciężko wink.gif
jaca121212
ten skrypcik działa sprawdzałem na innym hostingu zapomniałem napiosać że temat do zamkniecia
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.