yeyongyong
看见很多人都没上传文件成功!我发表下我的看法!
比如我有个webapp:blog,那么我在blog下面新建文件夹uploads用来放上传的图片,这样写就可以上传成功,
在controller里面要那么写:
//设定允许被访问的方法,别忘记设置允许访问的方法,否则上传不了public function accessRules() { return array( array('allow', // allow all users to perform 'index' and 'view' actions 'actions'=>array('index','view','updateajax','uploads'), 'users'=>array('*'), ), ); } public function actionUploads() { $year=date('Y'); $month=date('m'); $path='uploads/'.$year.'/'.$month.'/'; //如果目录不存在就创建目录 if(!file_exists('uploads/'.$year.'/')){ mkdir('uploads/'.$year.'/','0777'); } if(!file_exists($path)){ mkdir($path,'0777'); } $filedata=$_FILES['Filedata']; @move_uploaded_file($filedata['tmp_name'],$path.uniqid().'.gif'); }
view部分这么写:
//主要是这两个地址的配置:例如在webapp下面的assets文件夹下建立path/to/文件夹并将handlers.js放在该目录下'jsHandlerUrl'=>Yii::app()->assetManager->getBaseUrl().'/path/to/handlers.js', //Relative path 'postParams'=>array(), 'config'=>array( 'use_query_string'=>true, //上传的controllers地址 'upload_url'=> $this->createUrl('helloworld/uploads'), //Use $this->createUrl method or define yourself
巡洋舰威武
谢谢站长
非常好谢谢站长