Я настроил параметры php.ini и sendmail, как указано другими людьми, однако я все еще не могу отправлять какие-либо письма с локального хоста, используя функцию mail() в PHP.
Это моя настройка php.ini [mail function]
[mail function]
; XAMPP: Comment out this if you want to work with an SMTP Server like Mercury
; SMTP = localhost
; smtp_port = 25
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
;sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
and this is my sendmail.ini settings
smtp_server=smtp.gmail.com
; smtp port (normally 25)
smtp_port=587
smtp_ssl=tls
error_logfile=error.log
auth_username= [email protected]
auth_password= examplepassword
Моя операционная система - это Windows 8. И я новичок в PHP или любом программировании на стороне сервера.
Было бы очень полезно, если бы вы все могли мне помочь, возможно, пришлите правильную настройку и т.д. Спасибо, ребята: D :)
Вы можете использовать phpMailer
, намного проще и отлично работать.
вам нужно будет загрузить эти два файла и поместить их в один и тот же каталог:
то вам необходимо class.phpmailer.php
/включить class.phpmailer.php
// change the path of the file
require_once("_path_to/class.phpmailer.php");
после этого вам нужно будет настроить параметры функции phpMailer()
:
Примечание: Вы должны будете предоставить действительный адрес электронной почты, перейдя в вашей области с-панели и создание электронной почты с паролем затем добавить их в следующей конфигурации, или вы можете использовать Gmail
в качестве host
, email
, password
вместо электронной почты, если у вас нет хоста или домена, но в этом случае $mail->Port
будет портом Gmail
может быть, он 465
а $mail->SMTPSecure
будет ssl
.
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug = 1;
$mail->SMTPAuth = true;
$mail->SMTPSecure = "http";
$mail->Host = "your webmail host domain"; // ex. [email protected]
$mail->Port = 25;
$mail->Username = "sender email goes here"; // ex. [email protected]
$mail->Password = "sender email password goes here";
$webmaster_email = "sender email goes here"; // ex. [email protected]
$mail->From = $webmaster_email;
$mail->FromName = "sender name goes here"; // ex. John Doe
$mail->AddAddress($email);
$mail->AddReplyTo($webmaster_email);
$mail->IsHTML(true);
$mail->Subject = "your message subject goes here";
$mail->Body = 'your message body goes here'; // take a look on google, how to send html email body
if(!$mail->Send())
{
echo 'An error occurred, Please try again later';
}else {
echo 'Email Sent!';
}
Затем вы можете использовать его в любом месте, в любое время, в localhost
/webserver
.