У меня есть файл mail.php:
<html> <body> <?php if (isset($_REQUEST['email'])) //if "email" is filled out, send email { //send email $email = $_REQUEST['email'] ; $subject = $_REQUEST['subject'] ; $message = $_REQUEST['message'] ; mail("syedsamiruddin29@gmail.com", $subject, $message, "From:" . $email); echo "Thank you for using our mail form"; } else //if "email" is not filled out, display the form { echo "<form method='post' action='mail.php'> Email: <input name='email' type='text' /><br /> Subject: <input name='subject' type='text' /><br /> Message:<br /> <textarea name='message' rows='15' cols='40'> </textarea><br /> <input type='submit' /> </form>"; } ?> </body> </html>
но когда я запускаю его. я получаю эту ошибку:
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.8.1\www\safepay247\mail.php on line 13 Thank you for using our mail form
то, что я пытаюсь сделать, – отправить электронное письмо на мой электронный идентификатор: syedsamiruddin29@gmail.com, используя php для электронной почты человека, написанного в типе ввода.
Я прошел через много видео, но никто не помог мне решить проблему php.ini.
Вам необходимо настроить свой SMTP-сервер в php.ini
.
Здесь перечислены директивы, которые необходимо изменить. Настройки должны предоставляться вашим хостинг-провайдером.
Но прежде чем мы опередим себя, просто быстрое предупреждение:
Вы отправляете электронное письмо, маскируясь как кто-то другой, установив Email в заголовке «from».
Для большинства SMTP-серверов требуется некоторая форма проверки подлинности, например, для отправки чего-либо с использованием SMTP-сервера gmail, мне нужно будет аутентифицироваться с моим именем пользователя и паролем.
Если электронное письмо в поле формы не соответствует имени пользователя для проверки подлинности, оно может быть отклонено сервером или оно может быть изменено, чтобы отобразить имя пользователя аутентификации. Наконец, это может плохо отразиться на фильтрах спама.
Мое предложение состоит в том, что вы отправляете электронное письмо с одной из ваших собственных учетных записей электронной почты, например (customerenquiry@yourdomain.com). Затем в теле сообщения введите адрес электронной почты клиента. Вы также можете настроить заголовок ответа на адрес электронной почты клиента, чтобы нажатие «отвечать на» в вашем почтовом клиенте автоматически помещало свой адрес электронной почты в поле «Кому».
Попробуй это:
Откройте php.ini
.
Найдите атрибут SMTP
в файле php.ini. Как правило, вы можете найти строку SMTP=localhost
. измените localhost на SMTP-сервер вашего провайдера. И установил порт 25.
SMTP = smtp.gmail.com #user your smtp address here smtp_port = 25
Перезапустите сервер apache или wamp или xammp. Что бы вы ни использовали.
Теперь попробуйте отправить почту с помощью функции mail ()