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 文件夹删除、php清除缓存程序
Aug 25 PHP
解析web文件操作常见安全漏洞(目录、文件名检测漏洞)
Jun 29 PHP
php实现MD5加密16位(不要默认的32位)
Aug 12 PHP
PHP禁止个别IP访问网站
Oct 30 PHP
php解析json数据实例
Aug 19 PHP
php判断类是否存在函数class_exists用法分析
Nov 14 PHP
PHP使用mkdir创建多级目录的方法
Dec 22 PHP
php ci 获取表单中多个同名input元素值的代码
Mar 25 PHP
微信 开发生成带参数的二维码的实例
Nov 23 PHP
php基于PDO实现功能强大的MYSQL封装类实例
Feb 27 PHP
php设计模式之组合模式实例详解【星际争霸游戏案例】
Mar 27 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
Mar 30 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引用计数器进行垃圾收集机制介绍
2012/09/19 PHP
php中array_multisort对多维数组排序的方法
2020/06/21 PHP
基于jQuery的history历史记录插件
2010/12/11 Javascript
javascript跨域刷新实现代码
2011/01/01 Javascript
Jquery时间验证和转换工具小例子
2013/07/01 Javascript
Javascript中拼接大量字符串的方法
2015/02/05 Javascript
jquery性能优化高级技巧
2015/08/24 Javascript
微信小程序 开发指南详解
2016/09/27 Javascript
简单的vue-resourse获取json并应用到模板示例
2017/02/10 Javascript
关于Sequelize连接查询时inlude中model和association的区别详解
2017/02/27 Javascript
常见的浏览器Hack技巧整理
2017/06/29 Javascript
前端主流框架vue学习笔记第二篇
2017/07/26 Javascript
AngularJS 控制器 controller的详解
2017/10/17 Javascript
vue实现长图垂直居上 vue实现短图垂直居中
2017/10/18 Javascript
微信小程序实现滑动切换自定义页码的方法分析
2018/12/29 Javascript
改变layer confirm弹窗按钮的颜色方法
2019/09/12 Javascript
wxPython 入门教程
2008/10/07 Python
python生成以及打开json、csv和txt文件的实例
2018/11/16 Python
python 进程间数据共享multiProcess.Manger实现解析
2019/09/23 Python
Python模拟FTP文件服务器的操作方法
2020/02/18 Python
Python基于locals返回作用域字典
2020/10/17 Python
教你一分钟在win10终端成功安装Pytorch的方法步骤
2021/01/28 Python
小米官方旗舰店:Xiaomi
2020/08/07 全球购物
市场部专员岗位职责
2013/11/30 职场文书
优秀实习生主要事迹
2014/05/29 职场文书
营销团队口号
2014/06/06 职场文书
小学新教师个人总结
2015/02/05 职场文书
律政俏佳人观后感
2015/06/09 职场文书
2016年寒假生活小结
2015/10/10 职场文书
开学第一周日记(三篇范文)
2019/08/23 职场文书
Python如何使用logging为Flask增加logid
2021/03/30 Python
Python+Appium新手教程
2021/04/17 Python
django上传文件的三种方式
2021/04/29 Python
详解前端任务构建利器Gulp.js使用指南
2021/04/30 Javascript
Redis IP地址的绑定的实现
2021/05/08 Redis
【js设计模式】SOLID五大设计原则
2022/03/24 Javascript