1

入力フィールドを追加し、追加の変数を uploadifive.php ファイルに渡す方法の答えを探し続けてきました。ただし、投稿されたソリューションを機能させることができず、ほとんどの場合、見つけたソリューションが機能または解決済みとしてリストされることはありませんでした。

uploadive.php ファイルに渡された入力フィールドの内容を取得する方法を教えてください。

ここに私のHTMLがあります

<input type="text" name="student" id="student" placeholder="Your Student ID" value="" />
<input id="file_upload" name="file_upload" type="file" multiple="true">
<a style="position: relative; top: 8px;" href="javascript:$('#file_upload').uploadifive('upload')">Upload Files</a>

ここにジャバスクリプトがあります

<?php $timestamp = time();?>
    $(function() {
        $('#file_upload').uploadifive({
            'auto'     : false,
            'method'   : 'post',
            'formData' : {
                'timestamp' : '<?php echo $timestamp;?>',
                'token'     : '<?php echo md5('unique_salt' . $timestamp);?>',
                'student'   : $('#student').val()
                      },
                'queueID'          : 'queue',
                'uploadScript'     : 'uploadifive.php',
                'onUploadComplete' : function(file, data) { console.log(data); }
            });
        });

これがphpファイルで使用しようとしている方法ですが、値が渡されていません

$_POST['student']

誰かが私が間違っていることを教えてくれたら、これを機能させる方法を教えていただければ幸いです。

ありがとう、ゲイリー

4

5 に答える 5

1

ページの読み込み時に#student入力フィールドの値が uploadify formData に渡されるため、コードが正しく機能していません。その瞬間、フィールドの値は空であるため、PHP スクリプトで空の値を取得します。

アップロードの開始時にフィールドの値を正確に読み取る必要があります。そのためには、uploadify オブジェクトのonUploadStartメソッドを実装する必要があります。

詳細については、ドキュメントを確認してください。formData を動的に設定する例もあります。

于 2013-09-27T08:13:33.160 に答える
0

onUpload など、初期化に何かを追加しようとすることを忘れてください。うまくいきません。Uploadifive フォーラムにアクセスすると、作成者からの一貫性のない回答がいくつか見つかりますが、これらには構文エラーが含まれているようで、いずれも機能しません。

初期化から formData を完全に削除し、アップロード リンクで呼び出される別の関数に移動します。この投稿で詳細な説明を見つけることができます

于 2014-03-17T15:38:36.987 に答える
0
$('#file_upload') is undefined at the moment when you call the function 

document.readyすべてのdom要素がロードされ、jqueryを使用して参照できるように、使用を検討する必要があります

javascript:$('#file_upload').uploadifive('upload') of code is also unnecessary 

ドキュメントを読んで、彼らの[demo][1]でデモを見てください。彼らはuploadifiveを定義しています

[1]: http://www.uploadify.com/demos/最後に dom を使用していないのはそのためです。document.ready

于 2013-09-27T08:07:46.967 に答える
0
    <?php $timestamp = time();?>
    function uploadFiles() {
        $('#file_upload').data('uploadifive').settings.formData = { 
            'title'     : $('#student').val(),
            'timestamp' : '<?php echo $timestamp;?>',
            'token'     : '<?php echo md5('unique_salt' . $timestamp);?>'
        };
        $('#file_upload').uploadifive('upload');
    }   
于 2014-01-02T21:18:33.727 に答える