【问题标题】:ajaxForm unable to POST fileajaxForm 无法发布文件
【发布时间】:2013-09-09 23:56:38
【问题描述】:

我想要做什么

我有一个通过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] =&gt; 34 ),其中34 是我特定的userid。因此我知道表单 正在发布,但文件没有通过。

【问题讨论】:

标签: php javascript ajax jquery ajaxform


【解决方案1】:

你应该看看全局变量$_FILES

【讨论】:

【解决方案2】:

你必须寻找像 uploadifive 这样的东西来管理它,因为 ajax 目前无法处理文件传输

(这个不完全正确,有ajax2 and html5 file api,不过省事,找uploadifive)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-06
    • 2020-11-24
    • 1970-01-01
    • 2017-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多