3

この jQuery ajaxForm プラグインを使用してファイルをサーバーにアップロードし、ファイルのアップロードの進行状況も表示します (主にビデオのアップロード用であるため)。私はこれをすべてうまく機能させていますが、私がやろうとしていることを達成する方法がわかりません。

だから私ができるようにしたいのはこれです:

  1. フォームを送信 - データベースに新しい行を作成
  2. そこからuniqueIDを返し、ファイルのアップロードで送信します

これを行う必要がある/したい理由は、誰かがビデオをアップロードするときに、ビデオの詳細 (ビデオのタイトル、説明など) を入力し、ビデオのアップロード中にそれらを保存できるようにするためです。これを行うには、データベースに行を作成して、そのビデオの一意の ID を作成し、その値をビデオ アップロード自体に返して、ビデオ アップロードの詳細でその行を変更し、その一意の ID を使用できるようにする必要があります。ユーザーがビデオ情報を保存すると、どのビデオに移動するかがわかります。

$('.upload-page form.video-upload').ajaxForm({
url: "ajax/upload.php",
data: {videoID: "videoID"}, //would I be able to modify this from beforeSend?
beforeSend: function() {

//This would be where I would make an ajax call to create the row in the database
    //then i would need to return the value from here to the upload form somehow?   

},
uploadProgress: function(event, position, total, percentComplete) {

    //returns back video upload progress
},
complete: function(xhr) {

           //Upload complete        

}
}); 
4

1 に答える 1

0

jquery の append を使用してフォームに追加 <input type="hidden" value"(id)" name="video_id" />するか、フォームをシリアル化して文字列の末尾に ID を追加してみます。

ただし、相手側での動画アップロードの処理方法によっては、アップロードが完了する前に ID を取得できない場合があります。大きなファイルでこのようなことをしたことはありません。

于 2013-03-17T19:48:10.413 に答える