【发布时间】:2013-09-17 09:54:35
【问题描述】:
我正在创建一个 Web 应用程序,并试图限制输入的结果数量。当我进行查询时,所有结果都会返回,但如果我在语句末尾放置 LIMIT 5,则不会结果回来了。这是我的代码:
$query = $conn->prepare('SELECT * FROM notifications WHERE (needs=:username OR worker=:username) ORDER BY CASE WHEN needs=:username THEN needsread ELSE workerread END, time DESC LIMIT 5');
$query->bindParam(':username', $username);
$query->execute();
echo "<div id='notes_title' style='background-color: #333333; padding: 10px; text-align: center; font-weight: lighter; letter-spacing: 1px;'>Notes</div>";
$te = 0;
while ($rows = $query->fetch()) {
$needs = $rows['needs'];
$id = $rows['ID'];
$worker = $rows['worker'];
$title = $rows['title'];
$needsread = $rows['needsread'];
$workerread = $rows['workerread'];
$time = $rows['time'];
$type = $rows['type'];
关于它为什么不起作用的任何线索?
【问题讨论】:
-
如果这是您拥有的实际代码,只需查看 SO 为所有内容分配的颜色。您错过了匹配的报价。脚本本身可能默默地失败了。查看 PHP 错误日志以获取更多详细信息。
-
@JustinWood 成功了,单引号在开头,双引号在结尾
-
否定他没有搞定。您对引号的看法是正确的,但这并没有解决 LIMIT 问题。