สอบถามหน่อยครับ ในส่วนของ Controller delete ผมจะให้ลบทั้ง DB ละ ไฟล์ที่อัพโหลดไปต้องทำยังไงคับ

wave
final888
2,026
สังคมนักพัฒนาระบบ (Community)
สอบถามหน่อยครับ ในส่วนของ Controller delete ผมจะให้ลบทั้ง DB ละ ไฟล์ที่อัพโหลดไปต้องทำยังไงคับ

คือตอนนี้ผมทำการ upload ไฟล์ พร้อมกับเก็บชื่อไฟล์ไว้ใน db แล้ว   ตอนนี้ถ้าผมกด delete ไปตอนนี้มันจะลบแค่ในส่วนข้อมูลใน db แต่ไม่ลบไฟล์  ถ้าผมต้องให้ลบไฟล์ด้วยผมต้องเขียนยังไงครับ

 

    public function actionCreate()
    {
        $model = new Upload();

        if ($model->load(Yii::$app->request->post())) {
            $file = UploadedFile::getInstance($model,'pdf_file');
            
            if($file->size!=0){
                $model->file_name = md5($file->baseName.time());
                $file->saveAs('upload/finance/'.md5($file->baseName.time()));
                $model->save();
                
            }
            
            
            return $this->redirect(['view', 'id' => $model->id]);
        }

        return $this->render('create', [
            'model' => $model,
        ]);
    }




 public function actionDelete($id)
    {
        $this->findModel($id)->delete();

        return $this->redirect(['index']);
        
        

 

2 ความคิดเห็น

  • final888

  • มานพ กองอุ่น
$model = $this->findModel($id);
@unlink(Yii::getAlias('@webroot').'/upload/finance/'.$model->photo);
$model->delete();

 

ขอบคุณมากครับ ^_^