YII文件上传

YII文件上传
首先,视图

<?php //表单
$form=$this->beginWidget('CActiveForm', array(
    'id'=>'product-form',
    'htmlOptions'=>array('enctype'=>'multipart/form-data'),//关键是这一行 'enableAjaxValidation'=>false,)); ?>

<tr>
    <td width="159">&nbsp;<?php echo $form->labelEx($model,'picname');?>:</td>
    <td width='901'><?php echo $form->fileField($model,'picname');?>
    <?php echo $form->error($model,'picname'); ?></td>
</tr>



控制器
public function actionadd(){
        $model = new Archive();
        if($_POST['Archive']){
            $model->attributes = $_POST['Archive'];
            //文件上传
            $file=CUploadedFile::getInstance($model,'picname'); //获取表单名为filename的上传信息
            $filename=$file->getName();//获取文件名
            $filesize=$file->getSize();//获取文件大小
            $filetype=$file->getType();//获取文件类型
            $model->picname=$filename;//数据库中要存放文件名
            $uploadfile='./assets/upload/'.$filename;
            $file->saveAs($uploadfile,true);//上传操作
               
            if($model->save()){
                Yii::app()->user->setFlash('success','添加文档成功');
                $this->redirect(array('index'));
            }
        }
        $this->renderPartial('add',array('model'=>$model,'type'=>$type));
    }



你可能感兴趣的:(YII文件上传)