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 相关文章推荐
Oracle Faq(Oracle的版本)
Oct 09 PHP
收集的二十一个实用便利的PHP函数代码
Apr 22 PHP
thinkphp常见路径用法分析
Dec 02 PHP
PHP采集静态页面并把页面css,img,js保存的方法
Dec 23 PHP
PHP aes (ecb)解密后乱码问题
Jun 22 PHP
php微信开发之上传临时素材
Jun 24 PHP
PHP设计模式之工厂模式与单例模式
Sep 28 PHP
PHP实现多关键字加亮功能
Oct 21 PHP
PHP查询大量数据内存耗尽问题的解决方法
Oct 28 PHP
thinkPHP5.0框架模块设计详解
Mar 18 PHP
php微信开发之关键词回复功能
Jun 13 PHP
PDO::errorInfo讲解
Jan 28 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分页类
2013/10/26 PHP
PHP遍历并打印指定目录下所有文件实例
2014/02/10 PHP
php源码 fsockopen获取网页内容实例详解
2016/09/24 PHP
PHP载入图像imagecreatefrom_gif_jpeg_png系列函数用法分析
2016/11/14 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
PHP双向链表定义与用法示例
2018/01/31 PHP
JavaScript 字符串乘法
2009/08/20 Javascript
jQuery 源码分析笔记(6) jQuery.data
2011/06/08 Javascript
IE6、IE7中setAttribute不支持class/for/rowspan/colspan等属性
2011/08/28 Javascript
原生js实现跨浏览器获取鼠标按键的值
2013/04/08 Javascript
Jquery实现的一种常用高亮效果示例代码
2014/01/28 Javascript
跟我学Nodejs(一)--- Node.js简介及安装开发环境
2014/05/20 NodeJs
微信小程序进行微信支付的步骤昂述
2016/12/01 Javascript
vue仿淘宝订单状态的tab切换效果
2020/06/23 Javascript
基于jQuery实现定位导航位置效果
2017/11/15 jQuery
深入理解Vue 组件之间传值
2018/08/16 Javascript
Node.js 使用request模块下载文件的实例
2018/09/05 Javascript
通过代码实例展示Python中列表生成式的用法
2015/03/31 Python
Python判断某个用户对某个文件的权限
2016/10/13 Python
python ansible服务及剧本编写
2017/12/29 Python
python使用多进程的实例详解
2018/09/19 Python
Python 实现取矩阵的部分列,保存为一个新的矩阵方法
2018/11/14 Python
Python适配器模式代码实现解析
2019/08/02 Python
基于virtualenv创建python虚拟环境过程图解
2020/03/30 Python
python中的unittest框架实例详解
2021/02/05 Python
Juicy Couture Beauty官方网站:香水和化妆品
2019/03/12 全球购物
Viking比利时:购买办公用品
2019/10/30 全球购物
eDreams德国:南欧领先的在线旅游公司
2020/12/07 全球购物
数组越界问题
2015/10/21 面试题
行政文员岗位职责
2013/11/08 职场文书
美德少年事迹材料
2014/01/23 职场文书
个人四风对照检查材料
2014/09/26 职场文书
2014年生产部工作总结
2014/12/17 职场文书
初三语文教学反思
2016/03/03 职场文书
Python的这些库,你知道多少?
2021/06/09 Python
MybatisPlus EntityWrapper如何自定义SQL
2022/03/22 Java/Android