Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]nadawca jako email a nie strona ?
Forum PHP.pl > Forum > Przedszkole
damianm2007
Witam.
Mam napisany formularz html no i wysyłanie z mail.php ale nadawca przychodzi jako nazwa serwera a nie email kogoś kto to wypełni

  1. <?php
  2. // sprawdzamy, czy zmienna $submit jest pusta
  3. if (empty($_POST['submit'])) {
  4. // wyświetlamy formularz
  5. echo ('
  6. formularz html');
  7. }
  8. // sprawdzamy, czy zmienne przesłane z formularza nie są puste
  9. elseif (
  10.  
  11. !empty($_POST['imie'])
  12. && !empty($_POST['nazwisko'])
  13. && !empty($_POST['nrtel'])
  14. && !empty($_POST['email'])
  15. && !empty($_POST['nazwabadanejfirmy'])
  16. && !empty($_POST['miejscowosc'])
  17. && !empty($_POST['ulica'])
  18. && !empty($_POST['numerlokalu'])
  19. && !empty($_POST['kodpocztowy'])
  20. && !empty($_POST['wojewodztwo'])
  21. && !empty($_POST['dataobserwacji'])
  22. && !empty($_POST['godzinaobserwacji'])
  23. && !empty($_POST['uwagi'])
  24. && !empty($_POST['wiedzaikompetencjapersonelu'])
  25. && !empty($_POST['zachowanieiwyglad'])
  26. && !empty($_POST['ofertacenaasortyment'])
  27. && !empty($_POST['organizacjaiobsluga'])
  28. && !empty($_POST['wygladmiejscaobslugi'])
  29. && !empty($_POST['ogolnaocena'])
  30. ) {
  31. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
  32. // zmienna $message zawiera treść wiadomości
  33. $message = "Imie: $_POST[imie]
  34. \nNazwisko: $_POST[nazwisko]
  35. \nNumer telefonu: $_POST[nrtel]
  36. \ne-mail: $_POST[email]
  37. \nNazwa badanej firmy: $_POST[nazwabadanejfirmy]
  38. \nMiejscowość: $_POST[miejscowosc]
  39. \nUlica: $_POST[ulica]
  40. \nNumer lokalu: $_POST[numerlokalu]
  41. \nKod pocztowy: $_POST[kodpocztowy]
  42. \nWoj: $_POST[wojewodztwo]
  43. \nData obserwacji: $_POST[dataobserwacji]
  44. \nGodzina obserwacji: $_POST[godzinaobserwacji]
  45. \nUwagi: $_POST[uwagi]
  46. \nWiedza i kompetencja personelu: $_POST[wiedzaikompetencjapersonelu]
  47. \nZachowanie i wygląd personel: $_POST[zachowanieiwyglad]
  48. \nOferta, Cena, Asortyment: $_POST[ofertacenaasortyment]
  49. \nOrganizacja i czas obsługi: $_POST[organizacjaiobsluga]
  50. \nWygląd miejsca obsługi: $_POST[wygladmiejscaobslugi]
  51. \nOgólna ocena: $_POST[ogolnaocena]";
  52.  
  53.  
  54.  
  55. // zmienna $header zawiera przede wszystkim adres zwrotny
  56. $header = "";
  57.  
  58. // funkcja mail() za pomocą której wiadomość zostanie wysłana
  59. @mail("damianmiodek@gmail.com","Wiadomosc ze strony mala ankieta","$message","$header")
  60. or die('Nie udało się wysłać wiadomości');
  61. // wyświetlenie komunikatu w przypadku powodzenia
  62. echo "<div align=\"center\"><strong>Wiadomość została wysłana poprawnie!
  63. <jdoc:include type='component' />
  64. <A HREF='java script:history.back()'><BR>wstecz</A>
  65.  
  66. </strong></div>";
  67. }
  68. // lub w przypadku nie wypełnienia formularza do końca
  69. else echo "<span style=\"color: #FF0000; text-align: center;\">Wypełnij wszystkie pola formularza!
  70.  
  71. <BR>
  72.  
  73. <jdoc:include type='component' />
  74. <A HREF='java script:history.back()'><BR>wstecz</A>
  75.  
  76.  
  77.  
  78. </strong></div>
  79. </span>";
  80.  
  81. ?>
  82.  


co mam poprawić ? aby nadawcą była osoba która poda swój email ?
aMilk
$header = $email;
damianm2007
hmmm no niestety dalej jest
serwer@domena.pl
evolucja
Zamień linijkę 56 z skryptu http://forum.php.pl/index.php?s=&showt...st&p=768944
  1. $header = "";


na:
  1. $header = "From: ".$_POST['email'].";
erix
Cytat
co mam poprawić ? aby nadawcą była osoba która poda swój email ?

Podejrzewam, że to jedno z zabezpieczeń przed spamem. Nie możesz podać adresu, którego nie ma fizycznie na serwerze, a już tym bardziej, jak jest na innej domenie.

Wątpię, aby administrator to zmienił.
batman
Możesz oprócz podania nagłówka From, użyć piątego parametru funkcji mail i przełącznika -f. Szczegóły w manualu.
damianm2007
Cytat(evolucja @ 23.07.2010, 01:12:27 ) *
Zamień linijkę 56 z skryptu http://forum.php.pl/index.php?s=&showt...st&p=768944
  1. $header = "";


na:
  1. $header = "From: ".$_POST['email'].";


Nic nie dało też.
dg2001
A może użyj jakiejś klasy do wysyłania maili worriedsmiley.gif Ja tam korzystam z phpmailer rolleyes.gif
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.