我做了這個PHP腳本,我試着讓它到下一個和previus行返回,但有一個問題,當我輸入我的身份證腳本例如返回不同的東西:MySQL的未來和prev記錄問題
這是我的DB
ID String
1 Test 1
2 Test 2
3 Test 3
4 Test 4
所以,如果我把這個./index.php?id=1返回ID = 2,ID = 2 => ID = 3等等... 我的問題的結果是如何解決它返回準確的結果不+1。我嘗試了< =或=>運算符,結果是正確的,但我的鏈接不起作用。
這裏是腳本
<?php
if(isset($_GET['id']))
{
$id = (int)$_GET['id'];
}else
{
$id = 0;
}
$stmt1 = $db->prepare("SELECT * FROM records WHERE id > ? ORDER BY id ASC LIMIT 1");
$stmt1->bindValue(1,$id);
$stmt1->execute();
$row = $stmt1->fetch();
$stmt2 = $db->prepare("SELECT * FROM records WHERE id < ? ORDER BY id DESC LIMIT 1");
$stmt2->bindValue(1,$id);
$stmt2->execute();
$row = $stmt2->fetch();
echo $row['id'];
echo "<br/>";
echo $row['string'];
?>
你難道不想擁有2作爲下一個ID爲1?它有什麼問題? –
如果你把ID = 1它返回ID = 2的詳細信息,所以ID = 0返回ID = 1的細節 –