就是从一个页面传值过来到另一个页面去查询显示,在new.php页面上查询得出$nid,$ntype,然后以<a href="news_list.php?nid=<?=$nid;?> & ntype=<?=$ntype;?>">链接<a>传到new_list.php页面上去,然后再在new_list.php上以$result="select * from news where ntype='$ntype' and nid='$nid' limit $offset,$Page_size";查询得出$nword,$ntitle,$ndate.那么这样是没有问题的,现在是翻页,比如传过来的$nid是最前的或中间的或最末的,那么要翻页,怎么根据它来翻页。
不理解你的这句话,查出来的结果本就全部匹配$nid,怎么还有其它的?
那么在new_list.php上怎么做翻页,谢谢!这样理解不?
<a href="new_list.php?nid=<?=$nid;?>&ntype=<?=$ntype;?>&page=2">第二页<a>
$page = is_numeric($_GET['page']) ? $_GET['page'] : 1;$Page_size是每页显示的新闻条数,例如每页显示10条 $Page_size = 10
$offset = ($page - 1) * $Page_size;三两句也说不全,#3给的链接说的很细
$queryresult=$obj->exec($sqlnew);
$ggallrows=$obj->num_rows($queryresult);
$arrrow=$obj->fetch($queryresult);
$Page_size = 1;
$page_count = ceil($ggallrows/$Page_size);
$init='1';
$page_len='7';
$max_p=$page_count;
$pages=$page_count; //判断当前页码
if(empty($_GET['page'])||$_GET['page']<0){
$page=1;
}else {
$page=$_GET['page'];
}
$offset=$Page_size*($page-1);
$result="select * from news where ntype='$ntype' and nid='$nid' limit $offset,$Page_size";
$queryr=$obj->exec($result);
$i == 0;
while ($row=mysql_fetch_array($queryr)) {
$ntitlee=$row['ntitle'];
$nworde=$row['nword'];
$ndatee=$row['ndate'];
?>
<?
if($i%1==1){
?>
<tr>
<?
}
?>
<td>
这里是显示的所有内容
</td>
<?
if($i%1==1){
?>
</tr>
<?
}
?>
<?
$i++;
}
$page_len = ($page_len%2)?$page_len:$pagelen+1; //页码个数
$pageoffset = ($page_len-1)/2; //页码个数左右偏移量
$key='<div class="page">';
$key.="<span>$page/$pages</span> "; //第几页,共几页
if($page!=1){
$_GET['page']=1;
$key.="<a href=\"".$_SERVER['PHP_SELF']."?".(http_build_query($_GET))."\">首篇/a> "; //第一页
$_GET['page']=$page-1;
$key.="<a href=\"".$_SERVER['PHP_SELF']."?".(http_build_query($_GET))."\">上篇</a>"; //上一页
}else {
$key.="首篇";//第一页
$key.="上篇"; //上一页
}
if($pages>$page_len)
{ //如果当前页小于等于左偏移
if($page<=$pageoffset){
$init=1;
$max_p = $page_len;
}else
{ //如果当前页大于左偏移
//如果当前页码右偏移超出最大分页数
if($page+$pageoffset>=$pages+1){
$init = $pages-$page_len+1;
}else
{ //左右偏移都存在时的计算
$init = $page-$pageoffset;
$max_p = $page+$pageoffset;
}
}
}
for($i=$init;$i<=$max_p;$i++){
if($i==$page){
$key.=' <span>'.$i.'</span>';
} else {
$_GET['page'] = $i;
$key.=" <a href=\"".$_SERVER['PHP_SELF']."?".(http_build_query($_GET))."\">".$i."</a>";
}
}
if($page!=$pages && $pages!=0){
$_GET['page']=$page+1;
$key.="<a href=\"".$_SERVER['PHP_SELF']."?".(http_build_query($_GET))."\">下篇</a>"; //下一页
$_GET['page']=$pages;
$key.="<a href=\"".$_SERVER['PHP_SELF']."?".(http_build_query($_GET))."\">末篇</a>"; //最后一页
}else {
$key.="下篇";//下一页
$key.="末篇"; //最后一页
}
$key.='</div>';
?>
<tr>
<td height="14" style="text-align:center; font-size:12px; color: #7F0055;"><?=$key; ?></td>
</tr>
这样能看懂吗?麻烦啦!
显示不上内容? while ($row=mysql_fetch_array($queryr))里并没有输出查询结果的代码
$ntitlee=$row['ntitle'];
$nworde=$row['nword'];
$ndatee=$row['ndate'];
“<td>这里是显示的所有内容</td>”就是显示“<td><?=$ntitlee;?>“<td><?=$ntitlee;?>“<td><?=$ntitlee;?></td>”