我在发送和接收带有我的代码的电子邮件时遇到了一些问题。
当我在本地主机(XAMPP)上尝试此代码时,它说:电子邮件发送,但是当我查看邮件时,我没有收到邮件..有人可以帮忙吗?我的代码:
<?php
// $EmailFrom = "ME";
$EmailTo = "My_amail_adress";
$Subject = "My_subject";
$Name = stripslashes($_POST['Name']);
$Email = stripslashes($_POST['Email']);
$Message = stripslashes($_POST['Message']);
//setup the email
$Body = "";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Message: ";
$Body .= $Message;
$Body .= "\n";
$success = mail($EmailTo, $Subject, $Body); //"From: <$EmailFrom>"
if ($success) {
echo "Email send";
}
else{
echo "Error, please try again";
}
?>
您在本地主机中配置了SMTP服务器吗?
您可以使用sendmail软件包从localhost发送邮件,sendmail软件包在XAMPP中是内置的。因此,如果您使用的是XAMPP,则可以轻松地从本地主机发送邮件。
例如,您可以为gmail配置C:\ xampp \ php \ php.ini和c:\ xampp \ sendmail \ sendmail.ini以发送邮件。
在C:\ xampp \ php \ php.ini中,找到extension = php_openssl.dll并从该行的开头删除分号,以使SSL适用于localhost的gmail。
在php.ini文件中找到[邮件功能]并进行更改
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = [email protected]
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
现在打开C:\ xampp \ sendmail \ sendmail.ini。用以下代码替换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文件,并从本地主机发送邮件。
PS:不要忘记在上面的代码中替换my-gmail-id和my-gmail-password。另外,如果您从上方复制设置,请不要忘记删除重复的键。例如,如果在php.ini文件中还有另一个sendmail_path,则在以下行注释:sendmail_path =“ C:\ xampp \ mailtodisk \ mailtodisk.exe”
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句