Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Formularz Konataktowy
Forum PHP.pl > Forum > Przedszkole
bravuea
Witam.

Jestem nowym użytkowniekim forum.

Trochę kumam o co chodzi w PHP ale nie moge zrozumieć czemu akurat ten formularz mi nie dziala. Problem jest ten, że nie wysyła mi na mejla wiadomości.

PS.
Witam was, nie przywitalem sie to sie witam:)


  1. <?php
  2. if (empty($_POST['opis']) or empty($_POST['waga']) or empty($_POST['ilosc']) or empty($_POST['o_email']) or empty($_POST['o_tel2']) or empty($_POST['o_tel']) or empty($_POST['o_miej']) or empty($_POST['o_kod']) or empty($_POST['o_nr_m']) or empty($_POST['o_nr_d']) or empty($_POST['o_ul']) or empty($_POST['o_imie_nazw']) or empty($_POST['n_imie_nazw']) or empty($_POST['n_ul']) or empty($_POST['n_nr_d']) or empty($_POST['n_nr_m']) or empty($_POST['n_kod']) or empty($_POST['n_miej']) or empty($_POST['n_tel']) or empty($_POST['n_email']) and !empty($_POST['submit'])) {
  3. // wyswietlamy formularz
  4. echo "<table border='0' width='93%' align='center'>
  5. <form method='post'>
  6. <!-- Tutaj formularz -->
  7. </form>
  8. </table>";
  9. }
  10. elseif (empty($_POST['tresc']) or empty($_POST['opis']) or empty($_POST['waga']) or empty($_POST['ilosc']) or empty($_POST['o_email']) or empty($_POST['o_tel2']) or empty($_POST['o_tel']) or empty($_POST['o_miej']) or empty($_POST['o_kod']) or empty($_POST['o_nr_m']) or empty($_POST['o_nr_d']) && !empty($_POST['o_ul']) or empty($_POST['o_imie_nazw']) or empty($_POST['n_imie_nazw']) && !empty($_POST['n_ul']) or empty($_POST['n_nr_d']) or empty($_POST['n_nr_m']) or empty($_POST['n_kod']) or empty($_POST['n_miej']) or empty($_POST['n_tel']) or empty($_POST['n_email']) and empty($_POST['submit'])) {
  11. // wyświetlamy formularz
  12. echo "<table border='0' width='93%' align='center'>
  13. <form method='post'>
  14. <!-- Tutaj formularz ten sam -->
  15. </form>
  16. </table>";
  17. }
  18.  
  19. // sprawdzamy, czy zmienne przesłane z formularza nie są puste
  20. elseif (!empty($_POST['opis']) && !empty($_POST['waga']) && !empty($_POST['ilosc']) && !empty($_POST['o_email']) && !empty($_POST['o_tel2']) && !empty($_POST['o_tel']) && !empty($_POST['o_miej']) && !empty($_POST['o_kod']) && !empty($_POST['o_nr_m']) && !empty($_POST['o_nr_d']) && !empty($_POST['o_ul']) && !empty($_POST['o_imie_nazw']) && !empty($_POST['n_imie_nazw']) && !empty($_POST['n_ul']) && !empty($_POST['n_nr_d']) && !empty($_POST['n_nr_m']) && !empty($_POST['n_kod']) && !empty($_POST['n_miej']) && !empty($_POST['n_tel']) && !empty($_POST['n_email']) && !empty($_POST['submit'])) {
  21. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
  22. // zmienna $list zawiera treść wiadomości
  23. $message = "Nadawca:\n\n\nImie i Nazwisko: $_POST[n_imie_nazw]\n\nUl NrDom NrMiesz: $_POST[n_ul] $_POST[n_nr_d] $_POST[n_nr_m]\n\nKod pocztowyCounty: $_POST[n_kod]\n\nMiescowosc: $_POST[n_miej]\n\nTel: $n_tel\n\nEmail: $_POST[n_email]\n\nOdbiorca:\n\n Imie i Nazwisko: $_POST[o_imie_nazw]\n\nUl NrDom NrMiesz: $_POST[o_ul]\n $_POST[o_nr_d] $_POST[o_nr_m]\n\nKod pocztowyCounty: $_POST[o_kod]\n\nMiescowosc: $_POST[o_miej]\n\nTel: $_POST[o_tel]\n\nTel2: $_POST[o_tel2]\n\nEmail: $$_POST[_email]\n\n\n\nO paczce:\n\nIlosc: $_POST[ilosc]\n\nWaga: $_POST[waga]\n\n\n\nOpis: $_POST[opis]";
  24. // zmienna $header zawiera przede wszystkim adres zwrotny
  25. $header = "From: $_POST[n_imie_nazw] <$_POST[n_email]>";
  26. // funkcja mail() za pomocą której wiadomość zostanie wysłana
  27. @mail("domena@domena.pl","Kontakt","$message","$header")
  28. or die('Nie udało się wysłać wiadomości');
  29. // wyświetlenie komunikatu w przypadku powodzenia
  30. echo "<div align='center'><strong>Wysłano Wiadomość!</strong></div>";
  31. }
  32.  
  33. ?>


