php_xmlhttp 乱码问题解决方法


Posted in PHP onAugust 07, 2009

resin在新版本中竟开始支持php了,偶感觉比较好玩,也是懒得在自己机器上再配置一组apache_php_mysql之流,毕竟以java为主做事情的嘛。于是将自己的一个php站点直接放resin里面做开发了,总体感觉还不错,基本功能没发现问题,但在继续优化过程中,想到了xmlhttp,便随手写了几个文件试一下,无刷新效果嘛,可是竟然遇到了中文乱码,于是五一一天就折腾这个了,也在中间从网站看了一些当前地球上的一些争争吵吵的事情,中美对弈,欧则看盘,一会儿顺着这边说,一会顺着那边扯,也有些意思,只是想,中国的80末以后的这些人会长成什么样子,靠吃6、70年代人赚下的本活着,还以享乐为荣,关键是还沾沾自喜,这类人不是传说中的垃圾么?懒得说了,还是看乱码吧
文件有三个,一个是htm,一个是php,一个是js,js用在htm中,php为服务端。
a.htm

<html> 
<head><title></title> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<script language="javascript" src="a.js" charset="utf-8"></script> 
</head> 
<body> 
<span id="show"></span> 
<form name="aForm"> 
<input type="text" name="name"><br> 
<input type="button" name="btn" value="ok" onclick="aa()"> 
</form> 
<script language="javascript"> 
<!-- 
function aa(){ 
var o = new Ajax(); 
o.url = "a.php"; 
o.parseParameters(document.all.aForm); 
o.post(); 
} 
--> 
</script> 
</body> 
</html>

a.js
function getXMLHTTPRequest(){ 
var xmlHttp; 
if(window.ActiveXObject){ 
try{ 
xmlHttp = new ActiveXObject("MSXML2.XMLHTTP"); 
}catch(e){ 
try{ 
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
}catch(e){ 
xmlHttp = false; 
} 
} 
}else{ 
try{ 
xmlHttp = new XMLHttpRequest(); 
}catch(e){ 
xmlHttp = false; 
} 
} 
if(!xmlHttp){ 
return false; 
}else{ 
return xmlHttp; 
} 
} 
function Ajax(){ 
this.url; 
this.params = ""; 
this.parseParameters = function(thisform){ 
for(var i = 0; i < thisform.elements.length; i++){ 
var e = thisform.elements[i]; 
this.params += (e.name + "=" + e.value); 
if(i != (thisform.elements.length - 1)) 
this.params += "&"; 
} 
}; 
AjaxObj = getXMLHTTPRequest(); 
AjaxObj.onreadystatechange = processRequest; 
this.post = function(){ 
AjaxObj.open("post", this.url, true); 
AjaxObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=utf-8'); 
if(this.params.length > 0) 
AjaxObj.send(this.params); 
else 
AjaxObj.send(); 
} 
} 
function processRequest(){ 
if(AjaxObj.readyState == 4){ 
if(AjaxObj.status == 200){ 
if(AjaxObj.responseText != ""){ 
document.getElementById("show").innerHTML = ""; 
document.getElementById("show").innerHTML = AjaxObj.responseText; 
} 
}else{ 
alert("Exception."); 
} 
}else{ 
document.getElementById("show").innerHTML="Loading......"; 
} 
}

a.php
<?php 
header("Content-Type:text/html; charset=utf-8"); 
$name = $_POST['name']; 
echo $name; 
?>

全用utf-8编写存储,但死活就是不行,总说有问题,总出来有乱码,一天下来,脑袋晕乎乎滴,中午时候胳膊上绑了3kg沙袋,挥羽毛球拍挥了200,肌肉有点胀的感觉了,嗯,说明有锻炼效果了,过些天等发了薪水再去买一支练习拍,我常用的at700大约90g左右,练习拍在160g左右,应该比较有练习效果吧,不过右胳膊眼见着要比左胳膊粗了,貌似还需要一个大点的杠铃,把左胳膊也练一下才好

吃完晚饭,一怒之下,就把这三文件传一php的服务器上,一试,完全正常,没有乱码,我,我不说了,看来是resin的原因,呆会再找找,看一下Quercus有没最新的版本,是不是能支持的更好一些。

PHP 相关文章推荐
PHP 得到根目录的 __FILE__ 常量
Jul 23 PHP
php 短链接算法收集与分析
Dec 30 PHP
php随机输出名人名言的代码
Oct 07 PHP
在PHP上显示JFreechart画的统计图方法
Nov 03 PHP
php stripslashes和addslashes的区别
Feb 03 PHP
ThinkPHP无限级分类原理实现留言与回复功能实例
Oct 31 PHP
微信公众平台实现获取用户OpenID的方法
Apr 15 PHP
PHP内核探索:哈希表碰撞攻击原理
Jul 31 PHP
PHP和MySql中32位和64位的整形范围是多少
Feb 18 PHP
Laravel路由设定和子路由设定实例分析
Mar 30 PHP
php app支付宝回调(异步通知)详解
Jul 25 PHP
PHP命令行与定时任务
Apr 01 PHP
PHP 生成的XML以FLASH获取为乱码终极解决
Aug 07 #PHP
php 全局变量范围分析
Aug 07 #PHP
PHP 多维数组排序实现代码
Aug 05 #PHP
PHP 简单数组排序实现代码
Aug 05 #PHP
用php获取本周,上周,本月,上月,本季度日期的代码
Aug 05 #PHP
一些 PHP 管理系统程序中的后门
Aug 05 #PHP
黑夜路人出的几道php笔试题
Aug 04 #PHP
You might like
PHP抓取网页、解析HTML常用的方法总结
2015/07/01 PHP
提高php编程效率技巧
2015/08/13 PHP
yii2 数据库读写分离配置示例
2017/02/10 PHP
PHP基于SMTP协议实现邮件发送实例代码
2017/04/27 PHP
PHP编程获取图片的主色调的方法【基于Imagick扩展】
2017/08/02 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
2017/09/22 PHP
PHP ADODB实现事务处理功能示例
2018/05/25 PHP
提高代码性能技巧谈—以创建千行表格为例
2006/07/01 Javascript
红米手机抢购的js代码
2014/03/10 Javascript
基于jquery实现的树形菜单效果代码
2015/09/06 Javascript
实现div内部滚动条滚动到底部和顶部的代码
2017/11/15 Javascript
Bootstrap table中toolbar新增条件查询及refresh参数使用方法
2018/05/18 Javascript
javascript实现日历效果
2019/06/17 Javascript
在elementui中Notification组件添加点击事件实例
2020/11/11 Javascript
node.js通过Sequelize 连接MySQL的方法
2020/12/28 Javascript
python通过urllib2爬网页上种子下载示例
2014/02/24 Python
在Python中使用模块的教程
2015/04/27 Python
使用Python将数组的元素导出到变量中(unpacking)
2016/10/27 Python
Python3学习笔记之列表方法示例详解
2017/10/06 Python
Django Aggregation聚合使用方法解析
2019/08/01 Python
python图形绘制奥运五环实例讲解
2019/09/14 Python
Python中BeautifuSoup库的用法使用详解
2019/11/15 Python
python正则表达式 匹配反斜杠的操作方法
2020/08/07 Python
python如何实现图片压缩
2020/09/11 Python
基于HTML5代码实现折叠菜单附源码下载
2015/11/27 HTML / CSS
波兰电子产品购物网站:Vobis
2019/05/26 全球购物
Footshop罗马尼亚:最好的运动鞋选择
2019/09/10 全球购物
智能家居、吸尘器、滑板车、电动自行车网上购物:Geekmaxi
2021/01/18 全球购物
什么是岗位职责
2013/11/12 职场文书
学习十八大精神心得体会
2013/12/31 职场文书
师范教师专业大学生职业生涯规划范文
2014/03/02 职场文书
我的祖国演讲稿
2014/05/04 职场文书
2014镇副书记群众路线专题民主生活会思想汇报
2014/09/23 职场文书
离婚协议书范文2016
2016/03/18 职场文书
php 获取音视频时长,PHP 利用getid3 获取音频文件时长等数据
2021/04/01 PHP
MongoDB数据库常用的10条操作命令
2021/06/18 MongoDB