Heim >php教程 >php手册 >Yii2实现ajax上传图片插件用法,

Yii2实现ajax上传图片插件用法,

WBOY
WBOYOriginal
2016-06-13 08:41:001065Durchsuche

Yii2实现ajax上传图片插件用法,

本文实例讲述了Yii2实现ajax上传图片插件用法。分享给大家供大家参考,具体如下:

这里需要先下载 mdmsoft/yii2-upload-file.插件。

代码如下:

public function actionCreate()
{
  $model = new DynamicModel([
    'nama', 'file_id'
    ]);
  // behavior untuk upload file
  $model->attachBehavior('upload', [
    'class' => 'mdm\upload\UploadBehavior',
    'attribute' => 'file',
    'savedAttribute' => 'file_id' // coresponding with $model->file_id
  ]);
  // rule untuk model
  $model->addRule('nama', 'string')
    ->addRule('file', 'file', ['extensions' => 'jpg']);
  if ($model->load(Yii::$app->request->post()) && $model->validate()) {
    if ($model->saveUploadedFile() !== false) {
      Yii::$app->session->setFlash('success', 'Upload Sukses');
    }
  }
  return $this->render('upload',['model' => $model]);
}

Then in view upload.php

<&#63;php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
/* @var $this yii\web\View */
&#63;>
<div>
  <&#63;php
  $form = ActiveForm::begin([
      'options' => [ 'enctype' => 'multipart/form-data']
  ]);
  &#63;>
  <&#63;= $form->field($model, 'nama'); &#63;>
  <&#63;= $form->field($model, 'file')->fileInput(); &#63;>
  <&#63;php if ($model->file_id): &#63;>
    <div class="form-group">
      <&#63;= Html::img(['/file', 'id' => $model->file_id]) &#63;>
    </div>
  <&#63;php endif; &#63;>
  <div class="form-group">
    <&#63;= Html::submitButton('Submit', ['class' => 'btn btn-primary']) &#63;>
  </div>
  <&#63;php ActiveForm::end(); &#63;>
</div>

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn