<?php
/**
*mssql 数据库连接类
**/
class SQL{ var $server;
var $userName;
var $passWord;
var $dataBase; var $linkID = 0;
var $queryResult;
var $lastInsertID; var $ER; /**
*构造函数
**/
function SQL($Server='',$UserName='',$PassWord='',$DataBase=''){
$this->server = $Server;
$this->userName = $UserName;
$this->passWord = $PassWord;
$this->dataBase = $DataBase;
}
/**
*数据库连接
**/
function db_connect(){
$this->linkID = mssql_connect($this->server,$this->userName,
$this->passWord);
if(!$this->linkID){
$this->ER = "db_connect($this->server,$this->userName,
$this->passWord) error";
return 0;
}
if (!mssql_select_db($this->dataBase,$this->linkID)) {
$this->ER = "mssql_select_db($this->dataBase,
$this->lastInsertID) error";
return 0;
}
return 1;
} /**public
* function: Check the database, if exist then select
* exist: return 1
* not exist: return 0
*/
function selectDatabase(){
if(mssql_select_db($this->dataBase))
return 1;
else
return 0;
} /**
*数据操作
**/
function query($Str){
if ($this->linkID == 0) {
$this->ER = "数据库还没有连接!!";
}
$this->queryResult = @mssql_query($Str,$this->linkID);
if (!$this->queryResult) {
$this->ER = "$Str.没有操作成功!!";
return 0;
}
return $this->queryResult;
}
/**
*数据获取
**/
function fetch_array($result=''){
if($result != "") $this->QueryResult = $result;
$rec =mssql_fetch_array($this->queryResult);
if(is_array($rec)){
return $rec; }
//$this->ER = "没有获取数据!";
return 0;
}
/**public
* function: Free the Query Result
* success return 1
* failed: return 0
*/
function freeResult($result=""){
if($result != "") $this->QueryResult = $result;
return mssql_free_result($this->QueryResult);
} /**
*获取影响的的行数
*获取操作过的行数
**/
function num_rows($result=""){
if ($result != "") {
$this->queryResult = $result;
$row = @mssql_num_rows($this->queryResult);
return $row;
}
} /**
*数据库信息分页
*$Result 数据库操作
*/
function page($Result="",$Str,$Page=0,$ShowNum=5){
$back = array();//返回数据
if ($Result == "") {
$this->ER = "没有数据";
return 0;
}
$this->queryResult = $this->query($Str);
if($this->queryResult){
if($Page==""){
$nopa=0;
}else{
$nopa=$Page;
}
$maxNum=$this->num_rows($this->queryResult);
echo $gg;
$k=0;
$i=0;
$dd=$this->fetch_array($this->queryResult);
if(!$dd){
echo "this is end";
}
while($dd&&$nopa<=$maxNum&&$i<$ShowNum){
if($nopa>=$maxNum) $nopa=$maxNum;
mssql_data_seek($this->queryResult,$nopa);
$row=$this->fetch_array($this->queryResult);
if($row){
$nopa++;$i++;
$back[] = $row;
}
}
}
return $back; }
}//end class
?>
/**
*mssql 数据库连接类
**/
class SQL{ var $server;
var $userName;
var $passWord;
var $dataBase; var $linkID = 0;
var $queryResult;
var $lastInsertID; var $ER; /**
*构造函数
**/
function SQL($Server='',$UserName='',$PassWord='',$DataBase=''){
$this->server = $Server;
$this->userName = $UserName;
$this->passWord = $PassWord;
$this->dataBase = $DataBase;
}
/**
*数据库连接
**/
function db_connect(){
$this->linkID = mssql_connect($this->server,$this->userName,
$this->passWord);
if(!$this->linkID){
$this->ER = "db_connect($this->server,$this->userName,
$this->passWord) error";
return 0;
}
if (!mssql_select_db($this->dataBase,$this->linkID)) {
$this->ER = "mssql_select_db($this->dataBase,
$this->lastInsertID) error";
return 0;
}
return 1;
} /**public
* function: Check the database, if exist then select
* exist: return 1
* not exist: return 0
*/
function selectDatabase(){
if(mssql_select_db($this->dataBase))
return 1;
else
return 0;
} /**
*数据操作
**/
function query($Str){
if ($this->linkID == 0) {
$this->ER = "数据库还没有连接!!";
}
$this->queryResult = @mssql_query($Str,$this->linkID);
if (!$this->queryResult) {
$this->ER = "$Str.没有操作成功!!";
return 0;
}
return $this->queryResult;
}
/**
*数据获取
**/
function fetch_array($result=''){
if($result != "") $this->QueryResult = $result;
$rec =mssql_fetch_array($this->queryResult);
if(is_array($rec)){
return $rec; }
//$this->ER = "没有获取数据!";
return 0;
}
/**public
* function: Free the Query Result
* success return 1
* failed: return 0
*/
function freeResult($result=""){
if($result != "") $this->QueryResult = $result;
return mssql_free_result($this->QueryResult);
} /**
*获取影响的的行数
*获取操作过的行数
**/
function num_rows($result=""){
if ($result != "") {
$this->queryResult = $result;
$row = @mssql_num_rows($this->queryResult);
return $row;
}
} /**
*数据库信息分页
*$Result 数据库操作
*/
function page($Result="",$Str,$Page=0,$ShowNum=5){
$back = array();//返回数据
if ($Result == "") {
$this->ER = "没有数据";
return 0;
}
$this->queryResult = $this->query($Str);
if($this->queryResult){
if($Page==""){
$nopa=0;
}else{
$nopa=$Page;
}
$maxNum=$this->num_rows($this->queryResult);
echo $gg;
$k=0;
$i=0;
$dd=$this->fetch_array($this->queryResult);
if(!$dd){
echo "this is end";
}
while($dd&&$nopa<=$maxNum&&$i<$ShowNum){
if($nopa>=$maxNum) $nopa=$maxNum;
mssql_data_seek($this->queryResult,$nopa);
$row=$this->fetch_array($this->queryResult);
if($row){
$nopa++;$i++;
$back[] = $row;
}
}
}
return $back; }
}//end class
?>
这个分页类是能用的,你试试看。只要把那个数据库类变成mssql的就可以了。
修改为:
要测试可把这下面的添加到上面的 class中
<?php
/**
*数据库信息分页
*$Result 数据库操作
*str ==sql语句
*page ==第几页
*showNum ==显示几页
*/
function page($Str,$Page=0,$ShowNum=5){
$back = array();//返回数据
$maxNum = 0;
if ($Str == "") {
$this->ER = "没有数据";
return 0;
}
$this->queryResult = $this->query($Str);
if($this->queryResult){
if($Page==""){
$nopa=0;
}else{
$nopa=($Page-1)*$ShowNum;
}
$maxNum=$this->num_rows($this->queryResult);
$k=0;
$i=0;
$dd=$this->fetch_array($this->queryResult); while($dd&&$nopa<=$maxNum&&$i<$ShowNum){
if($nopa>=$maxNum) $nopa=$maxNum;
mssql_data_seek($this->queryResult,$nopa); $row=$this->fetch_array($this->queryResult); $nopa++;
$i++;
$back[] = $row; if ($nopa >=$maxNum) {
break;
}
}
}
$this->pageNum = $maxNum;
return $back;
}
/**
*分页的html页码
*/
function pageHtml($DataNum=0,$Page=1,$ShowNum=3,$web,$Post=''){
if ($DataNum == 0) {
echo "没有要查询的数据";
}else {
if ($ShowNum<=0) {
$ShowNum = 3;
}
if ($Page<=0) {
$Page = 1;
}
if (empty($web)) {
$web = "#";
}
$pageNum = ceil($DataNum/$ShowNum);
if ($Page <= 1) {
$top = "首页<<";
}else {
$top = "<a href='".$web."?page=0&".$Post."'>首页<< </a>";
}
if ($Page !==1) {
$upPage = "<a href='".$web."?page=".($Page-1)."&".$Post."'>上一页</a>";
}else {
$upPage = "上一页";
}
if ($Page < $pageNum) {
$downPage = "<a href='".$web."?page=".($Page+1)."&".$Post."'>下一页</a>";
}else {
$downPage = "下一页";
}
if ($Page == $pageNum) {
$foot = ">>尾页";
}else {
$foot = "<a href='".$web."?page=".$pageNum."&".$Post."'> >>尾页</a>";
} $back = <<<EOT
共 $pageNum 页
第 $Page/$pageNum 页 $top $upPage $downPage $foot
EOT;
return $back;
}?>
<table width="90%" border="0" cellpadding="1" cellspacing="1" bgcolor="#84B4DB" align="center">
<tr align="center">
<td width="5%" height="20" nowrap><span class="style1">次序</span></td>
<td width="18%"><span class="style1">产品图片</span></td>
<td width="24%"><span class="style1">产品名称</span></td>
<td width="42%"><span class="style1">产品简介</span></td>
<td width="11%"><span class="style1">操作</span></td>
</tr>
<?
//查询结果
if ($_GET['action']=="search" or $_POST['action']=="search")
{
$keyword=$_POST['keyword'];
$pclass=$_POST['pclass'];
$where="where 1=1 ";
if ($pclass!=0) $where.=" and pClass1='$pclass'";
if ($keyword!="") $where.=" and pName like '%$keyword%'";
if ($yu!="nothing") $where.=" and pLanguage='$yu'";
$query = "select * from tbl_product ".$where." order by is_order";
}else{
$pclass=$_GET['pclass'];
if ($pclass!="")
{
$query="select * from tbl_product where pClass1='$pclass' order by is_order";
}else{
$query="select * from tbl_product order by is_order";
}
}
$result=mysql_query($query) or die(mysql_error());
//--取回数据
$count=0;
while($row=mysql_fetch_array($result)){
$rs[$count]['id']=$row['id'];
$rs[$count]['pName']=$row['pName'];
$rs[$count]['pImgSmall']=$row['pImgSmall'];
$rs[$count]['pSpec']=$row['pSpec'];
$rs[$count]['pClass1']=$row['pClass1'];
$rs[$count]['is_New']=$row['is_New'];
$rs[$count]['is_order']=$row['is_order'];
$rs[$count]['pPrice']=$row['pPrice'];
$rs[$count]['pLanguage']=$row['pLanguage'];
$count++;
}
//--获取$page值
$page=$_GET['page'];
if (@$page=="")
{
$page=$_POST['page'];
if ($page=="")
$page = 0;
}
//--计算页数
$count = count($rs);
$msgPerPage=10; //每页显示数
$start = @$page*$msgPerPage;
$end = $start+$msgPerPage;
if ($end>$count)
$end = $count;
$totalpage = ceil($count/$msgPerPage);
//输出记录
for ($i=$start;$i<$end;$i++)
{
//得到产品类别
$class1=$rs[$i]['pClass1'];
$res=mysql_query("select * from tbl_p_class where id='$class1'");
$res1=mysql_fetch_array($res);
$cn_classname=$res1['cn_name'];
$en_classname=$res1['en_name'];
?>
<tr bgcolor="#FFFFFF">
<td height="53" align="center"><?=$rs[$i]['is_order']?></td>
<td align="center">
<?
if ($rs[$i]['pImgSmall']!="")
{
echo "<img src=upfile/".$rs[$i]['pImgSmall'].">";
}else{
echo "暂无图片";
}
?>
</td>
<td bgcolor="#FFFFFF">
<?
echo " ".$rs[$i]['pName'];
if ($rs[$i]['is_New']=="1")
{
echo "<font color=red>(新)</font>";
}
echo "<p> 属于类别:".$cn_classname." ".$en_classname;
if ($rs[$i]['pLanguage']=="1") $language="中文";
if ($rs[$i]['pLanguage']=="2") $language="English";
if ($rs[$i]['pLanguage']=="0") $language="中文/English";
echo "<br> 发布版本:".$language;
?>
<br>
</td>
<td>
<?
echo nl2br($rs[$i]['pSpec']);
echo "<br><br><font color=red>会员价格:";
if ($rs[$i]['pPrice']!="")
{
echo $rs[$i]['pPrice'];
}else{
echo "暂无会员价格信息……";
}
echo "</font>";
?>
</td>
<td align="center" nowrap><a href="modify_product.php?pid=<?=$rs[$i]['id']?>">修改</a> |
<a href="javascript:del_member('<?=$rs[$i]['id']?>');">删除</a></td>
</tr>
<?
}
if ($count==0)
{
echo "<tr><td bgcolor=#FFFFFF colspan=5 align=center height=60>暂无记录……</td></tr>";
}
?>
</table>
<table width="80%" border="0" cellpadding="1" align="center">
<tr>
<td align="right">
<?
echo " 共有".$count."条";
echo " 页码:<font color=red>".($page+1)."</font>/".$totalpage." ";
//开始制作导航条----------------------------------------------
if ($page == "0")
{
echo "<font color=#666666>首页 | 上一页</font>";
}else {
echo "<a href=javascript:viewPage(1);>首页</a> | <a href=javascript:viewPage(".$page.")> 上一页 </a>";
}
if ($page == $totalpage-1)
{
echo "<font color=#666666>| 下一页 | 尾页 ";
}else{
echo "| <a href=javascript:viewPage(".($page+2).")>下一页</a> | <a href=javascript:viewPage(".$totalpage.")>尾页</a>";
}
?>
转到第
<input type='text' name='goto_page1' style='border: 1px solid rgb(0,0,0)' size=4 maxlength=4>
页
<input style='height:20;WIDTH: 42px;' class='button' hidefocus type='button' value='跳转' name='cmd_goto' onClick='javascript:viewPage(document.all.goto_page1.value);'>
</td>
</tr>
</table>
<!---------开始嵌入代码(为跳转导航)--------->
<script language=javascript>
function viewPage(ipage){
if (ipage<=0) ipage=1;
document.frm_page.page.value=ipage-1;
document.frm_page.submit();
}
</script>
<form action="<?echo $PHP_SELF;?>" method=post name="frm_page">
<input type="hidden" name="page" >
<input type="hidden" name="keyword" value="<?=$keyword?>">
<input type="hidden" name="pclass" value="<?=$pclass?>">
<input type="hidden" name="yu" value="<?=$yu?>">
<input type="hidden" name="action" value="search">
</form>
/**
*获取数据库连接
*/
include("sql.class.php");
$sql = new SQL($db_server,$db_userName,$db_password,$db_dataBase);
$sql->db_connect();
$query = "select * from table";
/*分页*/
$List = $sql->page($query,$page,$showNum);
$pageHtml = $sql->pageHtml($sql->pageNum,$page,$showNum,"web地址","传递的参数");
//
$list是数据
$pageHtml是翻页.html