Proszę o pomoc w tej sprawie... smile.gif
Ellington
Wyrzuć małpę sprzed funkcji mail i napisz, jaki błąd się pojawia. Ewentualnie zacytuj błąd, który już teraz Ci się pojawia, ale nam go nie podałeś.
pedro84
W pierwszej kolejności to usuń znak @ przed funkcją mail().
bravuea
Usunąłem, nie wywala żadnego błędu, po prostu nie dostaje tego meajla.
Ellington
Sprawdź w spamie.
bravuea
Nie wysyła wcale alni nie ma w spamie ani w odbiorczej a funkcja mail jest na moim serwie wlaczona.
darko
To jeszcze włącz raportowanie błędów w php, może jest wyłączone i błąd się nie wyświetla.
Ellington
Kod
("domena@domena.pl","Kontakt","$message","$header")


Usuń cudzysłowia przy zmiennych.
bravuea
Cytat(Ellington @ 26.01.2010, 22:26:15 ) *
Kod
("domena@domena.pl","Kontakt","$message","$header")


Usuń cudzysłowia przy zmiennych.


  1. Parse error: syntax error, unexpected ':' in /home/xxx/public_html/xxx/kontakt.php on line 27


takie cos mi wyskakuje a usunalem

Mam też taki formularz:

  1. <?php
  2.  
  3. $n_imie_nazw = stripslashes(trim($_POST["n_imie_nazw"]));
  4. $n_ul = stripslashes(trim($_POST["n_ul"]));
  5. $n_nr_d = stripslashes(trim($_POST["n_nr_d"]));
  6. $n_nr_m = stripslashes(trim($_POST["n_nr_m"]));
  7. $n_kod = stripslashes(trim($_POST["n_kod"]));
  8. $n_miej = stripslashes(trim($_POST["n_miej"]));
  9. $n_tel = stripslashes(trim($_POST["n_tel"]));
  10. $n_email = stripslashes(trim($_POST["n_email"]));
  11. $o_imie_nazw = stripslashes(trim($_POST["o_imie_nazw"]));
  12. $o_ul = stripslashes(trim($_POST["o_ul"]));
  13. $o_nr_d = stripslashes(trim($_POST["o_nr_d"]));
  14. $o_nr_m = stripslashes(trim($_POST["o_nr_m"]));
  15. $o_kod = stripslashes(trim($_POST["o_kod"]));
  16. $o_miej = stripslashes(trim($_POST["o_miej"]));
  17. $o_tel = stripslashes(trim($_POST["o_tel"]));
  18. $o_tel2 = stripslashes(trim($_POST["o_tel2"]));
  19. $o_email = stripslashes(trim($_POST["o_email"]));
  20. $ilosc = stripslashes(trim($_POST["ilosc"]));
  21. $waga = stripslashes(trim($_POST["waga"]));
  22. $opis = stripslashes(trim($_POST["opis"]));
  23.  
  24.  
  25. if (strlen($opis)>2) {
  26. $list = "Nadawca:\n\n\n\nImie i Nazwisko: $n_imie_nazw\n\nUl NrDom NrMiesz: $n_ul $n_nr_d $n_nr_m\n\nKod pocztowy: $n_kod\n\nMiescowoscCountry: $n_miej\n\nTel: $n_tel\n\nEmail: $n_email\n\nOdbiorca:\n\n Imie i Nazwisko: $o_imie_nazw\n\nUl NrDom NrMiesz: $o_ul $o_nr_d $o_nr_m\n\nKod pocztowy: $o_kod\n\nMiescowoscCountry: $o_miej\n\nTel: $o_tel\n\nTel2: $o_tel2\n\nEmail: $n_email\n\n\n\nO paczce:\n\nIlosc: $ilosc\n\nWaga: $waga\n\n\n\nOpis: $opis";
  27. mail("jan.gajderowicz@gmail.com","Kontakt", $list, From: $n_imie_nazw <$n_email>);
  28. }
  29.  
  30. ?>
Ellington
Chodziło mi o:

Kod
("domena@domena.pl","Kontakt","$message","$header")


zmień na:

Kod
("domena@domena.pl","Kontakt",$message,$header)
bravuea
Cytat(Ellington @ 26.01.2010, 22:37:08 ) *
Chodziło mi o:

Kod
("domena@domena.pl","Kontakt","$message","$header")


zmień na:

Kod
("domena@domena.pl","Kontakt",$message,$header)


nic to nie zmieniło sad.gif

Tutaj mam ten sam skrypt lecz dziala nainnym serwerze.

  1. <?php
  2. if ((empty($_POST['tresc']) or empty($_POST['imie']) or empty($_POST['email'])) and !empty($_POST['submit'])) {
  3. // wyświetlamy formularz
  4. echo "<table border='0'><form method='post'>
  5. <tr>
  6. <td>Message:</td>
  7. <td><textarea name='tresc' style='width: 230px; height: 150px' class='msg_input'></textarea></td>
  8. </tr>
  9. <tr>
  10. <td>Nick</td>
  11. <td><input type='text' name='imie' style='width: 217px' class='search1_input'></td>
  12. </tr>
  13. <tr>
  14. <td>E-mail</td>
  15. <td><input type='text' name='email' style='width: 217px' class='search1_input'></td>
  16. </tr>
  17. <tr>
  18. <td>&nbsp;</td>
  19. <td><input type='submit' name='submit' value='Sent!'>&nbsp;
  20. <input type='reset' value='Reset'></td></form>
  21. </tr>
  22. <tr>
  23. <td>&nbsp;</td>
  24. <td>";
  25. // lub w przypadku nie wypełnienia formularza do końca
  26. echo "<span style='color: #FF0000; text-align: center;'>Fill in all fields!</span>";
  27. echo "</td>
  28. </tr>
  29. </table>";
  30. }
  31. elseif (empty($_POST['tresc']) or empty($_POST['imie']) or empty($_POST['email']) and empty($_POST['submit'])) {
  32. // wyświetlamy formularz
  33. echo "<table border='0'><form method='post'>
  34. <tr>
  35. <td>Message:</td>
  36. <td><textarea name='tresc' style='width: 230px; height: 150px' class='msg_input'></textarea></td>
  37. </tr>
  38. <tr>
  39. <td>Nick</td>
  40. <td><input type='text' name='imie' style='width: 217px' class='search1_input'></td>
  41. </tr>
  42. <tr>
  43. <td>E-mail</td>
  44. <td><input type='text' name='email' style='width: 217px' class='search1_input'></td>
  45. </tr>
  46. <tr>
  47. <td>&nbsp;</td>
  48. <td><input type='submit' name='submit' value='Sent!'>&nbsp;
  49. <input type='reset' value='Reset'></td></form>
  50. </tr>
  51. </table>";
  52. }
  53.  
  54. // sprawdzamy, czy zmienne przesłane z formularza nie są puste
  55. elseif (!empty($_POST['tresc']) && !empty($_POST['imie']) && !empty($_POST['email'])) {
  56. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
  57. // zmienna $message zawiera treść wiadomości
  58. $message = "Treść wiadomości:n$_POST[tresc]nWysłał: $_POST[imie]ne-mail: $_POST[email]";
  59. // zmienna $header zawiera przede wszystkim adres zwrotny
  60. $header = "From: $_POST[imie] <$_POST[email]>";
  61. // funkcja mail() za pomocą której wiadomość zostanie wysłana
  62. @mail("bravura@xxx.com","Contact","$message","$header")
  63. or die('Nie udało się wysłać wiadomości');
  64. // wyświetlenie komunikatu w przypadku powodzenia
  65. echo "<div align='center'><strong>This message has been sent successfully! <a href='contact.php'>Back</a></strong></div>";
  66. }
  67.  
  68. ?>


Czy czyms sie on rozni?
Ellington
Skąd przekleiłeś ten kod?

Zmień:

Kod
   $header = "From: $_POST[n_imie_nazw] <$_POST[n_email]>";


Na:

Kod
   $header = "From: ". $_POST[n_imie_nazw] ."<".$_POST[n_email].">";


I spróbuj wysłać.
bravuea
No nie mogę. Chyba zrobię po prostu, żeby wysylalo na mejla bezposrednio.

Tyle sie z tym mecze a jeszcze musze troche webdesignowac. smile.gif

Ale dzieki za ochote smile.gif
piotr94
spróbuj poprzez PHPMailer
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.