当前位置:Gxlcms > PHP教程 > xml+php动态载入与分页

xml+php动态载入与分页

时间:2021-07-01 10:21:17 帮助过:3人阅读

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

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




xml




      


  
       
        
       
       
        
        
        
        
       
  
  
  
  
  
  
  
  
  
     
店铺列表
商铺名称经营者店铺级别店铺简介
名称 经营人级别简介

 


-----------------xml.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.= ""."\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.= "\t\t<名称>"."\n";
  $xmlStr.= "\t\t<经营人>"."\n";
  $xmlStr.= "\t\t<级别>"."\n";
  $xmlStr.= "\t\t<简介>"."\n";
  $xmlStr.= "\t\t<连接地址>"."\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.= "\t\t<名称>"."\n";
  $xmlStr.= "\t\t<经营人>"."\n";
  $xmlStr.= "\t\t<级别>"."\n";
  $xmlStr.= "\t\t<简介>"."\n";
  $xmlStr.= "\t\t<连接地址>"."\n";
  $xmlStr.= "\t"."\n";
 }
 $xmlStr.= ""."\n";
 header("Content-type: text/xml\n\n");
 echo $xmlStr;
  }
}

$shoplist = new shoplist_res($vars,$HTTP_COOKIE_VARS);
//$shoplist->_shoplist_res();
unset($sthoplist);
?>


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

人气教程排行