| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3296 人关注过本帖, 2 人收藏
标题:[原创]通用数据查询及分页函数模块
只看楼主 加入收藏
adleyliu
Rank: 1
等 级:新手上路
帖 子:146
专家分:0
注 册:2005-5-8
收藏(2)
 问题点数:0 回复次数:3 
[原创]通用数据查询及分页函数模块

*/ --------------------------------------------------------------------------------------
*/ 出自: 编程中国 http://www.bc-cn.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 115000.com.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;
}

}


?>



[此贴子已经被作者于2007-11-12 9:19:09编辑过]

搜索更多相关主题的帖子: 模块 函数 数据 中国 adleyliu 
2007-11-01 16:49
adleyliu
Rank: 1
等 级:新手上路
帖 子:146
专家分:0
注 册:2005-5-8
收藏
得分:0 

补充:如果使用MYSQL数据库

<?PHP
function connect($yl_host,$yl_user,$yl_pass) {
return @mysql_connect($yl_host,$yl_user,$yl_pass);
}
function select_db($dbname,$yl_conn) {
return @mysql_select_db($dbname,$yl_conn);
}
function db_query($dbname,$sqlstr) {
return @mysql_db_query($dbname,$sqlstr);
}
function fetch_array($query, $result_type = MYSQL_ASSOC) {
return mysql_fetch_array($query, $result_type);
}
function fetch_object($query, $result_type = MYSQL_ASSOC) {
return mysql_fetch_object($query, $result_type);
}
function num_rows($query) {
$query = mysql_num_rows($query);
return $query;
}
function num_fields($query) {
return mysql_num_fields($query);
}
function data_seek($query,$size) {
//这里可能出现问题,
//可以直接使用:mysql_data_seek($resultstr,(($pagecount-1)*$pagesize));//移动内部结果指针
return $data_seek = mysql_data_seek($query,$size);
}
function free_result($query) {
return mysql_free_result($query);
}
function fetch_fields($query) {
return mysql_fetch_field($query);
}

?>


易点通WEB源http://www..cn/ QQ:14339095 E-mail:adleyliu@
2007-11-03 12:31
快速回复:[原创]通用数据查询及分页函数模块
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031587 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved