gpt4 book ai didi

php - fetch_assoc() 内的更新语句

转载 作者:行者123 更新时间:2023-11-29 11:56:32 25 4
gpt4 key购买 nike

我是一名 DBA,暂时担任自己的开发人员。我正在为培训系统上的一些自动电子邮件编写 PHP 模板,该模板将定期激励不活跃的学生。我认为更新中的 WHERE 语句仅影响当前记录,我遇到了问题。我可以通过删除 WHERE 语句来更新所有记录,但没有删除它。

任何人都可以看到我的错误吗?我的主要查询和邮件功能工作正常。

<?php

$link = mysqli_connect('localhost','xxx','xxx','xxx');

$result = mysqli_query($link, 'SELECT email1 FROM email_test WHERE last_login < (NOW() - INTERVAL 45 DAY) AND email_number=0');

if($result->num_rows >= 1){
$subject = "A test of the email CRON";
$message='It has been 45 days since your last login.';

while($row=$result->fetch_assoc()) {

$email="{$row['email1']}";

mysqli_query($link, 'UPDATE email_test SET email_number = 1, email_sent = NOW() WHERE email1=$email');

mail($email, $subject, $message); }
}
?>

最佳答案

您的报价需要修正:

mysqli_query($link, 'UPDATE email_test SET email_number = 1, email_sent = NOW() WHERE email1=$email');

应改为:

mysqli_query($link, "UPDATE email_test SET email_number = 1, email_sent = NOW() WHERE email1='$email'");

在 php 中,变量用双引号解析,而变量不用单引号解析。

关于php - fetch_assoc() 内的更新语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33114109/

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