图片上传问题 [ 新手入门 ]
写了一个简单的yii上传功能,测试不成功,来请教下; 模型里面是这样写的
public function rules()
{
return array( array('address_avatar','file','types'=>'jpg,gif,png','maxSize'=>'1024*1024*1','tooLarge'=>'图片大小超过1M,请从新上传。'),
);
}
控制器里面是这样写的
public function actionindex()
{
$model = Users::model()->findByPk(1);
if(isset($_POST['Users']))
{
$model->attributes=$_POST['Users'];
$image=CUploadedFile::getInstance($model,'address_avatar');
if($model->address_avatar)
{
$newName = time().'.'.$model->address_avatar->extensionName;
}
if($model->save())
{
$newName = $model->address_avatar->saveAs('assets/avatar/');
$model->image->saveAs('assets/avatar/'.$newName);
$model->address_avatar = $newName;
echo "ok";
}
exit;
}
$this->render("index",array('model'=>$model));
}
视图里面这样写的
<?php
$form=$this->beginWidget('CActiveForm', array(
'id'=>'avatar-form',
'enableAjaxValidation'=>true,
'htmlOptions'=>array('enctype'=>'multipart/form-data'),
)); ?>
<div class="row">
<?php //echo $form->labelEx($model,'address_avatar'); ?>
<?php echo CHtml::activeFileField($model,'address_avatar'); ?>
<?php echo $form->error($model,'address_avatar'); ?>
</div>
<div class="row">
<?php echo '图片预览'; ?>
<?php echo '<img src="'.$model->address_avatar.'" border="0"/>'; ?>
</div>
<?php echo CHtml::submitButton('提交'); ?>
<?php $this->endWidget(); ?>
怎么图片就是上传不了呢? 求解。。
共 6 条回复
-
jinchishuxue 回复于 2011-05-13 12:43 举报
controller貌似把CUploadedFile的对象$image根本就没管.
应该有这么一行代码:$model->address_avatar = $image;
w454638 安徽
注册时间:2011-03-23
最后登录:2015-02-25
在线时长:0小时19分
最后登录:2015-02-25
在线时长:0小时19分
- 粉丝0
- 金钱180
- 威望0
- 积分180