您的位置:首页 > 其它

WML的几个小陷阱(浪费了不少时间哦)

2005-10-19 15:50 190 查看
1、WML的语法比HTML严谨。不成对出现的标记一定要用“/>”结尾,不然会有奇怪的结果,让你摸不着头脑。尤其在HTML中用惯的<input...>和<br>一定要写成<input ... />和<br/>。而且value的值一定要用引号括住,如不能写成:<input name=a value=1/>而要写成<input name="a" value="1"/>,否则服务端会得到$_REQUEST['a']='1/',而且下一个input值还得不到(因为第一个input还没结束);

2、要通过http header:Location来跳转页面的话,HTML可以用相对路径,WML必须用绝对路径,例如PHP中:

HTML:
header("302 Moved Temporarily");
header("Location: target.html");

WML:
header("302 Moved Temporarily");
header("Location: ".dirname($REQUEST_URI)."/target.wml");

3、其实这个不是WML的问题,而是WAP网关的问题:WAP网关会把提交的数据用UTF-8编码,因此涉及中文的话,服务端要进行UTF-8到GB2312的转换(当然,如果程序和数据库都用UTF-8编码保存的话就不用了)。PHP下可以用iconv搞定:
$name=iconv('UTF-8','GB2312',$_REQUEST['name']);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: