javascript - PHP - AJAX - JAVASCRIPT - $_FILES 空白

标签 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);
?>

最佳答案

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

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); 
?>

注意:- 检查您的浏览器控制台(响应选项卡)。

关于javascript - PHP - AJAX - JAVASCRIPT - $_FILES 空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36447049/

相关文章:

javascript - 禁用双指缩放以放大 highstock/highcharts

需要全局匹配帮助的 JavaScript 正则表达式

Javascript:将 Math.sqrt 转换为 int?

jquery ajax $.post 不工作 IE10

ajax - 如何取消使用 Dajaxice 进行的 Ajax 调用?

php - 从数据库动态填充 <select>

javascript - 包括来自外部 ASP 页面的菜单内容,保持菜单项被选中

php - 如何为从 mySQL 获取数据的 'select' 框创建占位符?

php - 基于用户输入的加权数组

javascript - 当用户单击 'submit' - javascript 或 php 时,使用其上方文本区域中的文本创建一个新的 div