//控制器層

 <?php
namespace app\controllers; use app\models\Uploads;
use Yii;
use yii\web\Controller;
use yii\web\UploadedFile; class UploadsController extends Controller
{
public function actionUpload()
{
//實例化數據表
$model = new Uploads();
$id = yii::$app->db->createCommand("select id from upload order by id desc limit 1")->queryOne();
$cid = $id['id'];
//判斷傳值方式是否為post提交方式
if (Yii::$app->request->isPost) {
$model->imageFiles = UploadedFile::getInstances($model, 'imageFiles');
$model->imageFiles = $model->upload();
$arr = $model->imageFiles;
foreach ($arr as $key=>$val){
yii::$app->db->createCommand("insert into uploads (cid,imageFiles) values ('$cid','$val')")->execute();
}
}
return $this->render('upload', ['model' => $model]);
}
} //模型層 <?php
namespace app\models; use yii\db\ActiveRecord; class Uploads extends ActiveRecord
{
//設定圖片上傳驗證規則 eg:上傳圖片格式&圖片個數等等
public function rules()
{
return [
[['imageFiles'], 'file', 'skipOnEmpty' => true, 'extensions' => 'png, jpg', 'maxFiles' => 8],
];
} public function upload()
{
if ($this->validate()) {
foreach ($this->imageFiles as $file) {
$file->saveAs('uploads/' . $file->baseName . '.' . $file->extension);
//實現文件上傳入庫路徑全名
$arr[] = 'http://www.wechat.com/uploads/' . $file->baseName . '.' . $file->extension;
}
return $arr;
} else {
return false;
}
}
}

下面是视图层

 <?php
use yii\widgets\ActiveForm;
?> <?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]) ?> <?= $form->field($model, 'imageFiles[]')->fileInput(['multiple' => true, 'accept' => 'image/*']) ?> <button>Submit</button> <?php ActiveForm::end() ?>

最新文章

  1. 实现类似QQ对话聊天功能脚本
  2. 【BZOJ】3456: 城市规划
  3. WCF安装Windows服务
  4. python: 生成guid
  5. jquery冒泡及阻止
  6. django --------------------- [必要操作]
  7. 【产品体验】eyepetizer开眼
  8. [转] FDA批准首个莫米松植入式给药系统用于治疗慢性鼻窦炎
  9. Google Play Services Library update and missing symbol @integer/google_play_services_version
  10. Python 学习笔记3
  11. happiness[国家集训队2011(吴确)]
  12. IO&amp;&amp;Serize 利用线程Thread.Sleep实现&quot;自动输出&quot;
  13. 【BZOJ1076】奖励关(动态规划,数学期望)
  14. 企业移动应用和Smobiler
  15. Mathematica/偏导数/最小二乘法(线性回归)
  16. MTK6261初始化待机流程
  17. Java多线程02(线程安全、线程同步、等待唤醒机制)
  18. 使用element-ui的常见问题
  19. Android Studio2.0 教程从入门到精通Windows版 - 入门篇
  20. django2 显示图片 输出图片

热门文章

  1. uinty3d导入错误问题解决
  2. java学习笔记(2)——函数
  3. matplotlib tricks(关闭坐标刻度、坐标轴不可见)
  4. UWP 扩展/自定义标题栏的方法,一些概念和一些注意事项
  5. WPF图形/文字特别效果之一:交叉效果探讨(续)
  6. 如何将任意文件固定在 Win10 的开始屏幕中
  7. Angular使用echarts
  8. Alamofire - 优雅的处理 Swift 中的网络操作
  9. WPF 页面切换效果
  10. SQL Server查询当前连接数