手机
当前位置:查字典教程网 >编程开发 >php教程 >xml+php动态载入与分页
xml+php动态载入与分页
摘要:这是在看太平洋网的评论时看到的,太平洋网是用jsp做为后台语言,用来产生xml文件.然后在把数据绑定到html上的.我就用php也做了一个以...

这是在看太平洋网的评论时看到的,太平洋网是用jsp做为后台语言,用来产生xml文件.然后在把数据绑定到html上的.我就用php也做了一个以下是源文件.

-----------------xml.htm------------------

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>xml</title>

</head>

<body>

<xml id="ShopList" src="xml.php"></xml>

<script>

function jump(form)

{

if (form.pageNum.value>parseInt(pageCount.innerHTML)) return false;

if (form.pageSize.value>parseInt(recordCount.innerHTML)) return false;

ShopList.src="xml.php?pageNo="+form.pageNum.value+"&pageSize="+form.pageSize.value+"&time="+(new Date()).getTime();

}

function pageCount_onpropertychange(form)

{

if (form.pageNum.value>parseInt(pageCount.innerHTML)) form.pageNum.value=parseInt(pageCount.innerHTML);

if (form.pageSize.value>parseInt(recordCount.innerHTML)) form.pageSize.value=parseInt(recordCount.innerHTML);

if(form.pageNum.value==1)

{

form.firstPage.disabled=true;

form.previousPage.disabled=true;

}

else

{

form.firstPage.disabled=false;

form.previousPage.disabled=false;

}

if(form.pageNum.value==form.pageCount.value)

{

form.nextPage.disabled=true;

form.lastPage.disabled=true;

}

else

{

form.nextPage.disabled=false;

form.lastPage.disabled=false;

}

}

</script>

<table width="100%" height="25" border="0" cellpadding="2" cellspacing="1" id="shopTbl" datasrc=#ShopList datafld=商铺>

<thead>

<tr>

<td height="25" colspan="4"><span>店铺列表</span></td>

</tr>

<tr>

<td width="30%">商铺名称</td>

<td width="20%">经营者</td>

<td width="20%">店铺级别</td>

<td width="30%">店铺简介</td>

</tr>

</thead>

<tbody>

<tr#EFEFEF':'#FFFFFF')">

<td><a datafld="连接地址"><span datafld="名称">名称</span></a></td>

<td><span datafld="经营人">经营人</span></td>

<td><span datafld="级别">级别</span></td>

<td><span datafld="简介">简介</span></td>

</tr>

</tbody>

</table>

<form return onsubmit="jump(this);return false">

<div align="right">

每页显示

<input name=pageSize datasrc=#ShopList datafld=页大小 size=2>条,

<input type=submit value="">

共<span id="pageCount" datasrc=#ShopList datafld=页数量></span>页

<span id="recordCount" datasrc=#ShopList datafld=数量 ></span>条

<input name=firstPage type=submit value=首页>

<input name=previousPage type=submit value=上页>

第<input name=pageNum datasrc=#ShopList datafld=页号码 size=2>页

<input name=nextPage type=submit value=下页>

<input name=lastPage type=submit value=尾页 >

<input name=pageCount type=hidden datasrc=#ShopList datafld=页数量 onpropertychange="pageCount_onpropertychange(form)">

</div> </form>

</body>

</html>

-----------------xml.php------------------

<?php

//require_once "Source/Global.php";

function getVars($get_vars, $post_vars) {

$i = count($get_vars);

$j = count($post_vars);

if ($i > 0 && $j > 0 ) {

while(list($key, $val) = each($get_vars)) {

$Vars[$key] = $val;

}

while(list($key2, $val2) = each($post_vars)) {

$Vars[$key2] = $val2;

}

} elseif ($i > 0) {

while(list($key, $val) = each($get_vars)) {

$Vars[$key] = $val;

}

} elseif ($j > 0) {

while(list($key2, $val2) = each($post_vars)) {

$Vars[$key2] = $val2;

}

} else {

$Vars = array();

}

return $Vars;

}

$vars = getVars($HTTP_GET_VARS, $HTTP_POST_VARS);

//class shoplist_res extends iGlobal{

