php生成xml乱码问题 按照XML格式,一个个echo出来吧 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.从数据库中显示的数据没有问题,但是存成xml文件后,在通过http访问就不行了,说是格式有问题不过将xml文件的头的编码方式encoding改成gb2312就能访问了,不知道什么原因。2.在mysql中通过工具phpadmin,来建表插入数据(带有中文的数据)的时候,显示的时候有乱码,不知道什么原因 把encoding=gb2312给echo出来,我也遇到过这个问题. 你的数据库用的什么编码存储数据?数据库里存储数据所用编码要和调用页面编码一致。xml文件默认是utf-8格式如果你数据库也是utf8存储,链接上数据库后加上mysql_query("set names 'utf8'");如果你存储xml以GBK编码,那么上面那句换成mysql_query("set names 'GBK'");另外,GB2312好些中文字符不支持,所以,如果你非要用GB2312,那么,XML编码设置成GBK,包涵的中文字符比GB2312多,这样就不会出现乱码了。我也是初学php,mysql,xml,最近被编码问题搞的头疼,上面是最近的一点经验总结,欢迎高手指正。 同LS,建议做以下修改:$dom = new DOMDocument('1.0','utf-8');$root = $dom->createElement("group");$dom->appendChild($root);mysql_query("set names 'utf8'"); $result0 = mysql_query("select name,desc,direct,mss,mss_port from base_info ");if (!$result0) { echo 'Could not run query: ' . mysql_error(); exit;}else{ $row = mysql_fetch_row($result0); $root->setAttribute('name',$row[0]); $root->setAttribute('desc',$row[1]); $root->setAttribute('direct',$row[2]); $root->setAttribute('mss',$row[3]); $root->setAttribute('mss_port',$row[4]);}$xmlfile='test5.xml';if ($dom -> save($xmlfile)) { echo 'Configuration successfully saved!'; iconv("utf-8","gb2312",$xmlfile);}还有要注意编码格式要保持一致,三个方面:数据库,代码中,文件保存格式。 本地php网站访问不了了,急~~~~~~~~~~~ 以C基础学PHP,求建议 关于mysql数据表的小问题 大家进来看看 统计问题? 相同数据匹配问题 使用localhost可以显示图片,但是使用实际ip地址访问就不能显示php获取的图片是什么原因? 提交表单,$_post[XX]获得的数据为乱码 我要安装MySQL、Apache、PHP等为什么总是不成功呢? 请给一个简单的例子,实现单窗口登陆,如果关闭此ie则退出 可以在HTML代码中调用php变量吗? 对你而言可能很简单!!! 新手: 如何加载pear中的mail.php文件 php mysql 编码问题
不过将xml文件的头的编码方式encoding改成gb2312就能访问了,不知道什么原因。
2.在mysql中通过工具phpadmin,来建表插入数据(带有中文的数据)的时候,显示的时候有乱码,不知道什么原因
如果你数据库也是utf8存储,链接上数据库后加上
mysql_query("set names 'utf8'");如果你存储xml以GBK编码,那么上面那句换成
mysql_query("set names 'GBK'");另外,GB2312好些中文字符不支持,所以,如果你非要用GB2312,那么,XML编码设置成GBK,包涵的中文字符比
GB2312多,这样就不会出现乱码了。我也是初学php,mysql,xml,最近被编码问题搞的头疼,上面是最近的一点经验总结,欢迎高手指正。
$dom = new DOMDocument('1.0','utf-8');
$root = $dom->createElement("group");
$dom->appendChild($root);
mysql_query("set names 'utf8'");
$result0 = mysql_query("select name,desc,direct,mss,mss_port from base_info ");if (!$result0) {
echo 'Could not run query: ' . mysql_error();
exit;
}
else
{ $row = mysql_fetch_row($result0);
$root->setAttribute('name',$row[0]);
$root->setAttribute('desc',$row[1]);
$root->setAttribute('direct',$row[2]);
$root->setAttribute('mss',$row[3]);
$root->setAttribute('mss_port',$row[4]);
}
$xmlfile='test5.xml';
if ($dom -> save($xmlfile))
{
echo 'Configuration successfully saved!';
iconv("utf-8","gb2312",$xmlfile);}
还有要注意编码格式要保持一致,三个方面:数据库,代码中,文件保存格式。