php中分页排序问题

来源:互联网 发布:最终消费支出数据 编辑:程序博客网 时间:2024/05/17 23:19

<style type="text/css">
 .submit_back{
 background:url("./images/fh.gif");
 width:60px;
 height:22px;
 border:0px;
 cursor:pointer;
 margin-top:3px;
}
</style>
<!--查询数据 -->
<table border="1">
 <tr align='center'><td>编号</td><td>词语</td><td>网址</td><td>时间</td><td>编辑</td></tr>
<?php
/*
 * Created on 2010-4-17
 *
 * Order by Kove Wong
 */
 $link=mysql_connect('localhost','root','123456');
 mysql_select_db('replace');
 mysql_query('set names gbk');

 $Page_size=16;

 $result=mysql_query('select * from phrase');
 $count = mysql_num_rows($result);
 $page_count  = ceil($count/$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);
 $sql="select * from phrase article order by id desc limit $offset,$Page_size";
 $result=mysql_query($sql,$link);
 while ($row=mysql_fetch_array($result)) {
?>
  <tr>
<td><div align="center"><?php echo $row['id']; ?></div></td>
 <td><div align="center"><?php echo $row['title']; ?></div></td>
 <td><div align="center"><?php echo $row['url']; ?></div></td>
 <td><div align="center"><?php echo $row['time']; ?></div></td>
 <td><a href=delete.php?id=<?php echo $row['id']; ?>>删除</a>|
 <a href=modify.php?id=<?php echo $row['id']; ?>>修改</a></td>
  </tr>

<?php
}
 $page_len = ($page_len%2)?$page_len:$pagelen+1;//页码个数
 $pageoffset = ($page_len-1)/2;//页码个数左右偏移量

 $key='<div class="page">';
 $key.="<span>$page/$pages</span>&nbsp;";   //第几页,共几页
 if($page!=1){
 $key.="<a href=/"".$_SERVER['PHP_SELF']."?page=1/">第一页</a> ";    //第一页
 $key.="<a href=/"".$_SERVER['PHP_SELF']."?page=".($page-1)."/">上一页</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 {
 $key.=" <a href=/"".$_SERVER['PHP_SELF']."?page=".$i."/">".$i."</a>";
 }
  }

  if($page!=$pages){
 $key.=" <a href=/"".$_SERVER['PHP_SELF']."?page=".($page+1)."/">下一页</a> ";//下一页
 $key.="<a href=/"".$_SERVER['PHP_SELF']."?page={$pages}/">最后一页</a>"; //最后一页
 }else {
 $key.="下一页 ";//下一页
 $key.="最后一页"; //最后一页
 }
 $key.='</div>';
?>
 <tr>
    <td colspan="5"><div align="center"><?php echo $key?></div></td>
  </tr>
</table>
<form action="index.html" method="post">
  <div class="config_save"><input type="submit" name="Submit" class="submit_back" value=""></div>
</form>

 

这是分页中排序的问题的sql语句 ===select * from phrase article order by id desc limit $offset,$Page_size===

原创粉丝点击