原帖及讨论:http://bbs.bccn.net/thread-182585-1-1.html */ -------------------------------------------------------------------------------------- */ 出自: 编程中国 http://www.bccn.net */ 作者: adleyliu E-mail:adleyliu@163.com QQ:14339095 */ 时间: 2007-11-1 编程论坛首发 */ 声明: 尊重作者劳动,转载请保留本段文字 */ --------------------------------------------------------------------------------------
<?PHP #********************************************************* #文件名称: inc_funceion.php #功能描述: 通用数据查询及分页函数模块 #程序制作:留印(adleyliu) #联系qq :14339095 #联系邮箱:adleyliu@163.com #官方网站: http://www.115000.com.cn #copyright (c) 2007-2008 oblog.cn all rights reserved. #最后更新: 2007-10-30 #********************************************************* #********************************************************* #应用开始 #********************************************************* $yl_class = new yl_class(); $type_functionname='list_info_admin';//循环列表函数名(如果多样式可重新创建一个类或直接修改原有类中list_info_main_obj样式) $pageurl = 'admin_article_list.php?';//显示信息列表页如有分类,其它参数:'admin_article_list.php?nid='.$nid.'&' $action = $_POST['action'] ? $_POST['action'] : $_GET['action'];//提交可用于其它功能使用 $getpage = $_POST['page'] ? $_POST['page'] : $_GET['page'];//接收跳转页码 $pageumn = 30;//每页显示记示数 $selecttable = 'yl_info';//数据表 $selectwhere = 'where yl_sh=1';//查询条件 $selectstr = 'yl_id,yl_title,yl_adddate,';//需要查询字段 $orderbystr = 'yl_adddate desc';//排序规则 $yl_dbname = $dbname//数据库
$list_str = $yl_class->list_select ($type_functionname,$pageurl,$getpage,$pageumn,$selecttable,$selectwhere,$selectstr,$orderbystr,$yl_dbname); #********************************************************* #显示列表 #********************************************************* echo '<form name=myform methodpos action=>'; echo '<input name=action type=hidden id=action>'; echo $list_str; echo '</form>'; #********************************************************* #应用结束 #********************************************************* #********************************************************* #由于没有PHP环境效果看:印像新闻系统(asp版)www.115000.com.cn #********************************************************* /*分页样式表如何使用就不用我说了*/ /* .pageNum { CLEAR: both; WIDTH: '100%';PADDING-RIGHT: 5px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; PADDING-BOTTOM: 0px; OVERFLOW: hidden; COLOR: #6396D6; PADDING-TOP: 0px; HEIGHT: 25px; } .pageNum .num { FLOAT: right; } .pageNum .normal { BACKGROUND: #F7FBFF;COLOR: #6396D6; FLOAT: left; PADDING-BOTTOM: 2px; MARGIN: 0px 3px 0px 0px; PADDING-TOP: 3px;BORDER-LEFT: #6396D6 1px solid; BORDER-RIGHT: #6396D6 1px solid;PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BORDER-TOP: #6396D6 1px solid;BORDER-BOTTOM: #6396D6 1px solid; } .pageNum .dot { FLOAT: left;COLOR: #6396D6; } .pageNum A { BACKGROUND: #298AC6; COLOR: #fff; FLOAT: left; PADDING-BOTTOM: 2px; MARGIN: 0px 3px 0px 0px; PADDING-TOP: 3px;BORDER-LEFT: #6396D6 1px solid; BORDER-RIGHT: #6396D6 1px solid;PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BORDER-TOP: #6396D6 1px solid;BORDER-BOTTOM: #6396D6 1px solid; } .pageNum A:visited { COLOR: #fff; } .pageNum A:hover { BACKGROUND: #F7FBFF;COLOR: #6396D6;BORDER-LEFT: #6396D6 1px solid; BORDER-RIGHT: #6396D6 1px solid;BORDER-TOP: #6396D6 1px solid;BORDER-BOTTOM: #6396D6 1px solid; } */ #********************************************************* #下面两个类可以保存为一个文件 #********************************************************* class yl_class_sys { #********************************************************* #数据列表类以对象方式 #********************************************************* function list_info_main_obj($rs,$pagesize,$resultstr){ $leftline0='<div class=/'info_list info_line/'><ul>'; $list_info = $leftline0; $i = 0; while($rs = fetch_object($resultstr)){ $yl_id = $rs -> yl_id; $yl_ttle = $rs->yl_title; $yl_adddate = $rs->yl_adddate; $list_info .= '<li>'; $list_info .= '<span class=dater time>['; $list_info .= ''.$yl_adddate.''; $list_info .= ']</span>'; $list_info .= ''.$yl_ttle.''; $list_info .= '</li>'; if (($i % 5) == 0) { $leftline1='</ul></div><div class=blank3></div>'.$leftline0.''; $list_info .= $leftline1; } $i++; if ($i > $pagesize) break; else continue; } $list_info .= '</ul></div>'; return $this -> list_info_main_obj = $list_info; } #********************************************************* #分页导航 #********************************************************* function list_page($pageurl,$rsnum,$pages,$pagecount,$pagesize){ $pcount = $pages; $page_info = '<div class=pagenum>'; $page_info .= '<div class=num>'; if (($pcount > 1) && ($pcount == $pagecount) ){ $page_info .= '<a href = '.$pageurl.'page='.intval($pagecount-1).'>上一页</a>'; }elseif (($pagecount != 1) && ($pcount != $pagecount)){ $page_info .= '<a href = '.$pageurl.'page='.intval($pagecount-1).'>上一页</a>'; } $page_info .= '<a href = '.$pageurl.'page=1>页首</a>'; if ($pagecount > 4){ $page_info .= '<a href = '.$pageurl.'page=1>[1]</a><span class=dot>...</span>'; } if ($pcount > $pagecount+2){ $endpage = $pagecount+2; }else{ $endpage = $pcount; } for ($n = ($pagecount-2); $n <= $endpage; $n++){ if (!($n < 1)){ if ($n == intval($pagecount)){ $page_info .= '<span class=normal>'.$n.'</span>'; }else{ $page_info .= '<a href = '.$pageurl.'page='.$n.'>['.$n.']</a>'; } } } if ($pagecount+2 < $pcount){ $page_info .= '<span class=dot>...</span><a href='.$pageurl.'page='.$pcount.'>['.$pcount.']</a>'; } $page_info .= '<a href = '.$pageurl.'page='.$pcount.'>页尾</a>'; if (($pagecount == 1) && ($pcount != $pagecount) && ($pcount != 0)){ $page_info .= '<a href = '.$pageurl.'page='.intval($pagecount + 1).'>下一页</a>'; }else if (($pagecount != 1) && ($pcount != $pagecount)){ $page_info .= '<a href = '.$pageurl.'page='.intval($pagecount + 1).'>下一页</a>'; } $page_info .= '</div></div>';
$page_info .= '<div class=pagenum>'; $page_info .= '<div class=num><span class=normal> 共:'.$rsnum .'条/'.$pcount.'页 每页/'.$pagesize.'条</span></div>'; $page_info .= ' <div class=num>'; //echo '<form name=page action='.$pageurl.'>'; $page_info .= ' 转到'; $page_info .= '<input type=text name=page value=/'1/' class=login_left style=/'width:28px;height:18px;/'>'; $page_info .= '页<input type=submit name=submit3 class=login_left style=/'width:28px;height:18px;padding-top:1px;/' onclick=document.myform.action.value=/'go/'> '; //echo '</form>'; $page_info .= '</div>'; $page_info .= '</div>'; return $this -> list_page = $page_info; } } class yl_class{ #********************************************************* #数据查询类 #********************************************************* function list_select($type_functionname,$pageurl,$getpage,$pageumn,$selecttable,$selectwhere,$selectstr,$orderbystr,$yl_dbname) { $yl_class_sys = new yl_class_sys();
if ($pageumn == ''){ $pageumn = 10; } if ($selecttable == ''){ $selecttable='yl_info'; } if ($selectstr == ''){ $selectstr = '*'; } if ($orderbystr == ''){ $selectstr = 'yl_adddate desc'; } $sqlsrt = 'select '.$selectstr.' from '.$selecttable.' '.$selectwhere.' order by '.$orderbystr.''; $resultstr = db_query($yl_dbname,$sqlsrt); if (!$resultstr){ echo '很抱歉,查询失败.数据库可能在维护中,请稍后再试'; echo '<a href=admin_article_list.php><font color=red>返回</font></a>'; exit; } $rsnum = num_rows($resultstr); if ($rsnum == 0){ echo '暂无数据'; exit; } if ($getpage == ''){ $pagecount = 1; }else{ if (isset($getpage)){ $pagecount = intval($getpage); } } $pagesize = $pageumn; $pages = ceil($rsnum/$pagesize); if($rsnum != 0){ data_seek($resultstr,(($pagecount-1)*$pagesize));//移动内部结果指针 } $list_selectstr = $yl_class_sys -> $type_functionname($rs,$pagesize,$resultstr);//数据列表 $list_selectstr .= $yl_class_sys -> list_page($pageurl,$rsnum,$pages,$pagecount,$pagesize);//分页 return $this -> list_select = $list_selectstr; } } ?>
|