使用php+XML开发WAP站点,数据来源XML用PHP读取然后生成一个WAP页面但是总存在乱码,请大家帮忙看看
XML:<?xml version="1.0" encoding="GB2312"?>
<hotFirstHand>
<Content filename="/home/web/xml/property/322.xml" retrieval_date="20061223" />
<PropertyPhoto BigFace="../property/property_image/shenzhen/322/BigFace.jpg" BigTraffic="../property/property_image/shenzhen/322/BigTraffic.jpg" SmallFace="../property/property_image/shenzhen/322/SmallFace.jpg" SmallTraffic="../property/property_image/shenzhen/322/SmallTraffic.jpg"/>
<PropertyInfo name="书香门第" district="深圳">
<Parameter name="物业名称:" value="兴和" /> <Parameter name="物业地址:" value="深圳市龙华镇梅林关口" /> <Parameter name="投资商:" value="深圳市投资发展有限公司" /> <Parameter name="发展商:" value="深圳市发展有限公司" /> <Parameter name="物业管理:" value="-" /> <Parameter name="物业座数:" value="-" /> <Parameter name="车位总数:" value="-" /> <Parameter name="占地面积:" value="-" /> <Parameter name="建筑面积:" value="3761.24平方米" /> <Parameter name="实用面积:" value="3456.66平方米" /> <Parameter name="绿化率:" value="-" /> <Parameter name="装修标准:" value="-" /> <Parameter name="管理费用:" value="-" /> <Parameter name="配套设施:" value="-" /> <Parameter name="交通状况:" value="-" /> <Parameter name="开发状况:" value="-" /> <Parameter name="销售许可证:" value="-" /> <Parameter name="开业日期:" value="2006-12-23" /> <Parameter name="入伙日期:" value="-" /> <Parameter name="物业优点:" value="书香门第.财富街" /> </PropertyInfo>
<ContactInfo>
<Contact HKFax="-" HKEmail="-" HKHotline="-" ChinaEmail="-" ChinaFax="-" ChinaHotline="755-28068888"/>
</ContactInfo>
</hotFirstHand>使用PHP phplib建立一个WAP页面
header("Content-type: text/vnd.wap.wml");
echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
echo("<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\"
\"http://www.wapforum.org/DTD/wml_1.1.xml\">\n\n");
echo"<wml>";
include_once("../include/template.php");
include_once("../include/xmlize.php");
include_once("../include/function.php");
$id = $_GET["id"];
$file = "/home/web/xml/property/".$id.".xml";
$handler = fopen($file,"r");
$xmlfile = fread($handler,filesize($file));
$xml = xmlize($xmlfile);
$hotFirstHand = $xml["hotFirstHand"]["#"];
$PropertyInfo = $hotFirstHand["PropertyInfo"];
$PropertyName = iconv("gb2312","utf-8",$PropertyInfo[0]["@"]["name"]);
$city = iconv("gb2312","utf-8",$PropertyInfo[0]["@"]["district"]);
$Invest = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][2]["@"]["value"]);
$develop = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][3]["@"]["value"]);
$manage = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][4]["@"]["value"]);
$num = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][5]["@"]["value"]);
$carnum = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][6]["@"]["value"]);
$area = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][7]["@"]["value"]);
$buildarea = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][8]["@"]["value"]);
$userarea = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][9]["@"]["value"]);
$lv = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][10]["@"]["value"]);
$fitment = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][11]["@"]["value"]);
$mfee = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][12]["@"]["value"]);
$pt = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][13]["@"]["value"]);
$traffice = iconv("gb2312","utf-8//IGNORE",$PropertyInfo[0]["#"]["Parameter"][14]["@"]["value"]);
$data = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][17]["@"]["value"]);
$adventage = trim($PropertyInfo[0]["#"]["Parameter"][19]["@"]["value"]);
$adventage = iconv("gb2312","utf-8//IGNORE",$adventage);
$t = new Template("./");
$t->set_file("HdIndex","citymore.wml");
$t->set_var(array("city"=>$city,
"Invest"=>$Invest,
"develop"=>$develop,
"manage"=>$manage,
"num"=>$num,
"PropertyName"=>$PropertyName,
"carnum"=>$carnum,
"area"=>$area,
"buildarea"=>$buildarea,
"userarea"=>$userarea,
"lv"=>$lv,
"fitment"=>$fitment,
"mfee"=>$mfee,
"pt"=>$pt,
"traffice"=>$traffice,
"data"=>$data,
"adventage"=>$adventage));
$t->parse("Output","HdIndex");
$t->p("Output");
echo "</wml>";WAP模板是一个XML
<card id="main" title="{city}-{PropertyName}">
<p>
【物业名称】:{PropertyName}<br />
【投资商】:{Invest}<br />
【发展商】:{develop}<br />
【物业管理】:{manage}<br />
【物业座数】:{num}<br />
【车位总数】:{carnum}<br />
【占地面积】:{area}<br />
【建筑面积】:{buildarea}<br />
【使用面积】:{userarea}<br />
【绿化率】:{lv}<br />
【装修标准】:{fitment}<br />
【管理费用】:{mfee}<br />
【配套设施】:{pt}<br />
【交通状况】:{traffice}<br />
【开业日期】:{data}<br />
【物业优点】:{adventage}<br />
</p>
<p align="center">
<anchor> [返回上一页] <prev />
</anchor>
</p>
</card>但PHP生成的WAP结果中总是有乱码存在,大家帮忙看看
XML:<?xml version="1.0" encoding="GB2312"?>
<hotFirstHand>
<Content filename="/home/web/xml/property/322.xml" retrieval_date="20061223" />
<PropertyPhoto BigFace="../property/property_image/shenzhen/322/BigFace.jpg" BigTraffic="../property/property_image/shenzhen/322/BigTraffic.jpg" SmallFace="../property/property_image/shenzhen/322/SmallFace.jpg" SmallTraffic="../property/property_image/shenzhen/322/SmallTraffic.jpg"/>
<PropertyInfo name="书香门第" district="深圳">
<Parameter name="物业名称:" value="兴和" /> <Parameter name="物业地址:" value="深圳市龙华镇梅林关口" /> <Parameter name="投资商:" value="深圳市投资发展有限公司" /> <Parameter name="发展商:" value="深圳市发展有限公司" /> <Parameter name="物业管理:" value="-" /> <Parameter name="物业座数:" value="-" /> <Parameter name="车位总数:" value="-" /> <Parameter name="占地面积:" value="-" /> <Parameter name="建筑面积:" value="3761.24平方米" /> <Parameter name="实用面积:" value="3456.66平方米" /> <Parameter name="绿化率:" value="-" /> <Parameter name="装修标准:" value="-" /> <Parameter name="管理费用:" value="-" /> <Parameter name="配套设施:" value="-" /> <Parameter name="交通状况:" value="-" /> <Parameter name="开发状况:" value="-" /> <Parameter name="销售许可证:" value="-" /> <Parameter name="开业日期:" value="2006-12-23" /> <Parameter name="入伙日期:" value="-" /> <Parameter name="物业优点:" value="书香门第.财富街" /> </PropertyInfo>
<ContactInfo>
<Contact HKFax="-" HKEmail="-" HKHotline="-" ChinaEmail="-" ChinaFax="-" ChinaHotline="755-28068888"/>
</ContactInfo>
</hotFirstHand>使用PHP phplib建立一个WAP页面
header("Content-type: text/vnd.wap.wml");
echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
echo("<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\"
\"http://www.wapforum.org/DTD/wml_1.1.xml\">\n\n");
echo"<wml>";
include_once("../include/template.php");
include_once("../include/xmlize.php");
include_once("../include/function.php");
$id = $_GET["id"];
$file = "/home/web/xml/property/".$id.".xml";
$handler = fopen($file,"r");
$xmlfile = fread($handler,filesize($file));
$xml = xmlize($xmlfile);
$hotFirstHand = $xml["hotFirstHand"]["#"];
$PropertyInfo = $hotFirstHand["PropertyInfo"];
$PropertyName = iconv("gb2312","utf-8",$PropertyInfo[0]["@"]["name"]);
$city = iconv("gb2312","utf-8",$PropertyInfo[0]["@"]["district"]);
$Invest = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][2]["@"]["value"]);
$develop = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][3]["@"]["value"]);
$manage = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][4]["@"]["value"]);
$num = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][5]["@"]["value"]);
$carnum = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][6]["@"]["value"]);
$area = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][7]["@"]["value"]);
$buildarea = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][8]["@"]["value"]);
$userarea = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][9]["@"]["value"]);
$lv = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][10]["@"]["value"]);
$fitment = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][11]["@"]["value"]);
$mfee = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][12]["@"]["value"]);
$pt = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][13]["@"]["value"]);
$traffice = iconv("gb2312","utf-8//IGNORE",$PropertyInfo[0]["#"]["Parameter"][14]["@"]["value"]);
$data = iconv("gb2312","utf-8",$PropertyInfo[0]["#"]["Parameter"][17]["@"]["value"]);
$adventage = trim($PropertyInfo[0]["#"]["Parameter"][19]["@"]["value"]);
$adventage = iconv("gb2312","utf-8//IGNORE",$adventage);
$t = new Template("./");
$t->set_file("HdIndex","citymore.wml");
$t->set_var(array("city"=>$city,
"Invest"=>$Invest,
"develop"=>$develop,
"manage"=>$manage,
"num"=>$num,
"PropertyName"=>$PropertyName,
"carnum"=>$carnum,
"area"=>$area,
"buildarea"=>$buildarea,
"userarea"=>$userarea,
"lv"=>$lv,
"fitment"=>$fitment,
"mfee"=>$mfee,
"pt"=>$pt,
"traffice"=>$traffice,
"data"=>$data,
"adventage"=>$adventage));
$t->parse("Output","HdIndex");
$t->p("Output");
echo "</wml>";WAP模板是一个XML
<card id="main" title="{city}-{PropertyName}">
<p>
【物业名称】:{PropertyName}<br />
【投资商】:{Invest}<br />
【发展商】:{develop}<br />
【物业管理】:{manage}<br />
【物业座数】:{num}<br />
【车位总数】:{carnum}<br />
【占地面积】:{area}<br />
【建筑面积】:{buildarea}<br />
【使用面积】:{userarea}<br />
【绿化率】:{lv}<br />
【装修标准】:{fitment}<br />
【管理费用】:{mfee}<br />
【配套设施】:{pt}<br />
【交通状况】:{traffice}<br />
【开业日期】:{data}<br />
【物业优点】:{adventage}<br />
</p>
<p align="center">
<anchor> [返回上一页] <prev />
</anchor>
</p>
</card>但PHP生成的WAP结果中总是有乱码存在,大家帮忙看看
当然会乱码了.
iconv("gb2312","utf-8//IGNORE",$adventage);
看看是不是 //IGNORE 这个附加参数的问题或者改用mb_convert_encoding试试呢呢