2015-10-21 6 views
-1

, но всякий раз, когда я отправляю исполняемый файл, письмо не отправляется на мой gmail.отправка электронной почты php с gmail xampp не работает

Я уже изменил php.ini в xampp, в котором путь sendmail_ не начинается с ";".

В sendemail.ini я также изменил smtpp_server на smtp.gmail.com. а также smtp-порт до 587 (тоже пытался 465). наконец, я изменил имя auth_username и auth_password на мою электронную почту и pw. но код по-прежнему не работает.

я использую Windows 8

<?php 
mail('[email protected]', 'sample mail', 'sample content', 'From: [email protected]'); 
?> 

ответ

0

Вы должны настроить sendmail.ini следующим, если вы хотите отправить почту с локального хоста.

Вы можете отправлять почту с localhost с помощью пакета sendmail, sendmail пакет встроен в XAMPP. Поэтому, если вы используете XAMPP, вы можете легко отправлять почту с localhost.

например, вы можете настроить C:\xampp\php\php.ini и c:\xampp\sendmail\sendmail.ini для отправки почты по почте. в C:\xampp\php\php.ini найти extension=php_openssl.dll и удалить точку с запятой с начала этой строки, чтобы SSL работал для gmail для localhost.

в файле php.ini найти [mail function] и изменить

SMTP=smtp.gmail.com 
smtp_port=587 
sendmail_from = [email protected] 
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t" 

C:\xampp\sendmail\sendmail.ini Теперь Open. Заменить все существующие код в sendmail.ini со следующим кодом

[sendmail] 

smtp_server=smtp.gmail.com 
smtp_port=587 
error_logfile=error.log 
debug_logfile=debug.log 
[email protected] 
auth_password=my-gmail-password 
[email protected] 

Теперь вы сделали !! создайте файл php с функцией почты и отправьте почтой с localhost.

PS: не забыл заменить мой-Gmail-идентификатор и мой-Gmail-пароль в коде выше. Кроме того, не забудьте удалить дубликаты ключей, если вы скопировали настройки сверху. Например, комментарий следующую строку, если есть другой sendmail_path: sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe" в php.ini файл

Также не забудьте перезапустить сервер с помощью панели управления XAMMP так изменения вступили в силу.

+0

привет, после того, как я исполняю файл PHP с функцией почты. почта заканчивается в моей папке mailoutput в xampp. вы знаете, как это исправить? –

0

Необходимо настроить SMTP. C:\xampp\sendmail\sendmail.ini и C:\xampp\php\php.ini

Кроме того, вы можете использовать PHPMailer легко:

<?php 
require 'PHPMailerAutoload.php'; 

$mail = new PHPMailer; 

//$mail->SMTPDebug = 3;        // Enable verbose debug output 

$mail->isSMTP();          // Set mailer to use SMTP 
$mail->Host = 'smtp1.example.com;smtp2.example.com'; // Specify main and backup SMTP servers 
$mail->SMTPAuth = true;        // Enable SMTP authentication 
$mail->Username = '[email protected]';     // SMTP username 
$mail->Password = 'secret';       // SMTP password 
$mail->SMTPSecure = 'tls';       // Enable TLS encryption, `ssl` also accepted 
$mail->Port = 587;         // TCP port to connect to 

$mail->setFrom('[email protected]', 'Mailer'); 
$mail->addAddress('[email protected]', 'Joe User');  // Add a recipient 
$mail->addAddress('[email protected]');    // Name is optional 
$mail->addReplyTo('[email protected]', 'Information'); 
$mail->addCC('[email protected]'); 
$mail->addBCC('[email protected]'); 

$mail->isHTML(true);         // Set email format to HTML 

$mail->Subject = 'Here is the subject'; 
$mail->Body = 'This is the HTML message body <b>in bold!</b>'; 
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; 

if(!$mail->send()) { 
    echo 'Message could not be sent.'; 
    echo 'Mailer Error: ' . $mail->ErrorInfo; 
} else { 
    echo 'Message has been sent'; 
} 
Смежные вопросы