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
php5数字型字符串加解密代码
Apr 24 PHP
Ajax PHP简单入门教程代码
Apr 25 PHP
mysql 性能的检查和优化方法
Jun 21 PHP
php curl模拟post请求小实例
Nov 13 PHP
PHP检测字符串是否为UTF8编码的常用方法
Nov 21 PHP
php中的观察者模式简单实例
Jan 20 PHP
文件上传之SWFUpload插件(代码)
Jul 30 PHP
PHP实现 APP端微信支付功能
Jun 22 PHP
使用laravel和ajax实现整个页面无刷新的操作方法
Oct 03 PHP
CentOS7系统搭建LAMP及更新PHP版本操作详解
Mar 26 PHP
详解Go与PHP的语法对比
May 29 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开发文件系统实例讲解
2006/10/09 PHP
PHP中call_user_func_array()函数的用法演示
2012/02/05 PHP
php中addslashes函数与sql防注入
2014/11/17 PHP
php微信公众平台开发类实例
2015/04/01 PHP
基于PHP实现通过照片获取ip地址
2016/04/26 PHP
使用JavaScript创建新样式表和新样式规则
2016/06/14 PHP
yii2局部关闭(开启)csrf的验证的实例代码
2017/07/10 PHP
基于JQuery的cookie插件
2010/04/07 Javascript
关于捕获用户何时点击window.onbeforeunload的取消事件
2011/03/06 Javascript
js汉字排序问题 支持中英文混排,兼容各浏览器,包括CHROME
2011/12/20 Javascript
jquery实现省市select下拉框的替换(示例代码)
2014/02/22 Javascript
jQuery往textarea中光标所在位置插入文本的方法
2015/06/26 Javascript
Angular2自定义分页组件
2017/04/19 Javascript
AngularJS 霸道的过滤器小结
2017/04/26 Javascript
jQuery+Ajax请求本地数据加载商品列表页并跳转详情页的实现方法
2017/07/12 jQuery
移动端Ionic App 资讯上下循环滚动的实现代码(跑马灯效果)
2017/08/29 Javascript
详解vue-cli中的ESlint配置文件eslintrc.js
2017/09/25 Javascript
JavaScript中立即执行函数实例详解
2017/11/04 Javascript
vue 自定义全局方法,在组件里面的使用介绍
2018/02/28 Javascript
使用Vue.js和Flask来构建一个单页的App的示例
2018/03/21 Javascript
JS div匀速移动动画与变速移动动画代码实例
2019/03/26 Javascript
JQuery通过键盘控制键盘按下与松开触发事件
2020/08/07 jQuery
Javascript类型判断相关例题及解析
2020/08/26 Javascript
[01:10:57]Liquid vs OG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
将Django框架和遗留的Web应用集成的方法
2015/07/24 Python
使用Python脚本从文件读取数据代码实例
2020/01/19 Python
通过python调用adb命令对App进行性能测试方式
2020/04/23 Python
Django 解决model 反向引用中的related_name问题
2020/05/19 Python
Python 解决相对路径问题:&quot;No such file or directory&quot;
2020/06/05 Python
CSS3字体效果的设置方法小结
2016/06/13 HTML / CSS
HR喜欢的自荐信格式
2013/10/08 职场文书
办公室助理岗位职责
2013/12/25 职场文书
党的群众路线教育实践活动方案
2014/10/31 职场文书
先进个人材料怎么写
2014/12/30 职场文书
Python实现学生管理系统(面向对象版)
2021/06/24 Python
Java使用JMeter进行高并发测试
2021/11/23 Java/Android