yii 使用CUploadedFile上传图片,图片能上传,但是上传的图片是随机的,和我需要上传的图片不一样???

为什么会这样啊???下面是相应的代码model:array('image_url','file','types'=>'jpg,gif,png','allowEmpty'=... 为什么会这样啊???
下面是相应的代码
model:
array('image_url','file','types'=>'jpg,gif,png','allowEmpty'=>true),

controller:
$model->image_url=CUploadedFile::getInstance($model,'image_url');
if($model->image_url)
{
$newimg = 'imgpath_'.time().'_'.rand(1, 9999).'.'.$model->image_url->extensionName;
$model->image_url->saveAs('uploads/'.$newimg,false);
$model->image_url = 'uploads/'.$newimg;
}

view:
{{ MActiveFileField(model, 'image_url',{'id':'fileField','margin-left':'50px'}) }}
展开
 我来答
test4bg
2013-01-17 · TA获得超过1024个赞
知道小有建树答主
回答量:661
采纳率:100%
帮助的人:640万
展开全部
毫无疑问,肯定是你写错了。
我简略写下他的用法,你看下。

$file = CUploadedFile::getInstanceByName('imgFile');//imgFile为前台表单名

$path=time().'.'.$file->extensionName;
$file->saveAs($path);//一定不要把保存的文件名弄成一样的,默认是覆盖的。
追问
array('image_url','file','types'=>'jpg,gif,png','allowEmpty'=>true), 

$model->image_url=CUploadedFile::getInstance($model,'image_url');
$newimg = 'imgpath_'.time().'_'.rand(1, 9999).'.'.$model->image_url->extensionName;
$model->image_url->saveAs('uploads/'.$newimg,false);
$model->image_url = 'uploads/'.$newimg;

{{ MActiveFileField(model, 'image_url'}}
追答
验证规则写错了,你的img_url是存的路径,而file的验证规则是指数据库中存文件。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式