Monitoring File Uploads using Ajax and PHP
本文讲述如何通过HTML表单上传本地文件到服务器,并使用Ajax监视文件的上传情况,为用户显示上传进度条.

所需环境软件
1.PHP 5.2
2.APC 3.0.13或更高版本
3.Prototype JavaScript library (version 1.6.0)[下载]
实现步骤:
1.安装PHP的APC扩展
2.使用APC监视文件上传进度
3.编写相关的PHP类
4.创建传统的上传表单
5.扩展表单实现进度条效果
1.安装PHP的APC扩展
Windows平台
下载php_apc.dll:http://pecl4win.php.net/ext.php/php_apc.dll
编辑php.ini,添加
extension=php_apc.dll
UNIX平台
# pecl install apc
编辑php.ini,添加
extension=apc.so
Linux平台(Fedora 
下载php-pecl-apc-3.0.15-1.fc8.remi.i386.rpm:http://rpm.pbone.net/index.php3/stat/4/idpl/5437964/com/php-pecl-apc-3.0.15-1.fc8.remi.i386.rpm.html
# pecl install apc
编辑php.ini,添加
extension=apc.so

在线Ajax图标制作:
http://ajaxload.info



ZhouLiang.NameBETA.png)
WEB2.0图标在线制作:
http://h-master.net/web2.0/
Web2.0V2Logo+CreatrBETA.png)
FtpManBETA.png)
秘诀就是:加个倒影,打个BETA,就是WEB2.0,世界多简单。

->
XAJAX是一个比较优秀的AJAX toolkit工具,安装很简单,就是吧他的xajax.inc.php文件copy到你制定的目录下面就可以了。
下面举两个列子来说明如何使用
1)helloworld
helloworld是每一个编程语言所必须的,所以这里也不例外,我会就代码给出解释
[coolcode]
< ?php
// helloworld.php demonstrates a very basic xajax implementation
// using xajax version 0.1 beta4
// http://xajax.sourceforge.n...
require ('xajax.inc.php'); #必须的,放到脚本的最前面
#调用函数,该函数被javascript调用
function helloWorld($isCaps)
{
if ($isCaps)
$text = "HELLO WORLD!";
else
$text = "Hello World!";
$objResponse = new xajaxResponse();
$objResponse->addAssign(“div1″,”innerHTML”,$text); #给id为div1的html元素的innerHTML属性分配$text指,其他的方法请参考前面贴出的XAJAX介绍
阅读全文…

原文:http://xajax.sourceforge.net/
英文原版:Copyright © 2005 J. Max Wilson
中文引用:http://www.chinahtml.com/webdesign/3/2006/javascript-11398213503517.shtml
简体中文翻译:HonestQiao(乔楚)/2005-12-7 17:23/(第一版)
什么是xajax?
xajax如何工作?
为什么我要使用xajax代替其他PHP的Ajax库?
如何在我的PHP脚本之中使用xajax?
如何异步更新内容?
如何异步处理表单数据?
如何给xajax增加定制功能?
我能在私有或者收费产品之中使用xajax吗?
阅读全文…
写Ajax程序,不管是高级程式,还是像留言版这样的简单代码,都避免不了的需要对表格数据进行操作。通过DOM方法,可以方便的操控表单对象,利用createTextNode+appendChild方法添加格表格元素。但是,要注意的是,正如createTextNode的表面意思,它所创建的都是元素内容都是TXT格式的,就算在里面加入HTML代码,浏览器也不会解析。如果要添加HTML内容,就只能选择innerHTML了。另外,为了IE浏览器兼容,必须对表格的tBodies[0]对象操作,而不是表格本身。本文收录了两段代码,实现方式不同,具体如下:
阅读全文…
->
本文以列表的方式介绍了XML DOM对象的属性
阅读全文…

本文以列表的方式介绍了XML DOM对象的方法
阅读全文…
产生乱码的原因
用XMLHTTP对象Post表单的时候,是默认的用UTF-8字符来发送的。如果你的网页本来就是用的UTF-8编码的话,那么接收到的数据是正常的;如果你的网页编码是GB2312的话,问题就来了,POST过来的数据是UTF-8,而你整个站点是用GB2312来显示,那么所有的中文字符将全部变成乱码。
解决的方法
开始时候我有点偏激,一味的想改变XMLHTTP对象Post表单的发送方式,使它以GB2312来发送,完全找不到门路。后来经过论坛的朋友提醒,在后台接收数据时把编码转换,效果难道不是一样么。
后台语言如果是PHP,用 iconv( “UTF-8″, “gb2312″ , $_POST["post"]) 这个函数转换一下,轻松解决。至于ASP或其他后台语言的话,我并不熟悉,原理是一样的,在接收到数据后先转换编码再使用。
PS:XMLHTTP对象Post表单时,记得要增加2个表头设置^_^
var post=”Apple=苹果&Banana=香蕉”;
xmlObj.open (‘POST’,URL,true);
xmlObj.setrequestheader(“content-length”,post.length);
xmlObj.setrequestheader(“content-type”,”application/x-www-form-urlencoded”);
xmlObj.send (post);