【发布时间】:2017-07-16 22:36:23
【问题描述】:
php.ini file
SMTP = smtp.gmail.com
smtp_port = 25
sendmail_from = tuhin.edru@gmail.com
sendmail_path="\"C:\xampp\sendmail\sendmail.exe\" -t"
sendmail.ini file
smtp_server=smtp.gmail.com
smtp_port=25
auth_username=tuhin.edru@gmail.com
auth_password=0123456789
force_sender=tuhin.edru@gmail.com
$dbhost="localhost";
$dbuser="root";
$dbpass="";
$dbname="sis";
$conn=mysqli_connect("$dbhost","$dbuser","$dbpass") or die("could not connect to mysql");
mysqli_select_db($conn,$dbname);
$username=$_POST['username'];
$email=$_POST['email'];
$password=$_POST['password'];
$q1=mysqli_query($conn,"insert into signup_tbl values('$username','$email','$password')");
if($q1)
{
ini_set("SMTP", "smtp.gmail.com");
$to = $email;
$subject = "Signup | Verification";
$message = " Its a message";
$header = "From: tuhin.edru@gmail.com";
$sentmail = mail($to, $subject, $message, $header);
if($sentmail)
{
echo "successfully sent"
}
}
输出:数据已上传到数据库,但无法发送电子邮件。显示错误消息说
警告:mail():无法在“smtp.gmail.com”端口 25 连接到邮件服务器,请验证 php.ini 中的“SMTP”和“smtp_port”设置或使用 ini_set()
我该如何解决这个问题?我已经尝试过端口:587 和 465 但没有改进。请帮我解决这个问题
【问题讨论】:
-
与您的问题没有真正的关系,但是:您正在将用户输入直接放入发送到 mysql(
"insert into signup_tb1 values('$username',...)") 的 SQL 查询中,因此您可能会遇到 SQL 注入攻击 -
auth_password=01913364536,您没有在问题中提供您的gmail帐户的真实密码,是吗?更新您的问题并尽快将其删除! -
不,这不是我的密码..@rajdeep
标签: php email phpmailer confirmation