[英]Mysqli_query returns FALSE without reason
我正在創建分頁腳本,由於某種原因mysqli_query返回FALSE。
$limit = "LIMIT " . ($pn - 1) * $itemsPerPage . "," . $itemsPerPage;
$sql = 'SELECT * FROM blogs ORDER BY BlogID DESC $limit';
$query2 = mysqli_query($connection, $sql);
當我回顯$ limit時,它返回0,2,所以LIMIT WORKS,當我回顯$ sql時,它返回:SELECT * FROM blogs ORDER BY BlogID DESC 0,2,由於某種原因,query2返回FALSE而不是true,因此我可以不在頁面上打印我想要的東西。
while($row = mysqli_fetch_array($query2)){
echo '<b style="font-size: 15pt; text-align: center">' . $row[3] . '</b><br/>
<p style="text-align: justify"> ' . $row[4] . ' </p> <hr>';
}
這是代碼的另一部分...我不知道為什么這行不通,因為行:SELECT * FROM blogs ORDER BY BlogID DESC 0,2在phpMA中起作用。
請幫忙!
發生$ sql變量沖突,對此進行更改,
$sql = 'SELECT * FROM blogs ORDER BY BlogID DESC $limit';
$query2 = mysqli_query($connection, $sql);
如
$sqlnew = 'SELECT * FROM blogs ORDER BY BlogID DESC '.$limit;
$query2 = mysqli_query($connection, $sqlnew);
$ limit不會轉換為變量的相應值
像這樣設置$ sql:
$sql = 'SELECT * FROM blogs ORDER BY BlogID DESC '.$limit;
您將$ limit變量放在''中,這意味着PHP不會解析它,因此查詢是錯誤的。
在http://php.net/manual/en/language.types.string.php#language.types.string.syntax.single上閱讀更多內容
更改
$sql = 'SELECT * FROM blogs ORDER BY BlogID DESC $limit';
至
$sql = "SELECT * FROM blogs ORDER BY BlogID DESC $limit";
它會工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.