您现在的位置是:首页-> 米鼠技术 ->xml+php动态载入与分页

xml+php动态载入与分页

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

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

<font size="3">&lt;</font>!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"<font size="3">&gt;</font>
<font size="3">&lt;</font>html<font size="3">&gt;</font>
<font size="3">&lt;</font>head<font size="3">&gt;</font>
<font size="3">&lt;</font>meta http-equiv="Content-Type" content="text/html; charset=gb2312"<font size="3">&gt;</font>
<font size="3">&lt;</font>title<font size="3">&gt;</font>xml<font size="3">&lt;</font>/title<font size="3">&gt;</font>
<font size="3">&lt;</font>/head<font size="3">&gt;</font>

<font size="3">&lt;</font>body<font size="3">&gt;</font>
<font size="3">&lt;</font>xml id="ShopList" src="xml.php"<font size="3">&gt;</font><font size="3">&lt;</font>/xml<font size="3">&gt;</font>
<font size="3">&lt;</font>script<font size="3">&gt;</font>
function jump(form)
{
if (form.pageNum.value
<font size="3">&gt;</font>parseInt(pageCount.innerHTML)) return false;
if (form.pageSize.value
<font size="3">&gt;</font>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
<font size="3">&gt;</font>parseInt(pageCount.innerHTML)) form.pageNum.value=parseInt(pageCount.innerHTML);
if (form.pageSize.value
<font size="3">&gt;</font>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;
}
}
<font size="3">&lt;</font>/script<font size="3">&gt;</font>
<font size="3">&lt;</font>table width="100%" height="25" border="0" cellpadding="2" cellspacing="1" id="shopTbl" datasrc=#ShopList datafld=商铺<font size="3">&gt;</font>
<font size="3">&lt;</font>thead<font size="3">&gt;</font>
<font size="3">&lt;</font>tr<font size="3">&gt;</font>
<font size="3">&lt;</font>td height="25" colspan="4"<font size="3">&gt;</font><font size="3">&lt;</font>span class="shop_3d_text"<font size="3">&gt;</font>店铺列表<font size="3">&lt;</font>/span<font size="3">&gt;</font><font size="3">&lt;</font>/td<font size="3">&gt;</font>
<font size="3">&lt;</font>/tr<font size="3">&gt;</font>
<font size="3">&lt;</font>tr<font size="3">&gt;</font>
<font size="3">&lt;</font>td width="30%"<font size="3">&gt;</font>商铺名称<font size="3">&lt;</font>/td<font size="3">&gt;</font>
<font size="3">&lt;</font>td width="20%"<font size="3">&gt;</font>经营者<font size="3">&lt;</font>/td<font size="3">&gt;</font>
<font size="3">&lt;</font>td width="20%"<font size="3">&gt;</font>店铺级别<font size="3">&lt;</font>/td<font size="3">&gt;</font>
<font size="3">&lt;</font>td width="30%"<font size="3">&gt;</font>店铺简介<font size="3">&lt;</font>/td<font size="3">&gt;</font>
<font size="3">&lt;</font>/tr<font size="3">&gt;</font>
<font size="3">&lt;</font>/thead<font size="3">&gt;</font>
<font size="3">&lt;</font>tbody<font size="3">&gt;</font>
<font size="3">&lt;</font>tr STYLE="background-color:expression(rowIndex%2==1?'#EFEFEF':'#FFFFFF')"<font size="3">&gt;</font>
<font size="3">&lt;</font>td<font size="3">&gt;</font><font size="3">&lt;</font>a datafld="连接地址"<font size="3">&gt;</font><font size="3">&lt;</font>span datafld="名称"<font size="3">&gt;</font>名称<font size="3">&lt;</font>/span<font size="3">&gt;</font><font size="3">&lt;</font>/a<font size="3">&gt;</font><font size="3">&lt;</font>/td<font size="3">&gt;</font>
<font size="3">&lt;</font>td<font size="3">&gt;</font><font size="3">&lt;</font>span datafld="经营人"<font size="3">&gt;</font>经营人<font size="3">&lt;</font>/span<font size="3">&gt;</font><font size="3">&lt;</font>/td<font size="3">&gt;</font>
<font size="3">&lt;</font>td<font size="3">&gt;</font><font size="3">&lt;</font>span datafld="级别"<font size="3">&gt;</font>级别<font size="3">&lt;</font>/span<font size="3">&gt;</font><font size="3">&lt;</font>/td<font size="3">&gt;</font>
<font size="3">&lt;</font>td<font size="3">&gt;</font><font size="3">&lt;</font>span datafld="简介"<font size="3">&gt;</font>简介<font size="3">&lt;</font>/span<font size="3">&gt;</font><font size="3">&lt;</font>/td<font size="3">&gt;</font>
<font size="3">&lt;</font>/tr<font size="3">&gt;</font>
<font size="3">&lt;</font>/tbody<font size="3">&gt;</font>
<font size="3">&lt;</font>/table<font size="3">&gt;</font>
<font size="3">&lt;</font>form return onsubmit="jump(this);return false"<font size="3">&gt;</font>
<font size="3">&lt;</font>div align="right"<font size="3">&gt;</font>
每页显示
<font size="3">&lt;</font>input name=pageSize datasrc=#ShopList datafld=页大小 size=2<font size="3">&gt;</font>条,
<font size="3">&lt;</font>input type=submit value="" style="width:0"<font size="3">&gt;</font>
<font size="3">&lt;</font>span id="pageCount" datasrc=#ShopList datafld=页数量<font size="3">&gt;</font><font size="3">&lt;</font>/span<font size="3">&gt;</font>
<font size="3">&lt;</font>span id="recordCount" datasrc=#ShopList datafld=数量 <font size="3">&gt;</font><font size="3">&lt;</font>/span<font size="3">&gt;</font>

