ajax无刷新上传图片实例
www.jz123.cn 2008-09-07 来源: 中国建站 编辑整理 我要投递新闻
PHP服务器端代码: upload.php
将index.html和upload.php文件保存到apache工作目录,例子使用安装目录D:/Program Files/Apache Software Foundation/Apache2.2/htdocs/
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 // $_FILES['photofile']:是获得上传图片的数组 // $uploadfile:存放地址 $uploadfile = "D:/Program Files/Apache Software Foundation/Apache2.2/htdocs/".$_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!
|
上一篇:解决AJAX 跨域访问完整解决方案 下一篇:提高Ajax 性能,远离Web 服务漏洞