Heim >Backend-Entwicklung >PHP-Tutorial >php+ajax图片文件异步上传示例代码

php+ajax图片文件异步上传示例代码

WBOY
WBOYOriginal
2016-07-25 08:53:071275Durchsuche
  1. jQuery.extend({

  2. createUploadIframe: function(id, uri)
  3. {
  4. //create frame
  5. var frameId = 'jUploadFrame' + id;
  6. var iframeHtml = '

过程: (1 )前端文件的代码: test.php

复制代码

相应的HTML为:

复制代码

这样客户端就完成了。

(2) 在服务器端的doajaxfileupload.php 此处为了简便的检测是否真正的传值过来了,你可以将它存起来了。

  1. $file_infor = var_export($_FILES,true);
  2. file_put_contents("d:file_infor.php".$file_infor);
复制代码

这样打来刚生成的file_infor.php文件时,又看到了熟悉的信息了:

  1. array(
  2. 'name'=>'lamp.jpg',
  3. 'type'=>'image/pjpeg',
  4. 'tmp_name'=>'c:windowstempphpFA.tmp',
  5. 'error'=>0,
  6. 'size'=>3127
  7. )
复制代码

当然,真正的处理类于这样的:

  1. $upFilePath = "d:/";
  2. $ok=@move_uploaded_file($_FILES['img']['tmp_name'],$upFilePath);
  3. if($ok === FALSE){
  4. echo json_encode('file_infor'=>'上传失败');
  5. }else{
  6. echo json_encode('file_infor'=>'上传成功');
  7. }
  8. ?>
复制代码

方法二,利用iframe框架上传图片 html代码:

  • 复制代码

    index.js文件:

    1. $(function(){
    2. $("#upload_file").change(function(){
    3. $("#uploadFrom").submit();
    4. });
    5. });
    6. function stopSend(str){
    7. var im="php+ajax图片文件异步上传示例代码 ";
    8. $("#msg").append(im);
    9. }
    复制代码

    upload.php文件:

    1. $file=$_FILES['upfile'];
    2. $name=rand(0,500000).dechex(rand(0,10000)).".jpg";
    3. move_uploaded_file($file['tmp_name'],"upload/images/".$name);
    4. //调用iframe父窗口的js 函数
    5. echo "<script>parent.stopSend('$name')</script>";
    6. ?>
    复制代码

    方法三,原生态ajax文件上传

    1. Html5 Ajax 上传文件

    2. 浏览...
    3. 上传
  • 复制代码

    php代码:

    1. if(isset($_FILES["myfile"]))
    2. {
    3. $ret = array();
    4. $uploadDir = 'images'.DIRECTORY_SEPARATOR.date("Ymd").DIRECTORY_SEPARATOR;
    5. $dir = dirname(__FILE__).DIRECTORY_SEPARATOR.$uploadDir;
    6. file_exists($dir) || (mkdir($dir,0777,true) && chmod($dir,0777));
    7. if(!is_array($_FILES["myfile"]["name"])) //single file
    8. {
    9. $fileName = time().uniqid().'.'.pathinfo($_FILES["myfile"]["name"])['extension'];
    10. move_uploaded_file($_FILES["myfile"]["tmp_name"],$dir.$fileName);
    11. $ret['file'] = DIRECTORY_SEPARATOR.$uploadDir.$fileName;
    12. }
    13. echo json_encode($ret);
    14. }
    15. ?>
    复制代码


    Stellungnahme:
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn