1

私がやろうとしていること

経由で投稿されるフォームがありajaxFormます。フォームにはfile入力フィールドが含まれていますが、データは の残りの情報で処理されていませんPOST

コード

HTMLフォーム

<form id="profilepicForm" action="user/profilepic.php" method="post" enctype="multipart/form-data">
    <input type="file" accept="image/gif, image/jpeg, image/png" name="file" />
    <input type="hidden" name="userid" value="<?php echo $_SESSION['user']['id'] ?>" />
    <input type="submit" value="Upload">
</form>

Javascript

var options = { 
    complete: function(response) {
        $("#profilepicMessage").html(response.responseText);
    },
    error: function(){
        $("#profilepicMessage").html("ERROR: unable to upload file");
    } 
};

$("#profilepicForm").ajaxForm(options);

PHP

$user_id    = $_POST['userid'];
$image      = $_FILES['file']['name'];

print_r($_POST);
exit;

何が起こっていますか

ここArray ( [userid] => 34 )で 34 は私の固有のものuseridです。したがって、フォーム投稿されていることはわかっていますが、ファイルは通過していません。

4

2 に答える 2

1

グローバル変数$_FILESを確認する必要があります。

于 2013-09-10T00:01:11.383 に答える
-1

それを管理するには、uploadifive のようなものを探す必要があります。現在、ajax はファイル転送を処理できないためです。

(これは完全に真実ではありません。ajax2 と html5 のファイル apiがありますが、問題を回避するには、uploadifive を探してください)。

于 2013-09-10T00:01:05.110 に答える