WAP开发,NOKIA N73中文乱码,只在NOKIA N73上出现此有关问题
发布时间:2010-05-30 21:29:24 文章来源:www.iduyao.cn 采编人员:星星草
WAP开发,NOKIA N73中文乱码,只在NOKIA N73上出现此问题
现象描述:
首先,NOKIA N73显示WAP页面中的中文没有问题,即NOKIA N73直接显示1.php和2.php;
问题是,在1.php中的输入框中输入中文,<go>到2.php,然后在2.php中显示1.php中刚刚输入的中文,显示的是乱码,而2.php中的原有的、静态的中文没问题;
附代码如下:
//------gbk2utf.php---------
<?php
//自定义的一个GBK转UTF-8的函数
function gbk2utf($gb)
{
if(!trim($gb)) return $gb;
$filename = './gb2312.php'; //字符集文件
$tmp = file($filename);
$codetable = array();
while(list($key, $value) = each($tmp))
$codetable[hexdec(substr($value, 0, 6))] = substr($value, 9, 4);
$utf = '';
$str = $gb;
$zero = substr($str, -1, 1);
if($zero != '0') $zero = '';
while($str) {
if(ord(substr($str, 0, 1)) > 127) {
$temp = substr($str, 0, 2);
$str = substr($str, 2, strlen($str));
$utf .= "&#x".$codetable[hexdec(bin2hex($temp))-0x8080].';';
}
else {
$utf .= substr($str, 0, 1);
$str = substr($str, 1, strlen($str));
}
}
$utf = str_replace("&#x;", '', $utf);
return $utf.$zero;
}
?>
//--------1.php----------
<?php
//error_reporting(E_ALL);
error_reporting(0);
header('Content-Type: text/vnd.wap.wml; charset=utf-8');
require './gbk2utf.php';
$text = <<<WMLTEXT
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head>
<meta http-equiv="Content-Type" content="text/vnd.wap.wml; charset=utf-8"/>
</head>
<card title="">
<p>
请输入:<br/><!--Chinese, meaning "please input"-->
<input name="something"/>
<anchor>提交<!--Chinese, meaning "submit"-->
<go href="2.php" method="post">
<postfield name="something" value="$(something)"/>
</go>
</anchor>
</p>
</card>
</wml>
WMLTEXT;
echo gbk2utf($text);
?>
//----2.php---------
<?php
//error_reporting(E_ALL);
error_reporting(0);
require './gbk2utf.php';
header('Content-Type: text/vnd.wap.wml; charset=utf-8');
$text = urldecode($_POST['something']);
$c = mb_detect_encoding($text);
$text = iconv($c, 'gb2312', $text);
//$text = mb_convert_encoding($text, 'gb2312', $c);
$c1 = mb_detect_encoding($text);
$text = gbk2utf($text);
echo '<?xml version="1.0" encoding="utf-8" ?><!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"><wml><head><meta http-equiv="Content-Type" content="text/vnd.wap.wml; charset=utf-8"/></head><card title=""><p>', $c, $c1, $text, '</p></card></wml>';
?>
------解决方案--------------------
對PHP不熟,也許手機送出的不是UTF-8的編碼。
建議不防做簡單的頁面,在winwap中調試好。
------解决方案--------------------
以后需再关注,现在先帮你顶一下
------解决方案--------------------
没遇到过这种情况.
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
windows phone 7 闪光灯控制程序
写了个基于windows phone 7 照相管理程序(C#),手机闪光灯默认是自动的,希望每次打开程序时,程序自动...
-
SMGP长短信请教
目前API包使用是正常的。但是存在一个非常让人烦躁的问题.
长短信的问题.
比如我发的信息是200个中文,到了客户的...
-
求教 content-length, sid,类似这样的字段,想了解下,请帮忙推荐下该看那些资料?
求教 content-length, sid,类似这样的字段,想了解下,...
-
在10a上短信拦截,遇到编码问题,如何知道当前短信是ascii,还是unicode?
在10a上短信拦截,遇到编码问题,如何知道当前短信是ascii,还是unic...
-
问题:求救!!!关于短信回复的问题?请看下文描述,
目前做短信开发,遇到一个问题,发出的短信都是先存放在数据网关的发送表中,发送内容包括了...
-
ophone手机客户端与服务器的开发问题
大家好啊,我正在做一个简单的博客手机客户端,前台客户端已经做了点了,后台服务器端不知道该怎...
-
wml还是XHTML?请大家帮帮忙
最近接触到一个WAP 营业厅。
从网上了解到目前用于开发的语言有WML和XHTML
从目前主流来看: 是用WM...
-
wap2.0(xhtml)中不支持select的onpick怎么办?有什么替代办法马?
我倒有一个思路,就是在xhtml中使用wml标签,可是好像没有?
请教高手...
-
手机应用开发好了,在哪里发布比较好,还有如何产生收入啊
android手机应用开发好了,在哪里发布比较好,还有如何产生收入啊
------解决...
-
手机网络游戏的CMWAP连接,是用的Socket吗?
我看现在好多手机网络游戏,比如"武林OL",就可以直接选择CMWAP来玩,数据传输的速度还很...