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代码(抓取网页中的邮箱地址)
Jul 17 PHP
php 在windows下配置虚拟目录的方法介绍
Jun 26 PHP
php 使用GD库为页面增加水印示例代码
Mar 24 PHP
php+memcache实现的网站在线人数统计代码
Jul 04 PHP
php+ajax实时输入自动搜索匹配的方法
Dec 26 PHP
php检查是否是ajax请求的方法
Apr 16 PHP
PHP的关于变量和日期处理的一些面试题目整理
Aug 10 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
Oct 10 PHP
php 使用html5实现多文件上传实例
Oct 24 PHP
php进程daemon化的正确实现方法
Sep 06 PHP
PHP使用SOAP调用API操作示例
Dec 25 PHP
laravel添加角色和模糊搜索功能的实现代码
Jun 22 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在字符串中查找另一个字符串
2008/11/19 PHP
PHP array 的加法操作代码
2010/07/24 PHP
PHP SOCKET编程详解
2015/05/22 PHP
PHP图形计数器程序显示网站用户浏览量
2016/07/20 PHP
实例讲解通过​PHP创建数据库
2019/01/20 PHP
用JTrackBar实现的模拟苹果风格的滚动条
2007/08/06 Javascript
javascript脚本编程解决考试分数统计问题
2008/10/18 Javascript
基本jquery的控制tabs打开的数量的代码
2010/10/17 Javascript
解决js中window.open弹出的是上次的缓存页面问题
2013/12/29 Javascript
javascript 实现子父窗体互相传值的简单实例
2014/02/17 Javascript
使用jQuery将多条数据插入模态框的实现代码
2014/10/08 Javascript
JQ选择器_选择同类元素的第N个子元素的实现方法
2016/09/08 Javascript
微信小程序 实现tabs选项卡效果实例代码
2016/10/31 Javascript
JS实现图片垂直居中显示小结
2016/12/13 Javascript
VueJs路由跳转——vue-router的使用详解
2017/01/10 Javascript
js仿小米手机上下滑动效果
2017/02/05 Javascript
Vue 实用分页paging实例代码
2017/04/12 Javascript
vue-axios使用详解
2017/05/10 Javascript
Angularjs自定义指令实现分页插件(DEMO)
2017/09/16 Javascript
Web开发使用Angular实现用户密码强度判别的方法
2017/09/27 Javascript
从setTimeout看js函数执行过程
2017/12/19 Javascript
JS实现的抛物线运动效果示例
2018/01/30 Javascript
Vue脚手架的简单使用实例
2018/07/10 Javascript
Vue 幸运大转盘实现思路详解
2019/05/06 Javascript
python实现识别手写数字 python图像识别算法
2020/03/23 Python
python 实现批量xls文件转csv文件的方法
2018/10/23 Python
Django框架视图层URL映射与反向解析实例分析
2019/07/29 Python
Python箱型图绘制与特征值获取过程解析
2019/10/22 Python
如何完美的建立一个python项目
2020/10/09 Python
python实现启动一个外部程序,并且不阻塞当前进程
2020/12/05 Python
python math模块的基本使用教程
2021/01/16 Python
手把手教你实现一个canvas智绘画板的方法
2019/03/04 HTML / CSS
双方协议书
2014/04/22 职场文书
25句企业管理语录:助你迅速打开思路,句句经典!
2020/01/14 职场文书
Python使用海龟绘图实现贪吃蛇游戏
2021/06/18 Python
Nginx 常用配置
2022/05/15 Servers