phpmailer 在 slim 中返回响应 null
phpmailer returning response null in slim
我正在使用 slim 框架为 android app.In CreateUser api 创建 api,我正在使用 phpmailer.Phpmailer 向用户发送邮件是完美地向用户发送邮件,但我的数组响应返回空数组响应,因为 it.When 我删除了 phpmailer 响应的代码是正确的,当我添加它时,它生成空响应。
这是我在 Dbhandler.php 中的代码:
$app->post('/requestPreview', function() use ($app) {
verifyRequiredParams(array('fname', 'lname', 'email','event_code','app_version'));
global $user_id;
$response = array();
$fname = urldecode($app->request->post('fname'));
$lname = urldecode($app->request->post('lname'));
$email = urldecode($app->request->post('email'));
$event_code = urldecode($app->request->post('event_code'));
$app_version = urldecode($app->request->post('app_version'));
$db = new DbHandler();
//$db->sendmail($email);
$res = $db->signup($fname, $lname, $email,$event_code,$app_version);
if ($res['status']=="one") {
//$password=$res['password'];
$response["event_code"] = $event_code;
$response["email"] = $email;
$response["fname"] =$fname;
$response["lname"] = $lname;
$response["CreateUser"] = true;
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug = 2;
$mail->Debugoutput = 'html';
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->Username = "abc.abc@gmail.com";
$mail->Password = "***********";
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
$mail->From = "abc.abc@gmail.com";
$mail->AddAddress($email);
$mail->isHTML(true);
$mail->Subject = "Welcome to www.abc.com .Your Account has been created and your password is:";
$mail->Body = "Welcome to www.abc.com .Your Account has been created and your password is:";
$mail->send();
} else if ($res['status']=="two"){
$response["error"] ="already_in_system";
$response["fname"] = null;
$response["lname"] = null;
}
echoRespnse(200, $response);
});
更新至 latest PHPMailer and base your code on an up to date example, then read the troubleshooting docs。您很可能 运行 陷入 Google 身份验证问题。
您的 PHPMailer 代码从未触及 $response
,这表明它可能由于错误而过早退出,因此请跟踪您的函数中发生的情况。
我正在使用 slim 框架为 android app.In CreateUser api 创建 api,我正在使用 phpmailer.Phpmailer 向用户发送邮件是完美地向用户发送邮件,但我的数组响应返回空数组响应,因为 it.When 我删除了 phpmailer 响应的代码是正确的,当我添加它时,它生成空响应。
这是我在 Dbhandler.php 中的代码:
$app->post('/requestPreview', function() use ($app) {
verifyRequiredParams(array('fname', 'lname', 'email','event_code','app_version'));
global $user_id;
$response = array();
$fname = urldecode($app->request->post('fname'));
$lname = urldecode($app->request->post('lname'));
$email = urldecode($app->request->post('email'));
$event_code = urldecode($app->request->post('event_code'));
$app_version = urldecode($app->request->post('app_version'));
$db = new DbHandler();
//$db->sendmail($email);
$res = $db->signup($fname, $lname, $email,$event_code,$app_version);
if ($res['status']=="one") {
//$password=$res['password'];
$response["event_code"] = $event_code;
$response["email"] = $email;
$response["fname"] =$fname;
$response["lname"] = $lname;
$response["CreateUser"] = true;
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug = 2;
$mail->Debugoutput = 'html';
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->Username = "abc.abc@gmail.com";
$mail->Password = "***********";
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
$mail->From = "abc.abc@gmail.com";
$mail->AddAddress($email);
$mail->isHTML(true);
$mail->Subject = "Welcome to www.abc.com .Your Account has been created and your password is:";
$mail->Body = "Welcome to www.abc.com .Your Account has been created and your password is:";
$mail->send();
} else if ($res['status']=="two"){
$response["error"] ="already_in_system";
$response["fname"] = null;
$response["lname"] = null;
}
echoRespnse(200, $response);
});
更新至 latest PHPMailer and base your code on an up to date example, then read the troubleshooting docs。您很可能 运行 陷入 Google 身份验证问题。
您的 PHPMailer 代码从未触及 $response
,这表明它可能由于错误而过早退出,因此请跟踪您的函数中发生的情况。