21

大家好,我发布了一个示例代码,其中我正在使用 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 发送的文件数据。所以请让我知道代码

4

1 回答 1

28

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

$_POST['file']你应该在and中找到你的东西$_FILES['file']。下次var_dump($_POST);提交后尝试查看数组。:)

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

于 2013-07-24T12:46:32.700 回答