وقتی میخوام فایل انتخاب کنم و کنسل میکنم ارور رو نشون میده اما وقتی فرم رو خالی ارسال میکنم ارور نمیده.زمانی هم که validator ها فعال هستن و فرم رو سابمیت میکنم ارور میده که عکس انتخاب نشده.یعنی برعکس عمل میکنه وقتی پره ارور خالی بودن میده.
array('slide', 'required', 'message'=>'عکس نمی تواند خالی باشد.'),
array(
'slide', 'file',
'maxSize' => 5242880,
'on'=>'insert',
'tooLarge' => 'حجم فایل از 5 مگابایت بیشتر است.',
'mimeTypes' => 'image/jpeg',
'wrongMimeType' => 'فقط فایل های jpg و jpeg مجاز هستند.',
'types' => 'jpg, jpeg',
'wrongType' => 'فقط فایل های jpg و jpeg مجاز هستند.',
),
array(
'slide', 'file',
'maxSize' => 5242880,
'on'=>'update', 'allowEmpty'=>true,
'tooLarge' => 'حجم فایل از 5 مگابایت بیشتر است.',
'mimeTypes' => 'image/jpeg',
'wrongMimeType' => 'فقط فایل های jpg و jpeg مجاز هستند.',
'types' => 'jpg, jpeg',
'wrongType' => 'فقط فایل های jpg و jpeg مجاز هستند.',
),
public function actionCreate() {
$model = new Indextopslider;
if($model->slide = CUploadedFile::getInstance($model, 'slide')){
if ((isset($_POST['Indextopslider'])) && ($model->slide->error == 0) && ($model->slide->size <= 5242880) && ($model->slide->type == 'image/jpeg')) {
$model->attributes = $_POST['Indextopslider'];
$model->year= date('Y');
$model->confirmed = 1;
if ($model->save()) {
Image::uploadSaver($model->slide->tempName, 'slider\'.date('Y').'\', $model->id);
$this->redirect(array('index'));
}
}
}
$this->render('create', compact('model'));
}