YII文件上传

<span style="font-size:14px;">use yii\web\UploadedFile;

public function actionDoartadd(){
        //获取session
        $session            = Yii::$app->session;
        $session->open();
        $user_id = $session->hasSessionId;
        $db = User::find()->where(['id'=>"$user_id"])->asarray()->one();
        $user_name = $db['username'];
        $model = new Article();
        $model->attributes          = $_POST;
        /****图片上传start***/     
        $image = UploadedFile::getInstance($model, 'article_thumb');
        if(!empty($image)){
            $rootPath = "uploads/operate/";
            $ext = $image->getExtension();
            $randName = time() . rand(1000, 9999) . "." . $ext;
            $image->saveAs($rootPath . $randName);
            $model->article_thumb       = $rootPath.$randName;
            $model->user_id             = $user_id;
            $model->user_name           = $user_name;
            $model->article_addtime     = time();
            $rs                         = $model->save();
        }    
        /****图片上传end***/ 
        $last_id = Yii::$app->db->getLastInsertID();
        $lable_id           = $_POST['lable_id'];
        if(count($lable_id)>3){
            Yii::$app->getSession()->setFlash('error', '最多添加三个标签');
            return $this->redirect('index.php?r=operate/artadd');
            die;


        }
        foreach($lable_id as $k=>$attributes)
        {
            $customer = new Lable();
            $customer->article_id   = $last_id;
            $customer->artlable_id  = $attributes;
            $customer->save();
        }  
        if($rs>0){ 
            Yii::$app->getSession()->setFlash('success', '添加成功');
            return $this->redirect('index.php?r=operate/index');
        }else{
            Yii::$app->getSession()->setFlash('error', '添加失败');
            return $this->redirect('index.php?r=operate/artadd');
        }
    }






<?= $form->field($model, 'course_thumb')->fileInput(['id' => 'change_img']) ?>
</span>


上一篇:Yii 输入验证 load了post数据,attributes里面字段有些值是NULL,并且还增加了一些字段


下一篇:PBKDF2加密的实现