php yii 调用接口,php – 在非对象上调用成员函数saveAs()[Yii 2]

我是yii和php的新手.

我想上传一个文件并将其路径保存到数据库,但这样做我得到一个错误.

我的控制器类是:

public function actionCreate()

{

$model = new Quiz();

if ($model->load(Yii::$app->request->post()) && $model->save()) {

$fileName = $model->name;

$model->file =UploadedFile::getInstance($model,'file');

$model->file->saveAs('uploadQuiz/'.$fileName.'.'.$model->file->extension );

$model->filePath = 'uploadQuiz/'.$fileName.'.'.$model->file->extension ;

$model->save();

return $this->redirect(['view', 'id' => $model->idQuiz]);

} else {

return $this->render('create', [

'model' => $model,

]);

}

}

我保存文件路径的数据库列名是“filePath”.

我的视图文件是:

use yii\helpers\Html;

use yii\widgets\ActiveForm;

/* @var $this yii\web\View */

/* @var $model app\models\Quiz */

/* @var $form yii\widgets\ActiveForm */

?>

<?php $form = ActiveForm::begin(['option' => ['enctype' => 'multipart/form-data']]); ?>

= $form->field($model, 'Course_idCourse')->textInput(['maxlength' => 100]) ?>

= $form->field($model, 'name')->textInput(['maxlength' => 100]) ?>

= $form->field($model, 'description')->textInput(['maxlength' => 255]) ?>

= $form->field($model, 'duration')->textInput(['maxlength' => 100]) ?>

= $form->field($model, 'time')->textInput() ?>

= $form->field($model, 'file')->fileInput(); ?>

= $form->field($model, 'totalMarks')->textInput(['maxlength' => 100]) ?>

= Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>

我的规则和属性是:

public function rules()

{

return [

[['Course_idCourse', 'duration', 'time'], 'required'],

[['Course_idCourse', 'duration', 'totalMarks'], 'integer'],

[['time'], 'safe'],

[['file'],'file'],

[['name', 'filePath'], 'string', 'max' => 200],

[['description'], 'string', 'max' => 255]

];

}

/**

* @inheritdoc

*/

public function attributeLabels()

{

return [

'idQuiz' => 'Id Quiz',

'Course_idCourse' => 'Course Id Course',

'name' => 'Name',

'description' => 'Description',

'duration' => 'Duration',

'time' => 'Time',

'file' => 'Quiz ',

'totalMarks' => 'Total Marks',

];

}

现在我已经将这个网站引用到同一个问题,但我发现它不是为了更新而是为了创建.亲切地帮助我.

当我运行尝试创建我有一个错误

在非对象上调用成员函数saveAs()

我不知道我哪里错了.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值