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输出控制功能在简繁体转换中的应用
Oct 09 PHP
一个可查询所有表的“通用”查询分页类
Oct 09 PHP
php mysql索引问题
Jun 07 PHP
PHP学习散记_编码(json_encode 中文不显示)
Nov 10 PHP
php实现自动获取生成文章主题关键词功能的深入分析
Jun 03 PHP
探讨:parse url解析URL,返回其组成部分
Jun 14 PHP
php生成缩略图示例代码分享(使用gd库实现)
Jan 20 PHP
Cygwin中安装PHP方法步骤
Jul 04 PHP
PHP编程基本语法快速入门手册
Jan 07 PHP
浅析Yii2 GridView实现下拉搜索教程
Apr 22 PHP
PHP将英文数字转换为阿拉伯数字实例讲解
Jan 28 PHP
Laravel 已登陆用户再次查看登陆页面的自动跳转设置方法
Sep 30 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面向对象三大特点学习(充分理解抽象、封装、继承、多态)
2012/05/07 PHP
PHP获取指定函数定义在哪个文件中以及其所在的行号实例
2014/05/08 PHP
浅谈COOKIE和SESSION区别
2015/07/19 PHP
PHP连接MSSQL方法汇总
2016/02/05 PHP
图文详解phpstorm配置Xdebug进行调试PHP教程
2016/06/13 PHP
js继承 Base类的源码解析
2008/12/30 Javascript
简短几句 通俗解释javascript的闭包
2011/01/17 Javascript
地址栏传递中文参数乱码在js里用escape转码
2013/08/28 Javascript
JS中产生20位随机数以0-9为例也可以是a-z A-Z
2014/08/01 Javascript
简述JavaScript提交表单的方式 (Using JavaScript Submit Form)
2016/03/18 Javascript
基于AngularJS实现iOS8自带的计算器
2016/09/12 Javascript
jQuery使用getJSON方法获取json数据完整示例
2016/09/13 Javascript
javascript 使用正则test( )第一次是 true,第二次是false
2017/02/22 Javascript
使用canvas实现一个vue弹幕组件功能
2018/11/30 Javascript
vue+iview 兼容IE11浏览器的实现方法
2019/01/07 Javascript
使用vue-cli脚手架工具搭建vue-webpack项目
2019/01/14 Javascript
Vue 事件处理操作实例详解
2019/03/05 Javascript
通过图带你深入了解vue的响应式原理
2019/06/21 Javascript
JavaScript制作3D旋转相册
2020/08/02 Javascript
使用axios请求接口,几种content-type的区别详解
2019/10/29 Javascript
Vue Render函数原理及代码实例解析
2020/07/30 Javascript
python模块简介之有序字典(OrderedDict)
2016/12/01 Python
对DataFrame数据中的重复行,利用groupby累加合并的方法详解
2019/01/30 Python
Python中一般处理中文的几种方法
2019/03/06 Python
Python使用贪婪算法解决问题
2019/10/22 Python
python图的深度优先和广度优先算法实例分析
2019/10/26 Python
使paramiko库执行命令时在给定的时间强制退出功能的实现
2021/03/03 Python
HTML5 Blob对象的具体使用
2020/05/22 HTML / CSS
*p++ 自增p 还是p所指向的变量
2016/07/16 面试题
十岁生日同学答谢词
2014/01/19 职场文书
辞旧迎新演讲稿
2014/09/15 职场文书
“六查”、“三学”、“三干”查摆问题整改措施
2014/09/27 职场文书
买房协议书范本
2014/10/23 职场文书
租车协议书范本2014
2014/11/17 职场文书
2015应届毕业生求职信范文
2015/03/20 职场文书
企业团队精神心得体会
2016/01/19 职场文书