当前位置: 首页 > 图文教程 > 网络编程 > AJAX技术 > php ajax无刷新上传图片实例代码

AJAX技术
用Ajax读取XML格式的数据
Ajax Hacking
一个有趣的Ajax Hack示范
ajax代理程序,自动判断字符编码
php与ajax一些经验
Ajax+Asp源代码]读取数据库内容的表格(没有用框架)
xajax的FORM例子
ajax的 responseXML返回接受 asp
PHP Ajax实现页面无刷新发表评论
AJAX技术框架及开发工具
AJAX开发简略 (第一部分)
用 ajax 的方法解决网页广告显示的问题
如何解决远程页面抓取中的乱码问题
一个方便AJAX开发的通用类
AJAXRequest v0.2
一个简单的AJAX请求类
一个Ajax类
AJAX 常用函数
[ASP.NET Ajax] ECMAScript基础类以及Asp.net Ajax对类<Object>的扩展
AJAX客户端说明,XMLHttpRequest对象

AJAX技术 中的 php ajax无刷新上传图片实例代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 173 ::
收藏到网摘: n/a

将index.html和upload.php文件保存到支持php的空间的同级目录,测试运行即可 AJAX 客户端页面代码: index.html
复制代码 代码如下:

<html>
<body>
<h1>Ajax file upload sample</h1><br/><input id="uplaod" name="btn_send" type="button" value="上传测试"/>
<div id=result></div>
<PRE class=js name="code"><SCRIPT LANGUAGE=JavaScript>
// 上传函数
function btn_send.onclick() {
data = ""
spliter = "-------7d8d733180846"
datadata = data + spliter + "\r\n"
datadata = data + "Content-Disposition: form-data; name=\"photofile\"; filename=\"C:\\a.txt\"\r\n"
// datadata = data + "Content-Type: image/pjpeg" + vbCrLf
datadata = data + "Content-Type: text/plain" + "\r\n" + "\r\n"
text = "My name is Wilson Lin."
postLength = text.length + data.length + 2 + spliter.length + 4
package = data + text + "\r\n" + spliter + "--\r\n"
alert(package)
// 把XML文档发送到Web服务器
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("POST","./upload.php",false);
xmlhttp.setRequestHeader("Content-Type", "multipart/form-data; boundary=-----7d8d733180846");
xmlhttp.setRequestHeader("Content-Length", postLength);
xmlhttp.send(package);
// 显示服务器返回的信息
result.innerHTML=xmlhttp.ResponseText;
}
</SCRIPT>
</PRE>
</body>
</html>

PHP服务器端代码: upload.php
复制代码 代码如下:

<?php
// $_FILES['photofile']:是获得上传图片的数组
// $uploadfile:存放地址
$uploadfile = "D:/".$_FILES['photofile']['name'];
copy( $_FILES['photofile']['tmp_name'], $uploadfile );
echo "URL: <a href='http://localhost/".$_FILES['photofile']['name']."' target='_blank'>".$_FILES['photofile']['name']."</a><br/>";
?>
Upload successed!