我想用php,ajax获取图片上传的临时名称

时间:2014-12-10 06:43:39

标签: php jquery ajax

我想使用php和ajax获取图片上传的临时名称。我得到了upolad图片的文件名。但是没有获得图片上传的临时名称。我的代码如下。任何身体

main.php

    <form action=" " method="POST" enctype="multipart/form-data">
     <div class="form-group">
    <label for="exampleInputFile">File Upload</label>
    <input type="file" name="file" id="file" size="150">
    <p class="help-block">Only Excel/CSV File Import.</p>
    </div>
    <button type="button" class="btn btn-default"
     name="Import" value="Import" onclick="file_up()">
    Upload</button>
    </form>
   <div id="upload_show" >   </div>

     <script src="//code.jquery.com/jquery-1.11.0.min.js"></script>

   <script type="text/javascript">
   function file_up()
      {
      var file=$('#file').val();
      $.ajax({
     type: "POST",
    url: 'first_ajax.php',
    data:'file='+file,
    success: function(msg)
     { 
      $("#upload_show").html(msg);
     }
   });
  }
 </script>

first_ajax.php

<?php
    echo $file1 = $_POST['file'];   // for get file name
    echo $file1 = $_POST['file']['tmp_name']; //for get temp name
?>

您能否就如何获取$ _FILES [&#39;文件&#39;] [&#39; tmp_name&#39;]给我一个建议?

2 个答案:

答案 0 :(得分:0)

对于基于Ajax的文件上传,我使用了http://jquery.malsup.com/form/。更多功能,如上传进度等。

查看DEMO Page

答案 1 :(得分:0)

<form action=" " method="POST" enctype="multipart/form-data">
    <div class="form-group">
        <label for="exampleInputFile">File Upload</label>
        <input type="file" name="file" id="file" size="150">
        <p class="help-block">Only Excel/CSV File Import.</p>
    </div>
    <button type="button" class="btn btn-default"
            name="Import" value="Import" onclick="file_up()">
        Upload</button>
</form>
<div id="upload_show"></div>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript">
   function file_up() {
 var formData = new FormData($('#form')[0]);
                    $.ajax({
                        url: 'first_ajax.php',
                        type: 'POST',
                        data: formData,
                        async: false,
                        success: function(data) {
                            $("#upload_show").html(msg);
                        },
                        cache: false,
                        contentType: false,
                        processData: false
                    });
                }
</script>

使用$_FILES获取文件属性。例如:

$file_temp_name = $_FILES['file']['tmp_name'];

Bcause $_POST不包含您发布的任何文件信息。