Я использую последний WAMP, и я получаю это, когда пытаюсь отправить электронные письма:
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\main\createaccount.php on line 8
Ошибка доставки сообщений …
Сообщение:
$to = "xxx@hotmail.com"; $subject = "Hi!"; $body = "Hi,\n\nHow are you?"; if (mail($to, $subject, $body)) { echo("<p>Message successfully sent!</p>"); } else { echo("<p>Message delivery failed...</p>"); }
Вам также нужно скачать «почтовый сервер»?
Пожалуйста помоги.
Это работает для меня и должно работать на вас: используйте Fake Sendmail и почтовый сервер веб-хостинга (например, Godaddy, 1and1 и т. Д.).
1.) Загрузите почтовый ящик sendmail и извлеките его в C: \ Wamp \ bin \ sendmail (для целей этого примера).
2.) Измените C: \ wamp \ bin \ sendmail \ sendmail.ini и установите следующие требования к вашему почтовому серверу (мои ниже):
smtp_server=mail.yourdomain.com smtp_port=26 smtp_ssl=none ;default_domain=yourdomain.com auth_username=smtpuser@yourdomain.com auth_password=smtppassword ;pop3_server= ;pop3_username= ;pop3_password= ;force_sender= ;force_recipient=
3.) Задайте путь для sendmail.exe в файле php.ini.
[mail function] ; For Win32 only. SMTP = ; For Win32 only. sendmail_from = ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). sendmail_path = "C:\wamp\bin\sendmail\sendmail.exe -t"
4.) Перезапустите Wampserver.
У вас может быть успех с помощью Gmail, но есть несколько дополнительных настроек, чтобы заставить его работать. Я предпочитаю использовать почтовый сервер веб-хостинга, где я загружаю свой код.
У вас не запущен сервер smtp на вашем компьютере, но вам это не нужно. Просто установите SMTP на открытый SMTP-сервер, например:
ini_set('SMTP', 'smtp.yourisp.com');
Взгляните на домашнюю страницу своего интернет-провайдера или http://www.e-eeasy.com/SMTPServerList.aspx для списка SMTP-серверов.
Если у вас есть почтовая программа для настольных компьютеров, вы можете использовать тот же адрес, что и для исходящей почты.
Я думаю, что сервер исходящей почты вашего почтового сервера (SMTP) не настроен в вашем файле php.ini.
Посмотри на это:
Также hotmail не позволяет использовать свои почтовые серверы. Вы должны использовать yahoo или gmail.
Вы уверены, что на этих серверах установлена почтовая программа? Если нет, это ваша проблема. Например, XAMPP поставляется с почтовой программой Mercury, которую вы должны запустить, прежде чем отправлять почту через сервер.
Следуйте этой статье, она работает, если у вас есть учетная запись gmail. или, по крайней мере, любую учетную запись электронной почты, в которой вы знаете сервер, порт и этот материал.
Отправить письмо с localhost
ХРАНИТЕ В РАЗУМ, каждый раз, после изменения php.ini,
ps в php.ini, я использовал:
SMTP = localhost smtp_port = 25 sendmail_from = your_user@gmail.com
или если oyu cant отредактирует php.ini, попробуйте вставить эти строки в свой php-скрипт.
ini_set("SMTP", "localhost"); ini_set("smtp_port", "25"); ini_set("sendmail_from", "your_user@gmail.com");