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']あります$_FILES['file']。次回var_dump($_POST);は、送信後に配列を確認してみてください。:)

PHP でのファイルのアップロードについては、こちらをご覧ください: http://php.net/manual/en/features.file-upload.php

于 2013-07-24T12:46:32.700 に答える