Я установил easyphp и пытаюсь отправить электронное письмо со своего компьютера (сервера).
Мой код PHP:
<?php
$message = "Line 1\nLine 2\nLine 3";
$headers = "From: sender@example.com\r\n";
mail('receiver@metu.edu', 'My Subject', $message, $headers);
?>
Сообщение об ошибке:
Warning: mail() [function.mail]: Failed to connect to mailserver at "127.0.0.1" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\Program Files\EasyPHP-5.3.3.1\www\email.php on line 9
Теперь мне нужно установить почтовый сервер? Это обязательно?
Изменить: я не думаю, что мой интернет-провайдер позволит мне отправлять электронные письма со своих серверов.
Ну, вам нужно установить почтовый сервер или настроить его для использования уже существующего. Из easyPHP часто задаваемые вопросы:
Функция "mail" из PHP возвращает ошибку (0)! Вам необходимо заменить эту строку: SMTP = "localhost" в конфигурационном файле PHP (php.ini) на SMTP = "mail.isp.com", где mail.isp.com обозначает почтовый сервер вашего интернет-провайдера.
Вы, вероятно, также найдете точку номер 6 Вот быть полезным.
По умолчанию PHP будет пытаться отправить через локальный SMTP-сервер, что он и пытается сделать здесь.
Что вам нужно сделать, так это отредактировать свой php.ini
файл и найдите SMTP
вариант. Измените его, чтобы он читался примерно так: -
SMTP = your.isp.mailserver.com
sendmail_from = sender@example.com
Запись в FAQ 55 на EasyPHP FAQ расскажет, как это сделать для EasyPHP.