1

我正在尝试实现 Blueimp jQuery 文件上传器,并且在让它在我的基于 PHP 的站点中工作时遇到了令人沮丧的时间。

我的主要问题是 AJAX。我想做的是上传后,

  1. 它会重定向到(比方说)abc.php
  2. 上传后(重定向页面之前),我想将文件名保存到 MySQL 数据库。

我知道如何用 PHP 处理数据库,但不知道我不能把我的 PHP 代码放在哪里。

对于第一个问题,我想我需要改变main.js

$(function () {

'use strict';

// Initialize the jQuery File Upload widget:
$('#fileupload').fileupload();

// Enable iframe cross-domain access via redirect option:
$('#fileupload').fileupload(
    'option',
    'redirect',
    window.location.href.replace(
        /\/[^\/]*$/,
        '/cors/result.html?%s'
    )
);    
    // Load existing files:
    $('#fileupload').each(function () {
        var that = this;
        $.getJSON(this.action, function (result) {
            if (result && result.length) {
                $(that).fileupload('option', 'done')
                    .call(that, null, {result: result});
            }
        });
    });


});

谢谢百万。。

4

1 回答 1

1

要进行重定向,您最好只提交表单并通过 PHP 处理所有内容,除非您丢失了我猜的进度指示器。

否则,如果我对您的理解正确,您只需使用回调函数在上传完成时执行 javascript 重定向。您只需向其中一种方法添加选项,例如:

$('#fileupload').fileupload({
done: function (e, data) {
    // Do redirect using either href or replace method

   // similar behavior as clicking on a link
   window.location.href = "/abc.php";

    }

});

请参阅有关重定向的答案:如何在 JavaScript/jQuery 中重定向到另一个网页?

于 2012-09-28T09:38:34.600 回答