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


Posted in PHP onApril 28, 2016

本文实例讲述了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

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

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

PHP 相关文章推荐
把PHP安装为Apache DSO
Oct 09 PHP
可以在线执行PHP代码包装修正版
Mar 15 PHP
PHP常用技巧总结(附函数代码)
Feb 04 PHP
js限制checkbox勾选的个数以及php获取多个checkbbox的方法深入解析
Jul 18 PHP
PHP 正则判断中文UTF-8或GBK的思路及具体实现
Nov 26 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(一)
Jun 23 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十)
Jun 24 PHP
PHP爬虫之百万级别知乎用户数据爬取与分析
Jan 22 PHP
Yii框架中jquery表单验证插件用法示例
Oct 18 PHP
php获取当前月与上个月月初及月末时间戳的方法
Dec 05 PHP
Laravel重定向,a链接跳转,控制器跳转示例
Oct 22 PHP
用php如何解决大文件分片上传问题
Jul 07 PHP
thinkphp3.2实现上传图片的控制器方法
Apr 28 #PHP
PHP简单实现文本计数器的方法
Apr 28 #PHP
Yii2 rbac权限控制之菜单menu实例教程
Apr 28 #PHP
Yii2搭建后台并实现rbac权限控制完整实例教程
Apr 28 #PHP
PHP在线调试执行的实现方法(附demo源码)
Apr 28 #PHP
thinkphp项目部署到Linux服务器上报错“模板不存在”如何解决
Apr 27 #PHP
Composer设置忽略版本匹配的方法
Apr 27 #PHP
You might like
无线电的诞生过程
2021/03/01 无线电
PHP支持多种格式图片上传(支持jpg、png、gif)
2011/11/03 PHP
dedecms中使用php语句指南
2014/11/13 PHP
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
2009/12/07 Javascript
javascript动态加载二
2012/08/22 Javascript
javascript中if和switch,==和===详解
2015/07/30 Javascript
Bootstrap项目实战之子栏目资讯内容
2016/04/25 Javascript
Bootstrap中表单控件状态(验证状态)
2016/08/04 Javascript
基于javascript实现按圆形排列DIV元素(一)
2016/12/02 Javascript
jQuery焦点图左右转换效果
2016/12/12 Javascript
layui前段框架日期控件使用方法详解
2017/05/19 Javascript
微信小程序 swiper组件构建轮播图的实例
2017/09/20 Javascript
详解Vue组件插槽的使用以及调用组件内的方法
2018/11/13 Javascript
VUE简单的定时器实时刷新的实现方法
2019/01/20 Javascript
[03:09]DOTA2亚洲邀请赛 LGD战队出场宣传片
2015/02/07 DOTA
[49:15]DOTA2-DPC中国联赛 正赛 CDEC vs XG BO3 第二场 1月19日
2021/03/11 DOTA
Python的ORM框架SQLObject入门实例
2014/04/28 Python
Python isinstance函数介绍
2015/04/14 Python
分析Python中解析构建数据知识
2018/01/20 Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
2018/05/21 Python
python破解zip加密文件的方法
2018/05/31 Python
浅谈Python脚本开头及导包注释自动添加方法
2018/10/27 Python
OpenCV图像颜色反转算法详解
2019/05/13 Python
python读取word 中指定位置的表格及表格数据
2019/10/23 Python
Python文件操作函数用法实例详解
2019/12/24 Python
pytorch:实现简单的GAN示例(MNIST数据集)
2020/01/10 Python
Python列表操作方法详解
2020/02/09 Python
Python Pillow(PIL)库的用法详解
2020/09/19 Python
实例讲解CSS3中Transform的perspective属性的用法
2016/04/22 HTML / CSS
HTML5进度条特效
2014/12/18 HTML / CSS
互动出版网:专业书籍
2017/03/21 全球购物
面向中国市场的在线海淘美妆零售网站:Beauty House美丽屋
2021/03/02 全球购物
用缩写的指针比较"if(p)" 检查空指针是否可靠?如果空指针的内部表达不是0会怎么样?
2014/01/05 面试题
中学生运动会口号
2014/06/07 职场文书
导游词格式
2015/02/13 职场文书
利用python实时刷新基金估值(摸鱼小工具)
2021/09/15 Python