PHP - AJAX - JAVASCRIPT - $ _FILES空白

时间:2016-04-06 09:32:04

标签: javascript php ajax

我已经看到很多关于这个问题的问题,但它们似乎都没有解决我的问题。这一切看起来都非常简单,但我只是得到一个空白数组,我在这里错过了一些非常简单的东西吗?

感谢。

以下是html / javascript代码:

   <script type="text/javascript" src="/javascript/jquery.js"></script>

   <form enctype="multipart/form-data" action="" id="frmProduct" method="post">
        <input type="file" id="pdffile" name="pdffile" size="50" />                         
        <br />                         
        <input id="pdffileupload" type="submit" value="Upload" />      
        </form>

<script>
$('#pdffileupload').bind('click', function () 
{
   var files=document.getElementById('pdffile').files[0];
   var fd = new FormData();

    fd.append( "pdffile", files);

   $.ajax({
      url: '/info.php',
      type: 'POST',
      cache: false,
      data: fd,
      processData: false,
      contentType: false,
      success: function(data)   { alert("YES"); },
      error: function(data){ alert("NO"); }
   });
    return false;
});
</script>

&安培; PHP info.php

<?php 
var_dump($_FILES);
?>

2 个答案:

答案 0 :(得分:0)

你可以试试这个:

<?php print_r($_FILES); ?>

而不是

<?php var_dump($_FILES); ?>

因为 var_dump 不能与 $ _ FILES 一起使用。

答案 1 :(得分:0)

需要进行更改(只需通过尝试我的所有建议检查一次): -

1.在同一个文件夹中放置两个文件(相同的工作目录)。

代码更改: -

 <script src="https://code.jquery.com/jquery-1.12.0.min.js"></script> <!-- add jquery library like this -->

   <form enctype="multipart/form-data" action="" id="frmProduct" method="post">
        <input type="file" id="pdffile" name="pdffile" size="50" />                         
        <br />                         
        <input id="pdffileupload" type="submit" value="Upload" />      
        </form>

<script>
$('#pdffileupload').bind('click', function () 
{
   var files=document.getElementById('pdffile').files[0];
   var fd = new FormData();

    fd.append( "pdffile", files);

   $.ajax({
      url: 'info.php', // remove /
      type: 'POST',
      cache: false,
      data: fd,
      processData: false,
      contentType: false,
      success: function(data)   { alert("YES"); },
      error: function(data){ alert("NO"); }
   });
    return false;
});
</script>

在php中

<?php 
print_r($_FILES); 
?>

注意: - 检入浏览器控制台(响应标签)。