2013-03-14 20 views
6

Chcę wysłać wiadomość e-mail z mojego kodu PHP, ale otrzymałem komunikat ostrzegawczy. Jakie są więc parametry php.ini do ustawienia?Jakie są parametry php.ini do ustawienia wysyłania wiadomości e-mail?

+1

Co oznaczają komunikaty ostrzegawcze? –

+0

Przejdź przez http://php.net/manual/en/function.mail.php –

+0

ostrzeżenie: '[14-mar-2013 09:52:42] PHP Ostrzeżenie: mail() [function.mail]: Nie powiodło się podłączyć do serwera pocztowego na " localhost " portu 25, zweryfikować " SMTP " i " smtp_port " ustawienia w php.ini lub użyj ini_set() w C: \ wamp \ www \ MP_Local \ lib \ mail.lib.php on line 99' – pheromix

Odpowiedz

9

Aby sprawdzić/zmienić konfigurację poczty PHP:

Otwórz plik php.ini (jeśli nie wiem, gdzie to jest, patrz niżej) Szukaj linii, która brzmi [funkcja mail] Dodaj/zmień szczegóły swojego serwera pocztowego. Może to być lokalny serwer pocztowy lub serwer poczty Twojego usługodawcy internetowego. Save/zamknij plik php.ini Zrestartuj serwer WWW

przykładem tego, co ustawienia poczty może wyglądać przy pierwszym otwarciu pliku php.ini:

[mail function] 
; For Win32 only. 
SMTP = localhost 
smtp_port = 25 

; For Win32 only. 
;sendmail_from = [email protected] 

; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). 
;sendmail_path = 

Dodatkowe info jest w echo phpinfo() możesz wyświetlić szczegóły konfiguracji PHP. Możesz to zrobić, tworząc plik .php z następującym wierszem: <?php phpinfo(); ?>. Po uruchomieniu tego w przeglądarce zobaczysz pełną listę zmiennych konfiguracyjnych PHP. Po prostu wyszukaj wiersze zawierające php.ini i sendmail_path, aby zobaczyć wartości, których potrzebujesz.

Innym pomysłem jest, można użyć ini_set() prawidłowo config ustawienia poczty jak ten

Dodaj poniższy kod na początku skryptu email jeśli skrypt poczty nadal kończy się niepowodzeniem.

// Please specify your Mail Server - Example: mail.example.com. 
ini_set("SMTP","mail.example.com"); 

// Please specify an SMTP Number 25 and 8889 are valid SMTP Ports. 
ini_set("smtp_port","25"); 

// Please specify the return address to use 
ini_set('sendmail_from', '[email protected]'); 
+0

Tak naprawdę to problem polega na tym, że WINDOWS nie jest dostarczany z serwerem pocztowym. Musisz zainstalować jeden, aby wykonać send(), a także zmienić niektóre parametry konfiguracyjne. – RiggsFolly

Powiązane problemy