Php 分页的第二页显示所有结果
这件事已经纠缠了好几个小时了。 我这里有一个简单的(我认为)分页PHP代码,可以很好地用于第一个页面,这意味着我可以获得正确的页面显示量和正确的结果显示。代码:Php 分页的第二页显示所有结果,php,pagination,Php,Pagination,这件事已经纠缠了好几个小时了。 我这里有一个简单的(我认为)分页PHP代码,可以很好地用于第一个页面,这意味着我可以获得正确的页面显示量和正确的结果显示。代码: <?php $query = $_POST ['query']; $link=mysql_connect('localhost','root','root'); mysql_select_db("asset_catalog",$link); $q=("SELECT COUNT(*) \"total\" FROM asset
<?php
$query = $_POST ['query'];
$link=mysql_connect('localhost','root','root');
mysql_select_db("asset_catalog",$link);
$q=("SELECT COUNT(*) \"total\" FROM assets WHERE Description LIKE '%$query%' OR Manufacturer LIKE '%$query%'");
$ros=mysql_query($q,$link) or die(mysqli_error());
$row=mysql_fetch_array($ros);
$total=$row['total'];
$dis=15;
$total_page=ceil($total/$dis);
$page_cur=(isset($_GET['page']))?$_GET['page']:1;
$k=($page_cur-1)*$dis;
$q=("SELECT * FROM assets WHERE Description LIKE '%$query%' OR Manufacturer LIKE '%$query%' limit $k,$dis");
$ros=mysql_query($q,$link);
echo "<table border='0'>
<tr>
</tr>";
while($row=mysql_fetch_array($ros))
{
if (($i % 5) == 0) echo "<tr>";
echo "<td><img src='".$row['Image']."' id='queryimg'><br>
<a href='details.php?ID=".$row['ID']."' style='color: #fff;'>{$row[Description]}</a></td>";
if (($i % 5) == 4) echo "</tr>";
$i++;
}
if ( $i > 0 && ($i-1) % 3 < 2) echo "</tr>";
echo "</table>";
?>
<div style="position: absolute; left: 320px;">
<?php
if($page_cur>1)
{
echo '<a href="pagination.php?page='.($page_cur-1).'" style="cursor:pointer;color:green;" ><input style="cursor:pointer;background-color:green;border:1px black solid;border-radius:5px;width:120px;height:30px;color:white;font-size:15px;font-weight:bold;" type="button" value=" Previous "></a>';
}
else
{
echo '<input style="background-color:green;border:1px black solid;border-radius:5px;width:120px;height:30px;color:black;font-size:15px;font-weight:bold;" type="button" value=" Previous ">';
}
for($i=1;$i<$total_page;$i++)
{
if($page_cur==$i)
{
echo ' <input style="background-color:green;border:2px black solid;border-radius:5px;width:30px;height:30px;color:black;font-size:15px;font-weight:bold;" type="button" value="'.$i.'"> ';
}
else
{
echo '<a href="pagination.php?page='.$i.'"> <input style="cursor:pointer;background-color:green;border:1px black solid;border-radius:5px;width:30px;height:30px;color:white;font-size:15px;font-weight:bold;" type="button" value="'.$i.'"> </a>';
}
}
if($page_cur<$total_page)
{
echo '<a href="pagination.php?page='.($page_cur+1).'"><input style="cursor:pointer;background-color:green;border:1px black solid;border-radius:5px;width:90px;height:30px;color:white;font-size:15px;font-weight:bold;" type="button" value=" Next "></a>';
}
else
{
echo '<input style="background-color:green;border:1px black solid;border-radius:5px;width:90px;height:30px;color:black;font-size:15px;font-weight:bold;" type="button" value=" Next ">';
}?>
在页面之间,您会丢失您的$\u POST['query']
而不是
$query = $_POST ['query'];
做
或使用
$query = $_REQUEST['query'];
及
在分页链接中,替换
'<a href="pagination.php?page='.($page_cur-1).'" style
屋大维:非常感谢!成功了。非常感谢!还有很多东西要学,但很高兴有论坛来寻找答案。再次感谢!尝试使用MySQLi,因为MySQL扩展已被弃用,将来将被删除。在mysqli\u real\u escape\u string()的SQL查询中使用$query变量之前,还要对其进行转义。我还建议使用框架,分页、转义和数据库平台切换对于Codeigniter、Laravel等框架来说都是琐碎的任务。你知道,我尝试过MySQLi,但它不起作用。MySQL的一切都很好,但一旦我将其更改为MySQLi扩展,它就不起作用了。我很困惑。
'<a href="pagination.php?page='.($page_cur-1).'" style
'<a href="pagination.php?page='.($page_cur-1).'&query='.$query.'" style