gpt4 book ai didi

php - if 语句在 phpmailer 服务中不起作用

转载 作者:行者123 更新时间:2023-11-29 16:01:15 26 4
gpt4 key购买 nike

我正在设置一个 phpmailer 服务,在其中我只是向某些用户发送链接访问权限。该服务运作良好。当我设置 IF 语句但它不验证时,我的问题就出现了。我只是希望它可以进入 if 验证。进行的验证是当 $result=='s' 为 true 时,发送邮件,否则 ($result=='n'),不执行任何操作。

我对此错误进行了很多研究,显然没有找到解决方案。这是针对在 ionic 3 中构建的移动应用程序,在 Apache 服务器中使用 TypeScript 和 PHP 服务。我还使用到 MySQL 数据库的连接。

{
<?php

$postdata = file_get_contents("php://input");
$request = json_decode($postdata);
header('Content-type: application/json');
header("Access-Control-Allow-Origin: *");
header('Access-Control-Allow-Headers: X-Requested-With, content-type, access-control-allow-origin, access-control-allow-methods, access-control-allow-headers');

include('conecction.php');


use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require 'phpMailer/src/Exception.php';
require 'phpMailer/src/PHPMailer.php';
require 'phpMailer/src/SMTP.php';


$id =$request->id;


$counting = count($request->people);

for($i=0;$i<$counting ;$i++){

$name=$request->people[$i]->name;
$email=$request->people[$i]->mail;
$hash=md5($id.$email);

$sql="select assisted from assistance where mail= '$email' and idmeeting = '$id'";

$result = $conn->query($sql);

if($result == 's'){

$mail = new PHPMailer;

$mail->SMTPDebug = 4;

$mail->setFrom('noresponder@Prueba.com', 'Prueba MeetCoomeva');
$mail->addAddress($email, $name);


$mail->Subject = 'Subject';

$mail->Body = "Message Body "

}
if ($mail->send()) {
$response['message']="Sent.";
} else {
echo "Sending error: " . $mail->ErrorInfo;
}
}
echo json_encode($response);
?>
}

我希望服务在验证 $result=='s' 后撰写并发送邮件

我就这样得到了 500 服务器内部错误。我只是希望它在验证为真时发送邮件,或者在输入 else 时不执行任何操作。

最佳答案

这还不够:

$sql="select assisted from assistance where mail= '$email' and idmeeting = '$id'";

$result = $conn->query($sql);

if($result == 's'){

$result 包含 mysqli_result 的实例,不是一个简单的字符串,因此将其与 s 进行比较将永远不会匹配。您需要fetch the row首先从结果集中,如下所示:

$sql="select assisted from assistance where mail= '$email' and idmeeting = '$id'";

$result = $conn->query($sql);
$row = $result->fetch_row();

if($row[0] == 's'){

关于php - if 语句在 phpmailer 服务中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56194242/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com