<font size="3">&lt;</font>input name=firstPage type=submit value=首页 onclick="pageNum.value=1"<font size="3">&gt;</font>
<font size="3">&lt;</font>input name=previousPage type=submit value=上页 onclick="pageNum.value=pageNum.value-1"<font size="3">&gt;</font>
<font size="3">&lt;</font>input name=pageNum datasrc=#ShopList datafld=页号码 size=2<font size="3">&gt;</font>
<font size="3">&lt;</font>input name=nextPage type=submit value=下页 onclick="pageNum.value=(pageNum.value-0)+1"<font size="3">&gt;</font>
<font size="3">&lt;</font>input name=lastPage type=submit value=尾页 onclick="pageNum.value=pageCount.value" <font size="3">&gt;</font>
<font size="3">&lt;</font>input name=pageCount type=hidden datasrc=#ShopList datafld=页数量 onpropertychange="pageCount_onpropertychange(form)"<font size="3">&gt;</font>
<font size="3">&lt;</font>/div<font size="3">&gt;</font> <font size="3">&lt;</font>/form<font size="3">&gt;</font>
<font size="3">&lt;</font>/body<font size="3">&gt;</font>
<font size="3">&lt;</font>/html<font size="3">&gt;</font>


-----------------xml.php------------------
<font size="3">&lt;</font>?php
//require_once "Source/Global.php";
function getVars($get_vars, $post_vars) {

$i = count($get_vars);
$j = count($post_vars);
if ($i
<font size="3">&gt;</font> 0 && $j <font size="3">&gt;</font> 0 ) {
while(list($key, $val) = each($get_vars)) {
$Vars[$key] = $val;
}
while(list($key2, $val2) = each($post_vars)) {
$Vars[$key2] = $val2;
}
} elseif ($i
<font size="3">&gt;</font> 0) {
while(list($key, $val) = each($get_vars)) {
$Vars[$key] = $val;
}
} elseif ($j
<font size="3">&gt;</font> 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-
<font size="3">&gt;</font>iGlobal($vars,$cookie);
$this-
<font size="3">&gt;</font>outPut($vars,$cookie);
}

//function _shoplist_res(){
// $this-
<font size="3">&gt;</font>db-<font size="3">&gt;</font>Close();
//}
function outPut($vars,$cookie){
/*$strQuery = "select count(*) as rc from ".$this-
<font size="3">&gt;</font>db_c-<font size="3">&gt;</font>Db_Pre."pshop order by id desc";
$this-
<font size="3">&gt;</font>db-<font size="3">&gt;</font>Query($strQuery);
$RecordCount = $this-
<font size="3">&gt;</font>db-<font size="3">&gt;</font>Assoc();
$RecordCount = $RecordCount['rc'];
@$this-
<font size="3">&gt;</font>db-<font size="3">&gt;</font>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']
<font size="3">&gt;</font>$RecordCount) $vars['pageSize']=$RecordCount;
if ($vars['pageNo']
<font size="3">&gt;</font>$PageCount) $vars['pageNo']=$PageCount;
$xmlStr.= "
<font size="3">&lt;</font>?xml version="1.0" encoding="GBK" ?<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>商铺列表<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>翻页工具 pageNo="".$vars['pageNo']."" pageSize="".$vars['pageSize']."" total="".$RecordCount.""<font size="3">&gt;</font><font size="3">&lt;</font>/翻页工具<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>页号码<font size="3">&gt;</font>".$vars['pageNo']."<font size="3">&lt;</font>/页号码<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>页大小<font size="3">&gt;</font>".$vars['pageSize']."<font size="3">&lt;</font>/页大小<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>数量<font size="3">&gt;</font>".$RecordCount."<font size="3">&lt;</font>/数量<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>页数量<font size="3">&gt;</font>".$PageCount."<font size="3">&lt;</font>/页数量<font size="3">&gt;</font>"." ";
//$strQuery = "select t1.*,t2.* from ".$this-
<font size="3">&gt;</font>db_c-<font size="3">&gt;</font>Db_Pre."pshop as t1,".$this-<font size="3">&gt;</font>db_c-<font size="3">&gt;</font>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-
<font size="3">&gt;</font>db-<font size="3">&gt;</font>Query($strQuery);
/*while($result = $this-
<font size="3">&gt;</font>db-<font size="3">&gt;</font>Assoc()){
$xmlStr.= " "." ";
$xmlStr.= "
<font size="3">&lt;</font>商铺<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>名称<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[".$result['shopname']."]]<font size="3">&gt;</font><font size="3">&lt;</font>/名称<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>经营人<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[".$result['shopmaster']."]]<font size="3">&gt;</font><font size="3">&lt;</font>/经营人<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>级别<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[".$result['shoptype']."]]<font size="3">&gt;</font><font size="3">&lt;</font>/级别<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>简介<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[".$result['shopintro']."]]<font size="3">&gt;</font><font size="3">&lt;</font>/简介<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>连接地址<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[personal_shop.php?id=".$result['id']."]]<font size="3">&gt;</font><font size="3">&lt;</font>/连接地址<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>/商铺<font size="3">&gt;</font>"." ";
}*/
$sc= $vars['pageNo']*$vars['pageSize'];
if ($sc
<font size="3">&gt;</font>$RecordCount) $sc = $RecordCount;
for($i=($vars['pageNo']-1)*$vars['pageSize'];$i
<font size="3">&lt;</font>$sc;$i++){
$xmlStr.= " "." ";
$xmlStr.= "
<font size="3">&lt;</font>商铺<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>名称<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[这是名称:".$i."]]<font size="3">&gt;</font><font size="3">&lt;</font>/名称<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>经营人<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[这是经营人:".$i."]]<font size="3">&gt;</font><font size="3">&lt;</font>/经营人<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>级别<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[这是级别:".$i."]]<font size="3">&gt;</font><font size="3">&lt;</font>/级别<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>简介<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[这是简介:".$i."]]<font size="3">&gt;</font><font size="3">&lt;</font>/简介<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>连接地址<font size="3">&gt;</font><font size="3">&lt;</font>![CDATA[personal_shop.php?id=".$i."]]<font size="3">&gt;</font><font size="3">&lt;</font>/连接地址<font size="3">&gt;</font>"." ";
$xmlStr.= "
<font size="3">&lt;</font>/商铺<font size="3">&gt;</font>"." ";
}
$xmlStr.= "
<font size="3">&lt;</font>/商铺列表<font size="3">&gt;</font>"." ";
header("Content-type: text/xml ");
echo $xmlStr;
}
}

$shoplist = new shoplist_res($vars,$HTTP_COOKIE_VARS);
//$shoplist-
<font size="3">&gt;</font>_shoplist_res();
unset($sthoplist);
?
<font size="3">&gt;</font>


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


热点文章
最新项目
相关文章 最新文章