我使用phpmailer发送包含以下功能的电子邮件:
function send_email($address, $message){
$mail = new PHPMailer;
$mail->SMTPDebug = 3;
$mail->isSMTP();
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->Username = "name@gmail.com";
$mail->Password = "password";
$mail->SMTPSecure = "tls";
$mail->Port = 587;
$mail->From = "name@gmail.com";
$mail->FromName = "Name";
$mail->addAddress($address, "Cust. name");
$mail->isHTML(true);
$mail->Subject = "Nueva clave";
$mail->Body = "<i>".$message."</i>";
$mail->AltBody = "This is yout password.";
if($mail->send())
{
return true;
}else{
return false;
}
}
在我的php文件中,我以这种方式设置响应头:
header('Content-Type: application/json');
在需要处理的过程之后我以这种方式处理电子邮件:
if(send_email('customer@gmail.com', $message))
{
array_push($response, 'email sent');
array_push($response, $new_password);
echo json_encode(array('errors'=>$errors, 'response' => $response));
}
else
{
array_push($errors, 'email not send');
array_push($errors, $new_password);
echo json_encode(array('errors'=>$errors, 'response' => $response));
}
通常我期望来自服务器的响应如:Object [errors [],response []]就像我已经多次这样做了,但是我接受了这个作为答案 < / p>
为什么我收到此回复,是否需要任何其他未设置的配置。 感谢
答案 0 :(得分:5)
您在响应中包含调试输出,这是无效的JSON。只需这样就可以关闭它:
$mail->SMTPDebug = 0;