如何运用PHPAjax实现图片的无刷新上传

作为一个PHP程序员来说,他们肯定知道如何编写图片上传的代码。但是,基于无刷新的图片上传的代码可能会上手比较难。今天我们就为大家介绍如何运用PHP Ajax来实现这一功能。

从事德阳机房托管,服务器租用,云主机,虚拟空间,国际域名空间,CDN,网络代维等服务。

#t#PHP Ajax客户端页面代码: index.html

 
 
 
  1.    
  2.    
  3. Ajax file upload sample


     id="uplaod" name="btn_send" type="button" value="上传测试"/>   
  4.  id=result>
   
  •  class=js name="code"> LANGUAGE=JavaScript>   
  • // 上传函数   
  • function btn_send.onclick() {   
  • data = ""   
  • spliter = "-------7d8d733180846"   
  • datadatadata = data + spliter + "\r\n"   
  • datadatadata = data + "Content-Disposition: form-data; name=\"photofile\"; filename=\"C:\\a.txt\"\r\n"   
  • // datadatadata = data + "Content-Type: image/pjpeg" + vbCrLf   
  • datadatadata = 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;   
  • }   
  •    
  •    
  •    
  •  
  • PHP Ajax服务器端代码: upload.php

     
     
     
    1.    
    2. // $_FILES['photofile']:是获得上传图片的数组   
    3. // $uploadfile:存放地址   
    4. $uploadfile = "D:/".$_FILES['photofile']['name'];   
    5. copy( $_FILES['photofile']['tmp_name'], $uploadfile );   
    6. echo "URL:  href='http://localhost/".$_FILES['photofile']['name']."' target='_blank'>".$_FILES['photofile']['name']."
      ";   
    7. ?>  

    以上所写代码就是基本的PHP Ajax实现无刷新图片上传的具体解决办法。

    网页名称:如何运用PHPAjax实现图片的无刷新上传
    文章URL:http://www.shufengxianlan.com/qtweb/news48/8048.html

    网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

    广告

    声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联