class shoplist_res{

function shoplist_res($vars,$cookie){

//$this->iGlobal($vars,$cookie);

$this->outPut($vars,$cookie);

}

//function _shoplist_res(){

//$this->db->Close();

//}

function outPut($vars,$cookie){

/*$strQuery = "select count(*) as rc from ".$this->db_c->Db_Pre."pshop order by id desc";

$this->db->Query($strQuery);

$RecordCount = $this->db->Assoc();

$RecordCount = $RecordCount['rc'];

@$this->db->freeResult();*/

$RecordCount = 25;

if (empty($vars['pageNo'])) $vars['pageNo']= 1;

if (empty($vars['pageSize'])) $vars['pageSize']= 10;

$PageCount = ceil($RecordCount/$vars['pageSize']);

if ($vars['pageSize']>$RecordCount) $vars['pageSize']=$RecordCount;

if ($vars['pageNo']>$PageCount) $vars['pageNo']=$PageCount;

$xmlStr.= "<?xml version="1.0" encoding="GBK" ?>"."n";

$xmlStr.= "<商铺列表>"."n";

$xmlStr.= "t<翻页工具 pageNo="".$vars['pageNo']."" pageSize="".$vars['pageSize']."" total="".$RecordCount.""></翻页工具>"."n";

$xmlStr.= "t<页号码>".$vars['pageNo']."</页号码>"."n";

$xmlStr.= "t<页大小>".$vars['pageSize']."</页大小>"."n";

$xmlStr.= "t<数量>".$RecordCount."</数量>"."n";

$xmlStr.= "t<页数量>".$PageCount."</页数量>"."n";

//$strQuery = "select t1.*,t2.* from ".$this->db_c->Db_Pre."pshop as t1,".$this->db_c->Db_Pre."shoptype as t2 where t1.typenum=t2.typenum order by id desc "

//."limit ".($vars['pageNo']-1)*$vars['pageSize'].",".$vars['pageSize'];

//die($strQuery);

//$this->db->Query($strQuery);

/*while($result = $this->db->Assoc()){

$xmlStr.= "t"."n";

$xmlStr.= "t<商铺>"."n";

$xmlStr.= "tt<名称><![CDATA[".$result['shopname']."]]></名称>"."n";

$xmlStr.= "tt<经营人><![CDATA[".$result['shopmaster']."]]></经营人>"."n";

$xmlStr.= "tt<级别><![CDATA[".$result['shoptype']."]]></级别>"."n";

$xmlStr.= "tt<简介><![CDATA[".$result['shopintro']."]]></简介>"."n";

$xmlStr.= "tt<连接地址><![CDATA[personal_shop.php?id=".$result['id']."]]></连接地址>"."n";

$xmlStr.= "t</商铺>"."n";

}*/

$sc= $vars['pageNo']*$vars['pageSize'];

if ($sc>$RecordCount) $sc = $RecordCount;

for($i=($vars['pageNo']-1)*$vars['pageSize'];$i<$sc;$i++){

$xmlStr.= "t"."n";

$xmlStr.= "t<商铺>"."n";

$xmlStr.= "tt<名称><![CDATA[这是名称:".$i."]]></名称>"."n";

$xmlStr.= "tt<经营人><![CDATA[这是经营人:".$i."]]></经营人>"."n";

$xmlStr.= "tt<级别><![CDATA[这是级别:".$i."]]></级别>"."n";

$xmlStr.= "tt<简介><![CDATA[这是简介:".$i."]]></简介>"."n";

$xmlStr.= "tt<连接地址><![CDATA[personal_shop.php?id=".$i."]]></连接地址>"."n";

$xmlStr.= "t</商铺>"."n";

}

$xmlStr.= "</商铺列表>"."n";

header("Content-type: text/xmlnn");

echo $xmlStr;

}

}

$shoplist = new shoplist_res($vars,$HTTP_COOKIE_VARS);

//$shoplist->_shoplist_res();

unset($sthoplist);

?>

以上的php,注释的是我连接数据库取得的数据,既然放上来测试,也没有数据库连接,所以改了一下.偶也是刚接解xml不久,很多地方还是不很懂.见笑了......

【xml+php动态载入与分页】相关文章:

自定义PHP分页函数

php实现插入排序

PHP动态图像的创建

php实现读取和写入tab分割的文件

php数组合并与拆分实例分析

用PHP产生动态的影像图

自动跳转中英文页面

example1.php

php编写的抽奖程序中奖概率算法

PHP4中实现动态代理

精品推荐
分类导航