CakePHPで作るシンプルなアップロードフォーム。

2012.05.08 / Labs

CakePHPでファイルをアップロードするための基本機能のみフォームのサンプルです。使用しているCakePHPのバージョンは2.1.2です。

 

データベースには「uploads」というテーブルを作り、ファイル名を保存するために「file_name」のカラムを設けています。

コントローラーの「UploadsController.php」には、アップロードされたファイル名の一覧のための「index」と、ファイルをアップロードするための「add」アクションを作ります。
(bakeで焼いたものをもとに、手を加えて作成してあります)

ファイルのアップロード処理自体はCakePHP特有のものではなく、通常のPHPの処理になります。途中の「WWW_ROOT」「DS」はCakePHPで用意されている定数で、詳しくはドキュメントページで確認できます。
ここではアップロードされたファイル名のみ、データベースに登録するようにしています。

 

ファイル名一覧のためのビュー「index.php」です。これもbakeで書き出されたものを、さらに簡略化しています。

ファイルをアップロードするためのビュー「add.php」では、フォームのタイプをファイル対応にして、アップロードのためのフォームパーツを出力しています。

モデルの「Upload.php」では、今回は特に処理を行っていません。

上記以外では、「AppController.php」の中で、「Html」と「Form」ヘルパーを読み込んできます。

以上、シンプルなファイルのアップロードフォームの作り方でした。