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 相关文章推荐
定制404错误页面,并发信给管理员的程序
Oct 09 PHP
PHPLog php 程序调试追踪工具
Sep 09 PHP
php xml 入门学习资料
Jan 01 PHP
PHP版网站缓存加快打开速度的方法分享
Jun 03 PHP
PHP中数字检测is_numeric与ctype_digit的区别介绍
Oct 04 PHP
php实现模拟登陆方正教务系统抓取课表
May 19 PHP
PHP闭包函数传参及使用外部变量的方法
Mar 15 PHP
Yii中srbac权限扩展模块工作原理与用法分析
Jul 14 PHP
php 二维数组时间排序实现代码
Nov 19 PHP
ThinkPHP实现分页功能
Apr 28 PHP
PHP反射学习入门示例
Jun 14 PHP
PHP笛卡尔积实现原理及代码实例
Dec 09 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
PHP 变量的定义方法
2010/01/26 PHP
phpExcel导出大量数据出现内存溢出错误的解决方法
2013/02/28 PHP
php数组声明、遍历、数组全局变量使用小结
2013/06/05 PHP
php获取一定范围内取N个不重复的随机数
2016/05/28 PHP
thinkPHP简单实现多个子查询语句的方法
2016/12/05 PHP
Aster vs Newbee BO5 第一场2.19
2021/03/10 DOTA
在页面上点击任一链接时触发一个事件的代码
2007/04/07 Javascript
又一个小巧的图片预加载类
2007/05/05 Javascript
jquery 事件冒泡的介绍以及如何阻止事件冒泡
2012/12/25 Javascript
jquery放大镜效果超漂亮噢
2013/11/15 Javascript
使用jQuery不判断浏览器高度解决iframe自适应高度问题
2014/12/16 Javascript
AngularJS表单详解及示例代码
2016/08/17 Javascript
js/jquery控制页面动态加载数据 滑动滚动条自动加载事件的方法
2017/02/08 Javascript
Vue.js实现微信过渡动画左右切换效果
2017/06/13 Javascript
浅谈vuex之mutation和action的基本使用
2017/08/29 Javascript
layer弹出层全屏及关闭方法
2018/08/17 Javascript
nodejs中用npm初始化来创建package.json的实例讲解
2018/10/10 NodeJs
iview在vue-cli3如何按需加载的方法
2018/10/31 Javascript
Quasar Input:type=&quot;number&quot; 去掉上下小箭头 实现加减按钮样式功能
2020/04/09 Javascript
python中threading超线程用法实例分析
2015/05/16 Python
python使用xmlrpclib模块实现对百度google的ping功能
2015/06/02 Python
Java编程迭代地删除文件夹及其下的所有文件实例
2018/02/10 Python
Python使用sort和class实现的多级排序功能示例
2018/08/15 Python
在pycharm中使用git版本管理以及同步github的方法
2019/01/16 Python
Python快速转换numpy数组中Nan和Inf的方法实例说明
2019/02/21 Python
Python笔记之代理模式
2019/11/20 Python
小 200 行 Python 代码制作一个换脸程序
2020/05/12 Python
在pycharm中使用pipenv创建虚拟环境和安装django的详细教程
2020/11/30 Python
DRF使用simple JWT身份验证的实现
2021/01/14 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
2021/01/24 Python
英国最大的自有市场,比亚马逊便宜:Flubit
2019/03/19 全球购物
中队活动总结
2014/08/27 职场文书
2014年十一国庆节爱国演讲稿
2014/09/23 职场文书
担保书格式
2015/01/20 职场文书
上课睡觉万能检讨书
2015/02/17 职场文书
纯html+css实现打字效果
2021/08/02 HTML / CSS