2010-11-20 41 views
0

我想第一次使用Uploadify。我對文件實際上傳沒有任何問題。這是完美的。我的問題是我的PHP腳本沒有從Uploadify中收到一個$ _REQUEST變量,這顯然意味着我無法跟蹤任何照片或刪除應該刪除的照片。下面是我使用的是什麼:

$('.upload').uploadify({ 
    'uploader' : 'uploadify/uploadify.swf', 
    'script' : 'upload.php', 
    'cancelImg' : 'uploadify/cancel.png', 
    'folder' : 'img/sections/' + page, 
    'auto'  : true, 
    'multi'  : false, 
    'method' : 'post', 
    'fileExt' : '*.jpg;*.jpeg;*.gif;*.png', 
    'onComplete': function(event, ID, fileObj, response, data) { 
      window.location.replace("upload.php");       
    } 
}); 

我想通過我的點擊功能(每個字段顯示當前的照片,當你點擊它淡出,並設定它發送的輸入域ID的PHP腳本顯示uploadify表單):

Uploader.clk = function() { 
    pic = $(this).find('input.upload').attr('id'); 
    field = "#" + pic; 
    $(field).uploadifySettings('scriptData' : { 'field' : field }); 
    // all my jQuery animations 
} 

當然,這對我不起作用,但Uploadify文檔留下了很多不足之處。我的問題肯定是在uploadifySettings調用中,因爲當我將其註釋掉時,其他所有東西都可以正常工作。即使我把

「scriptData」:{「富」:「棒」}

在我的設置

我仍然只得到一個會話ID和兩個字段名爲「UTMA」和「VSID」在我的$ _REQUEST數組。

所以我的問題是如何告訴我的PHP腳本它正在執行操作的字段?這裏

回答

0

兩個問題,就沒有必要選擇兩次的元素,你可以這樣做:

$(this).find("input.upload").uploadifySettings(...); 

而且你需要通過你的設置爲一個對象(這只是當前的標籤聲明),這樣:

Uploader.clk = function() { 
    $(this).find('input.upload') 
     .uploadifySettings({'scriptData' : { 'field' : field }}); 
    // all my jQuery animations 
} 

另外請注意,per the documentation你需要使用onSelectOnce反正:

如果通過uploadifySettings()更新scriptData選項,它將不會因與onOpen同步問題而更新。而是使用onSelectOnce函數在自動上傳過程中更改scriptData變量。

總體而言,這應該是這樣的:

$('.upload').uploadify({ 
    'uploader' : 'uploadify/uploadify.swf', 
    'script' : 'upload.php', 
    'cancelImg' : 'uploadify/cancel.png', 
    'folder' : 'img/sections/' + page, 
    'auto'  : true, 
    'multi'  : false, 
    'method' : 'post', 
    'fileExt' : '*.jpg;*.jpeg;*.gif;*.png', 
    'onComplete': function(event, ID, fileObj, response, data) { 
      window.location.replace("upload.php");       
    }, 
    'onSelectOnce': function(event,data) { 
      $(this).uploadifySettings({'scriptData' : { 'field' : field }}); 
    }   
}); 
+0

哈哈,我真的不知道爲什麼我做了額外的變量。挫折骨頭。這是更有意義的,但現在我的上傳甚至沒有開始(進度條進來,坐在那裏沒有%顯示)。現在是否正在等待我調用startUpload()方法? – 2010-11-20 01:24:09

+0

@Thomas - 你是否在頁面中發現任何JavaScrpt錯誤? – 2010-11-20 10:11:05