gpt4 book ai didi

php - 如果 PHP 中的列为假,则运行 mysql 查询

转载 作者:行者123 更新时间:2023-11-28 23:43:41 25 4
gpt4 key购买 nike

如果第一个 mysql 查询返回 false 或设置为 false,我正在尝试显示 mysql 查询和一些 html 的结果。我已经尝试了一些东西,但我似乎无法让它正常工作,我将在下面显示代码。任何帮助深表感谢。在代码中,如果用户的确认为假,我只想显示站点消息,否则不显示任何内容。

function siteWideMessage()                                                                                                 
{
global $dbh;



$siteMessage = "";

$sUserInfo = $dbh->prepare("
SELECT acknowledgement
FROM user
WHERE uid = :uid
");
$sUserInfo->bindValue(":uid", $_SESSION["uid"]);
if ($sUserInfo->execute()) {
$res = $sUserInfo->fetch();
if ($res["acknowledgement"] = false) {
$stmt = $dbh->query("
SELECT message
FROM SiteWideMessages
ORDER BY idSiteWideMessages DESC
LIMIT 1
");
while ($row = $stmt->fetch()) {
$siteMessage .= "
<div class='siteMessage'>
<span>" . $row["message"] . "</span>
<br><br>
<span style='font-weight:normal;'>I acknowledge that I have read this important site message</span>
<br>
<input type='submit' name='submit' value='I Agree'></input>
</div>";
}
}
$sUserInfo->closeCursor();
}

if (isset($_POST["submit"])) {

$stmt = $dbh->prepare("
UPDATE user
SET `acknowledgement` = 'true'
WHERE uid = :uid
");
$stmt->bindValue(":uid", $_SESSION["uid"]);
if($stmt->execute()) {
$stmt->closeCursor();
}
}
return $siteMessage; }

更新:我设法让它按照我想要的方式工作,我只需按照以下步骤操作即可。

if ($res["acknowledgement"] == 'false')

感谢大家的帮助!

最佳答案

您的 if 语句中缺少 =。应该是:

...
if ($res["acknowledgement"] === false) {
...

关于php - 如果 PHP 中的列为假,则运行 mysql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33959285/

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