gpt4 book ai didi

php - 即使我更改参数,查询结果也是相同的

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

我有一个查询,用于获取比给定时间戳更新的结果。它应该找到给定用户发送和接收的所有较新的消息。问题是,无论我将时间戳参数更改为什么,甚至将其更改为“g”,我仍然得到 4 个结果。时间戳似乎没有改变我的查询。在表中,时间戳是 int(11)。我尝试使用 intval 并将绑定(bind)值定义为参数 int 但仍然没有成功。有什么想法吗?

$sql = 'SELECT timestamp, user, message, receiver, convo_id
FROM chatbox
WHERE user = ?
OR receiver = ?
AND timestamp = ?
ORDER BY timestamp DESC';

$stmt = $conn->prepare($sql);
$stmt->bindValue(1,'username');
$stmt->bindValue(2,'username');
$stmt->bindValue(3,'g');
$stmt->execute();

最佳答案

我怀疑这是你的 where 子句中 AND 和 OR 的优先级。尝试使用括号:

WHERE ( user = ? OR receiver = ?  )
AND timestamp = ?

假设这就是您所需要的。

关于php - 即使我更改参数,查询结果也是相同的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6133892/

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