繁体   English   中英

'mail(): "sendmail_from" 未在 php.ini 中设置或自定义 "From:" 标题丢失' 错误

[英]'mail(): "sendmail_from" not set in php.ini or custom "From:" header missing' error

我正在尝试使用 Xampp 服务器从本地主机发送邮件。 我按照下面的 php.ini 文件更改了 php.ini 和 sendmail.ini 文件

配置文件

SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = myGmailId@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

发送邮件文件

smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=myGmailId@gmail.com
auth_password=my-Gmail-Password
force_sender=myGmailId@gmail.com(optional)

邮件.php

function db_forgot_password($args){

  $to = $args['email'];  
  $query = "SELECT id FROM tbl_contact WHERE contact = '$to'";
  $result = db_execute($query);
  $contact_id = $result['0']['id'];

  $query = "SELECT user FROM tbl_user_contact WHERE contact = '$contact_id'";
  $result = db_execute($query);
  $user_id = $result['0']['user'];

  if(isset($user_id)){

  $password = 'test123';
  $subject = "Your Recovered Password";

  $query = "SELECT id FROM tbl_login WHERE user = '$user_id'";
  $result = db_execute($query);
  $login_id = $result['0']['id'];

  $query = "UPDATE tbl_login_para SET val = sha1('$password') where para = 1 AND login = '$login_id'";
  $result = db_execute($query);

  $message = "Please use this password to login " . $password;

  if (mail($to,$subject,$message,"From : my@gmail.com")) {
    echo "Email successfully sent to $to_email...";
  } else {
    echo "Email sending failed...";
  }

  succ_return($args);
  }else{
    warn(__FILE__, __FUNCTION__, __LINE__, 'email doesn\'t exist');
    fail_return(ERR_UNAVAILABLE_USERS);
  }
}

当我执行这个 API 时,它给了我

<b>Warning</b>: mail(): &quot;sendmail_from&quot; not set in php.ini or custom &quot;From:&quot; header missing

我应该如何解决这个问题? 提前致谢

当您从 xampp 服务器发送电子邮件时,您需要添加一个有效的电子邮件地址

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM