如何在php中读取FormData对象

时间:2013-07-24 12:36:22

标签: php javascript jquery

大家好我发布了一个示例代码,我在其中使用Ajax JQuery上传文件。一切正常,但我想在我的PHP代码中读取文件内容。那么阅读它的语法是什么?

    <?php

?>

<!--================================html==================================================-->

<html>
<head>
    <title>AJAX UPLOAD</title>
    <script type="text/javascript" src="jquery-2.0.2.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
            $('#Button_').click(function(){
                alert("hi");
                var name= document.getElementById('File_');
                 var alpha=name.files[0];
                console.log(alpha.name);
                 var data= new FormData();
                 data.append('file',alpha);
                 $.ajax({
                 url:'process.php',
                 data:data,
                 processData:false,
                 contentType:false,
                 type:'POST',
                 success:function(msg){
                 alert(msg);
                 }
                 });
            });
        });
    </script>
</head>
<body>
    <input type="file" name="File" id="File_"/>
    <input type="button" name="Button" id="Button_" value="UPLOAD">
</body>
</html>

现在我不知道如何读取通过Ajax发送的文件数据。所以请让我知道代码

1 个答案:

答案 0 :(得分:20)

传递给FormData.append()的第一个参数是传递给服务器的表单元素的名称。因此,data.append('file', alpha)相当于<input type="file" name="file"> - 您将'file'传递给append(),因此'file'是您的输入名称。

您应该在$_POST['file']$_FILES['file']找到您的资料。下次在提交后尝试var_dump($_POST);以查看数组。 :)

在这里了解php中的文件上传:http://php.net/manual/en/features.file-upload.php