用的数据库操作类,在本栏目中可找到。js跳转函数与本网的一样。
<?php class SqlitePage{ public function __construct() { $this->page_size='';//每页条数 $this->current_page='';//当前页 $this->total_record=0;//总记录数 $this->total_page='';//总页数 require_once 'database.class.php'; $database='data.db'; $this->db=new SQLite(dirname(__FILE__).'/'.$database); } function entrance($sql,$page_size){//sql中不包含limit page_size为每页显示条数 $this->page_size=$page_size; $this->total_record=$this->db->RecordCount($sql); $this->total_page=ceil($this->total_record/$this->page_size); if (!isset($_GET['page'])) { $this->current_page=1;//如果没有page,则设置为默认第一页 }else{ $this->current_page=$_GET['page']; }//if if($this->current_page>$this->total_page) {//当当前页数目大于总页数,则设置当前页数为总页数 $this->current_page=$this->total_page; } if($this->current_page<1) {//当当前页数目大于总页数,则设置当前页数为总页数 $this->current_page=1; } $tj=$this->tj.' limit '.$this->page_size.' offset '.($this->current_page-1)*$this->page_size; $result=$this->db->query($sql.$tj); return $result; }// function bar($tpl='') { $totalRecord=$this->total_record; $count = $this->get_total_page(); $page =$this->current_page; if(!$tpl){ $tpl = '[第'.$page.'页/共'.$count.'页,每页'.$this->page_size.'条,共有'.$totalRecord.'条记录]<a href=?reset>首页</a> <a href=?prve>上一页</a> <a href=?next>下一页</a> <a href=?end>尾页</a> <input type="text" id="pageGo" name="pageGo" /><input type="submit" name="pageSubmit" value="GO" onClick="newPage();" />'; } $d = array( 'reset' => 1, 'prve' => $page > 1 ? $page - 1 : 1, 'next' => $page < $count ? $page + 1 : $count, 'end' => $count, ); foreach($d as $k=>$v) { $_GET['page'] = $v; $tpl = str_replace($k, http_build_query($_GET), $tpl); } echo $tpl; }//bar public function get_total_page(){ return ceil($this->total_record/$this->page_size); } }//SqlitePage /* $page=new SqlitePage(); $res=$page->entrance('select * from article',3); foreach ($res as $key => $row) { echo $row['title'].'<br />'; } echo $page->bar(); */ ?>