我知道的通用主题。很难在一个主题中具体化。无论如何我对这个sql逻辑有问题:
"SELECT * FROM imagecomment WHERE filename = :filename ORDER BY comment_timestamp DESC LIMIT '$min', '$max'";
当我尝试相同的逻辑但直接在sql逻辑中使用整数时,它可以工作。变量min和max是整数:
INT(10) int(20)我在var_dump()时得到这个。我也尝试将变量(我通常这样做)绑定到变量(),但它仍然无效。
答案 0 :(得分:5)
你在PDOStatement中使用它,对吗? (因为你正在使用:filename)
$db = new PDO(); //assume you have this set
$stmt = $db->prepare(
"SELECT *
FROM imagecomment
WHERE filename = :filename
ORDER BY comment_timestamp
DESC LIMIT :min, :max";
$stmt->bindValue(':filename', $filename);
$stmt->bindValue(':min', $min);
$stmt->bindValue(':max', $max);
$stmt->execute();
$stmt = $db->prepare(
"SELECT *
FROM imagecomment
WHERE filename = :filename
ORDER BY comment_timestamp
DESC LIMIT :min, :max";
$stmt->bindValue(':filename', $filename);
$stmt->bindValue(':min', $min);
$stmt->bindValue(':max', $max);
$stmt->execute();
你应该能够获取你的结果,如果这不起作用,请告诉我你从PDOStatement得到的错误。
答案 1 :(得分:4)
"SELECT * FROM imagecomment
WHERE filename = :filename ORDER BY comment_timestamp DESC LIMIT $min, $max";