2012-04-23 75 views
2

我在yii中创建了一个文件上传表单,但由于某些原因,Yii未能验证我的文件大小(虽然它确实验证了我的文件类型)。 这是我的控制器:Yii无法验证文件大小

$file = CUploadedFile::getInstance($model,'attachment'); 
if ((is_object($file) && get_class($file)==='CUploadedFile')) { 
    $model->attachment = $file; 
    if($model->validate(array('attachment'))) 
     $model->attachment->saveAs('upload/'.$file); 
} 

这是我的规则:

array('attachment', 'file', 'types'=>'zip, rar, 7z','allowEmpty' => true,'maxSize'=>1024*1024*5,'tooLarge'=>'File has to be smaller than 5MB'), 

有人能告诉我这里有什么问题?

+0

Yii如何在'$ file'属性中报告文件大小。如果我没记错的话''file-> size' – Paystey 2012-04-23 09:29:43

+0

我试着上传一个2.25MB的bmp文件,它显示了文件大小和类型的验证错误('$ file - > _ size'被报告为'2359350')。然后我尝试上传一个50MB的rar文件,即使上传没有发生,也没有显示验证错误。 – 2012-04-24 02:39:48

+2

我发现了这个问题。我所要做的就是在INI文件中配置'upload_max_filesize'和'post_max_size'。感谢您的帮助 – 2012-04-24 02:57:28

回答

4

谢谢大家,我自己设法解决了这个问题。我所需要做的就是在INI文件中配置upload_max_filesize和post_max_size。