Uploadify防止未来的Ajax请求

时间:2012-08-16 21:49:49

标签: php jquery session uploadify

我正在尝试使用Uploadify来处理Ajax文件。但是,我遇到了一个非常奇怪的情况。这是我的代码:

$.ajax({
    type: "POST",
    data: "choice="+choice,
    url: "getformdata.php",
    cache: false,
    async: false,
    success: function(msg) {

        $(".file-upload").each(function() {
            var $p = $(this).parent();
            $(this).uploadify({
                'swf': 'uploadify.swf',
                'uploader': 'uploadify.php',
                'fileTypeDesc': '.doc, .docx, or .pdf',
                'fileTypeExts' : '*.doc; *.docx; *.pdf',
                'onUploadError' : function(file, errorCode, errorMsg, errorString) {
                    alert('The file ' + file.name + ' could not be uploaded: ' + errorString);
                },
                'onUploadSuccess' : function(file, data, response) {
                    $($p).find("input[type='hidden']").val(data);
                    $($p).find(".file-name span").text(data);
                }
            });
        });
    }
});

目前,如果我尝试发出另一个Ajax请求,PHP会以某种方式不知道我的任何会话变量。一旦我取出.uploadify()方法,它就会突然再次知道我的会话变量。

到底究竟是什么原因造成的?有什么方法吗?

2 个答案:

答案 0 :(得分:0)

使用您发布的代码,您正在执行2个请求,一个在文件getformdata.php上,另一个在文件uploadify.php上,第二个是与uploadify一起打包的...它不使用session_start() ...所以我认为你的PHPSESSID被改变了......  此致

mimiz

答案 1 :(得分:0)

这是uploadify引擎中的一个错误。如果你看他们的网站,它会发生同样的事情。很多时候你使用controll,不知何故尝试加载两次swf并错误地调用你的URL所在的文件夹,如果你知道我的意思。