你好我正面臨着我的分頁系統的問題,如果我列出了mysql表中的結果,它工作正常,但萬一如果我在SQL中添加一些條件查詢類似於「AND」這一列「AND」其他列的腳本會在第一頁正確顯示結果,當我選擇第二頁而不是顯示第二部分結果時,從第26頁開始,它正在開始新的分頁並顯示從查詢中添加沒有contions的開始的所有內容。這裏是分頁與查詢代碼:當添加不同的sql查詢條件時,分頁Php不工作
//This gets all the other information from the form
$ciudad=$_POST['ciudad'];
$tipo=$_POST['tipo'];
$con=mysqli_connect();
// Check connection
$sql = "SELECT * FROM cursos WHERE 1";
if (!empty($ciudad)) {
$sql .= " AND ciudad = '$ciudad' ";
}
if (!empty($tipo)) {
$sql .= " AND tipo= '$tipo' ";
}
if (!$result = mysqli_query($con,$sql))
{
die("Error: " . mysqli_error($con));
}
$per_page =25;//define how many games for a page
$count = mysqli_num_rows($result);
$pages = ceil($count/$per_page);
if(!isset($_GET['page']) || $_GET['page']=="") {
$page="1";
} else {
$page=$_GET['page'];
}
$start = ($page - 1) * $per_page;
$sql = "SELECT * FROM cursos WHERE 1 LIMIT $start,$per_page";
?>
這是生成的網頁鏈接的代碼:
<?php
//Show page links
for ($i = 1; $i <= $pages; $i++)
{?>
<li id="<?php echo $i;?>"><a href="search_cursos.php?page=<?php echo $i;?>"><?php echo $i;?></a></li>
<?php
}
?>
打印選擇並在控制檯中手動探測 – ZiTAL
您當前的代碼容易受到SQL注入攻擊。您可能想要查看準備好的語句,而不是:http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php – PeeHaa
此頁面是在sevrer受保護的目錄中,所以只有誰將能夠看到它將是管理員。所以不用擔心SQL注入附加,感謝評論的方式 –