【问题标题】:sending other input with $_FILES php使用 $_FILES php 发送其他输入
【发布时间】:2013-03-29 02:27:00
【问题描述】:

我正在使用以下 jquery 上传文件..

function ajaxFileUpload(jobid) {
    $("#loading")
        .ajaxStart(function () {
        $(this).show();
    })
        .ajaxComplete(function () {
        $(this).hide();
    });

    $.ajaxFileUpload({
        url: 'addjobrpc.php',
        secureuri: false,
        jobID: jobid,
        fileElementId: 'fileToUpload',
        dataType: 'json',
        success: function (data, status) {
            $('#imageid').val(data.imageid);
            if (typeof (data.error) != 'undefined') {
                if (data.error != '') {
                    alert(data.error);
                } else {
                    alert(data.msg);
                }
            }
        },
        error: function (data, status, e) {
            alert(e);
        }
    })

    return false;

}

我的表格是这样的...

<form name="form" action="" method="POST" enctype="multipart/form-data">

我使用 $_FILES['fileToUpload']['name']; 获取文件名但是我如何获得不属于文件上传的输入?例如 Jobid 是一个隐藏字段,但我似乎无法获取 addjobrpc 中的值。

谢谢

【问题讨论】:

    标签: php javascript jquery


    【解决方案1】:

    您使用的The particular plugin 似乎只支持一种输入元素的指定文件类型,而不是整个表单

    所以我认为你不能传递其他元素。

    【讨论】:

    • 问题是数据没有发送出去。
    【解决方案2】:

    我不熟悉这个插件,但是在快速查看源之后,它似乎无法发送任何额外的 POST 数据。

    我建议改用this plugin,它可以让你做这样的事情:

    new AjaxUpload('#upload_button_id', {
     action: 'addjobrpc.php',
     name: 'fileToUpload',
     // Additional data to send
     data: {
       jobID:jobid
     },
     // Submit file after selection
     autoSubmit: true,
     responseType: "json",
     onComplete: <success function goes here>
    });
    

    然后您可以使用$_POST['jobID'] 检索服务器上的数据。

    【讨论】:

    • 我支持你的假设。使用此插件似乎无法做到这一点(当然,除非您将 post vars 作为查询字符串的一部分附加到请求 URI ......但这是不正确的)。
    【解决方案3】:

    你设置它的方式,然后“jobID”作为参数发送到 ajaxFileUpload() 但没有一个 jQuery AJAX 函数知道如何处理它。不过,鉴于您提供的代码示例,我并没有真正看到 any 数据是如何发送到服务器的。能否提供更多代码?

    【讨论】:

    • 嗯,无视。我没有意识到您使用的是 jQuery 插件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 2017-04-10
    • 2019-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-18
    相关资源
    最近更新 更多