Uploadify で追加の投稿データをサーバーに送信する際の問題
質問
ユーザーが画像とそれらの画像を送信するためのカテゴリフィールドをアップロードできるページでuploadifyを使用しています。これで、uploadify が「scriptData」メソッドを提供し、キーと値のペアを Uploadify.php スクリプトに送信できることがわかりました。しかし、問題は、scriptData メソッドがページの読み込み (アップロードの初期化) 時に値を取得することです。したがって、ユーザーがページ上で値を変更しているときでも、scriptData にはページの読み込み時に存在したデフォルト値のみが保持されます。
とにかくこのあたりにありますか?
どうもありがとう!
考えられる解決策: マニュアルをさらに読んでいたところ、関数呼び出しを通じて設定を変更できることがわかりました。おそらく正しい軌道に乗っているでしょうか?
$('#fileInput').uploadifySettings('scriptData', getKeyValuePairs()).uploadifyUpload();
今取り組んでいます。
解決
あなたはuploadifyのコールバックhoockのうちの1つを介して、ユーザの入力の現在の状態を取得する必要があります。右のいずれかのために自分のドキュメントを参照してください。私は開く時は、それは、アップロードが開始されたユーザ入力毎回の現在の状態をチェックするように、より信頼性があると思います。それでも、あなたがそうでなければ、最後のアップロードが開始された後に行われ、ユーザーの入力が失われる、アップロードの進行中無効に他のユーザ入力に必要な、またはまだフォームを送信するために、ユーザーが必要な場合があります。
とにかく、私は私がonOpen
コールバックの上に置く彼らのフォーラム上でこれを見つけます:
$('#fileInput2').uploadifySettings(
'scriptData',
{'ext':$('#dirTimeStamp').val(), 'ext2':$('#txtEmail').val()}
);
最終的な実装は、(デモコードを使用して)次のようになります。
<input id="fileInput" name="fileInput" type="file" />
<script type="text/javascript">// <![CDATA[
$(document).ready(function() {
$('#fileInput').uploadify({
'uploader' : 'uploadify.swf',
'script' : 'uploadify.php',
'cancelImg' : 'cancel.png',
'auto' : true,
'folder' : '/uploads',
'onOpen' : function(){
$('#fileInput').uploadifySettings(
'scriptData',
{'ext':$('#dirTimeStamp').val(), 'ext2':$('#txtEmail').val()}
);
}
});
});
// ]]></script>
他のヒント
が横に開く時の内部scriptDataを更新するためのコードを入れて、あなたはまた、アップロードを開始する前にそれを行うことができます。あなたはfalseに設定し、自動、手動uploadifyUpload()
を呼び出す必要がありますので、この場合は行うことができます。
このスレッドのに受け入れられた答えを見てみましょう。