3
我一直在搞SWF上傳,我真的很喜歡它。我能夠非常輕鬆地將它應用於我的文件上傳類,而且幾乎沒有問題。然而,我遇到的問題是我需要能夠將錯誤發送給上傳者,以便用戶知道他們的文件是否由於諸如太大或格式錯誤等原因而未能完全上傳等等。我閱讀了SWF Upload的作者提供的PHP示例腳本,但我無法弄清楚如何將錯誤傳回給它。這是錯誤處理功能:SWF上傳:返回錯誤
/* Handles the error output. This function was written for SWFUpload for Flash Player 8 which
cannot return data to the server, so it just returns a 500 error. For Flash Player 9 you will
want to change this to return the server data you want to indicate an error and then use SWFUpload's
uploadSuccess to check the server_data for your error indicator. */
function HandleError($message) {
header("HTTP/1.1 500 Internal Server Error");
echo $message;
}
因此,uploadSuccess函數期望從服務器的響應。我將如何去編碼和發送說,使用「header()」響應?
如果我用這個:
header("HTTP/1.1 200 Uploaded File was Successful");
SWF上傳返回成功,但該消息未通過來到uploadSuccess功能。
HttpResponse :: setCache(true); HttpResponse :: status(200); HttpResponse :: setContentType('text/html'); HttpResponse :: setData('這是錯誤文本'); HttpResponse :: send(); 如果我嘗試這樣的事情,SWF上傳返回500錯誤,但該文件仍然上傳。 – Throttlehead
只需在標題調用之後'echo'你的消息就好了(不要讓你的'SWF上傳器'方便,但我認爲至少是錯誤函數的作用)。 – Wrikken
我已經想通了。我正在使用他們在其網站上提供的處理程序腳本,並在其中找到了uploadSuccess處理函數。它只是輸出「完成」。通過將它傳遞給serverData變量,它可以完美地工作。謝謝! – Throttlehead