上传文件无效

控制器代码:

  public function actionCreate()


    {


            $model=new Picture;


            if(isset($_POST['Picture']))


            {        


                    $model->attributes=$_POST['Picture'];


                    $model->image=CUploadedFile::getInstance($model,'image');


                    if($model->save())


                    {


                            $model->image->saveAs(Yii::app()->basePath.'/images/picname.png');


                    }


                            $this->redirect(array('admin'));


            }





            $this->render('create',array(


                    'model'=>$model,


            ));


    }

视图代码:

<?php $form=$this->beginWidget(‘CActiveForm’, array(

    'id'=&gt;'picture-form',


    'enableAjaxValidation'=&gt;false,

)); ?>

    &lt;div class=&quot;row&quot;&gt;


            &lt;?php echo CHtml::activeFileField(&#036;model, 'image'); ?&gt;


    &lt;/div&gt;





    &lt;div class=&quot;row buttons&quot;&gt;


            &lt;?php echo CHtml::submitButton(&#036;model-&gt;isNewRecord ? 'Create' : 'Save'); ?&gt;


    &lt;/div&gt;

<?php $this->endWidget(); ?>




if($model->save())

{

$model->image->saveAs(Yii::app()->basePath.'/images/picname.png');

}

$this->redirect(array('admin'));



你的代码 在上传失败(比如验证未通过时)或成功 都会跳转了 注意逻辑 :lol:

还有上传跟本身服务器的设置(php.ini)有关的 比如最大执行时间 post的最大值 文件允许上传的最大值(默认是2M)都有关的 全部设置好了在试试

不验证应该不影响上传功能吧。php.ini也设置过了,还是不能上传。

enctype

加了一个enctype ,修改了一下路径就好了,谢谢各位~~