FuelPHP Plupload Packageを作った
巨大ファイルや複数ファイルのアップロードにPluploadが非常に使えるのでFuelPHPのパッケージを作ってみた。
必要なもの
設置方法
次の位置においてください
/fuel/packages/plupload
jsフォルダを/public/assets/plupload
へ
jQueryとjQuery UIについては、適当にCDNなりローカルからの読み込み等を行って下さい
実装例
/fuel/app/classes/controller/plupload.php
<?php class Controller_Plupload extends Controller { function action_index() { return View::forge('plupload'); } static function upload_callback($filename) { // アップロード終了時処理 // $filenameに保存されたファイル名を返す } function action_upload() { Plupload::upload('Controller_Plupload::upload_callback'); } }
/fuel/app/views/plupload.php
<!DOCTYPE HTML> <html lang="ja-JP"> <head> <meta charset="UTF-8"> <title>Plupload</title> ここにjQueryとjQuery UIの読み込み処理を挿入 <?php echo Plupload::insert_header(); ?> </head> <body> <form method="post" action="examples_dump.php"> <div id="uploader" style="height: 330px; width: 500px;"> <p>You browser doesn't have Flash, Silverlight, Gears, BrowserPlus or HTML5 support.</p> </form> </body> </html>
/fuel/app/config/plupload.php(/fuel/packages/plupload/config/plupload.phpからコピーして編集でもよい)
<?php return array( 'url' => \Uri::create('plupload/upload'), 'ui' => 'jqueryui', );