purazumakoiの[はてなブログ]

技術メモから最近はライフログも増えてきてます。

ファイル(file)がUPされているかチェックする場合

QuickFormで画像がUPされているかをチェックする場合


via
PEARマニュアル:導入 - 検証およびフィルタ – 送信されたデータを処理する方法 - 導入 - 検証およびフィルタ

Note: アップロードの必須チェック
file 要素に対しては required 規則は動作しません。 uploadedfile を使用してください。


ということで、画像系のチェックはこんな感じです。

// 画像
$form->addRule('file_image1','<p class="pError">画像は4MBまで</p>','maxfilesize','4000000','server');
$form->addRule('file_image1','<p class="pError">画像を選択(JPEG、GIFのみ)</p>', 'mimetype', array('image/jpeg', 'image/jpg', 'image/pjpeg', 'image/gif', 'image/pgif'));

// 新規登録の場合のみ(編集の時には動作させない)
if($id == 0)
 $form->addRule('file_image1', '<p class="pError">画像を選択</p>', 'uploadedfile');