私はSWFアップロードを使いこなしていましたが、本当に好きです。非常に小さな問題でファイルアップロードクラスに簡単に適用できました。しかし私が抱えている問題は、アップローダーにエラーを返すことができるようにする必要があるため、ファイルが実際に完全にアップロードされなかったかどうかをユーザーが知っています。 、等。 SWFアップロードの作者が提供する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 Uploadは500のエラーを返しますが、ファイルはまだアップロードされています。 – Throttlehead
ヘッダーを呼び出した後にメッセージを 'echo'するだけです(あなたの 'SWFアップローダー'は便利ではありませんが、少なくともエラー関数が何であるかは分かります)。 – Wrikken
私はそれを理解しました。私も彼らのウェブサイトで提供するハンドラスクリプトを使用していました。その中にuploadSuccessハンドラ関数があります。それはちょうど「完了」を出力していた。 serverData変数を渡すことによって、完全に動作します。ありがとう! – Throttlehead