ファイルをスライスして BLOB を作成するRubaXa / jquery.fileapi
という便利なツールを見つけました。しかし、ドキュメントには、アップロードされたパーツをサーバー上で処理する方法に関する情報が不足しています。ページの例は を参照してurl: './ctrl.php'
いますが、開発者ページでその内容を確認することはできません。これまで、この (以下を参照) クライアント側スクリプトを使用しましたが、エラーはありませんでした。ファイルがスライスされ、firebug コンソールにいくつかの投稿リクエストが表示されました。それでうまくいくようです。しかし、受信したファイルパーツをサーバー上の PHP で処理するにはどうすればよいでしょうか?
インポートされたスクリプト:
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
<script>
window.FileAPI = {
debug: false // debug mode
, staticPath: 'jquery.fileapi-master/FileAPI/' // path to *.swf
};
</script>
<script src="jquery.fileapi-master/FileAPI/FileAPI.min.js"></script>
<script src="jquery.fileapi-master/jquery.fileapi.min.js"></script>
ファイルアップローダーの開始とセットアップ:
jQuery(function ($){
$('#uploader').fileapi({
url: 'stash.php',
autoUpload: true,
accept: 'video/*',
multiple: false, //only single file upload
chunkSize: .5 * FileAPI.MB //filesize of the blobs/chunks
});
});
HTML ファイルのアップロード「フォーム」:
<div id="uploader">
<div class="js-fileapi-wrapper">
<input type="file" name="files[]" />
</div>
<div data-fileapi="active.show" class="progress">
<div data-fileapi="progress" class="progress__bar"></div>
</div>
</div>