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 相关文章推荐
基于数据库的在线人数,日访问量等统计
Oct 09 PHP
让PHP COOKIE立即生效,不用刷新就可以使用
Mar 09 PHP
PHP include_path设置技巧分享
Jul 03 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(三)
Jun 23 PHP
php防止伪造的数据从URL提交方法
Jun 27 PHP
跟我学Laravel之视图 &amp; Response
Oct 15 PHP
ThinkPHP采用原生query实现关联查询left join实例
Dec 02 PHP
PDO防注入原理分析以及注意事项
Feb 25 PHP
支付宝支付开发――当面付条码支付和扫码支付实例
Nov 04 PHP
php文件上传类的分享
Jul 06 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
Nov 10 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
Oct 16 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小技巧搜集,每个PHPer都来露一手
2007/01/02 PHP
PHP控制网页过期时间的代码
2008/09/28 PHP
php 静态变量与自定义常量的使用方法
2010/01/26 PHP
php动态生成函数示例
2014/03/21 PHP
php记录搜索引擎爬行记录的实现代码
2018/03/02 PHP
php代码调试利器firephp安装与使用方法分析
2018/08/21 PHP
一个js实现的所谓的滑动门
2007/05/23 Javascript
关于恒等于(===)和非恒等于(!==)
2007/08/20 Javascript
最简单的jQuery程序 入门者学习
2009/07/09 Javascript
学习JS面向对象成果 借国庆发布个最新作品与大家交流
2009/10/03 Javascript
JSQL 批量图片切换的实现代码
2010/05/05 Javascript
JavaScript中逗号运算符介绍及使用示例
2015/03/13 Javascript
jQuery CSS3相结合实现时钟插件
2016/01/08 Javascript
jQuery向父辈遍历的简单方法
2016/09/18 Javascript
js如何编写简单的ajax方法库
2017/08/02 Javascript
JS操作时间 - UNIX时间戳的简单介绍(必看篇)
2017/08/16 Javascript
详解让sublime text3支持Vue语法高亮显示的示例
2017/09/29 Javascript
基于jQuery ztree实现表格风格的树状结构
2018/08/31 jQuery
Layui table field初始化加载时进行隐藏的方法
2019/09/19 Javascript
前端如何实现动画过渡效果
2021/02/05 Javascript
Windows下Python使用Pandas模块操作Excel文件的教程
2016/05/31 Python
Python实现输入二叉树的先序和中序遍历,再输出后序遍历操作示例
2018/07/27 Python
Django框架搭建的简易图书信息网站案例
2019/05/25 Python
Python测试模块doctest使用解析
2019/08/10 Python
Mixbook加拿大:照片书,照片卡,剪贴簿,年历和日历
2017/02/21 全球购物
马来西亚在线时尚女装商店:KEI MAG
2017/09/28 全球购物
联想C++笔试题
2012/06/13 面试题
党的群众路线教育实践活动心得体会900字
2014/03/07 职场文书
体育活动总结范文
2014/05/04 职场文书
环保公益策划方案
2014/08/15 职场文书
人大代表选举标语
2014/10/07 职场文书
个人借款协议书范本
2014/11/17 职场文书
劳动仲裁撤诉申请书
2015/05/18 职场文书
智慧人生:永远不需要向任何人解释你自己
2019/08/20 职场文书
写给医护人员的一封感谢信
2019/09/16 职场文书
PyTorch 如何检查模型梯度是否可导
2021/06/05 Python