yii2怎样达成表单上传数据和文件?
发布时间:2022-04-07 16:20:10 所属栏目:语言 来源:互联网
导读:如何实现yii2使用表单上传文件?这篇文章给大家介绍的是YII2框架实现表单中上传数据和文件一起的方法,小编认为是比较实用的,分享给大家参考一下,有这方面学习需求的朋友可以看一下。 有些时候我们提交的表单中含有文件。怎么样让表单里的数据和文件一起提
如何实现yii2使用表单上传文件?这篇文章给大家介绍的是YII2框架实现表单中上传数据和文件一起的方法,小编认为是比较实用的,分享给大家参考一下,有这方面学习需求的朋友可以看一下。 有些时候我们提交的表单中含有文件。怎么样让表单里的数据和文件一起提交。我的数据表tb_user内容如下: CREATE TABLE `tb_user` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户ID', `name` varchar(32) DEFAULT '' COMMENT '用户名', `pwd` varchar(64) DEFAULT '' COMMENT '密码', `head_img` varchar(256) DEFAULT '' COMMENT '图像', `sex` tinyint(1) DEFAULT '0' COMMENT '性别(0:男,1:女)', `age` tinyint(3) DEFAULT '0' COMMENT '年龄', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户表'; 表单页面代码如下(至于为什么没有用ActiveForm来创建,这个就不解释了): <?php use yiihelpersUrl; ?> <!doctype html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <title>表单提交</title> </head> <body> <form action="<?php echo Url::toRoute('index/index'); ?>" method="post" enctype="multipart/form-data"> 姓名:<input type="text" name="name"><br> //上传头像 public function uploadHeadImg() { //'head_img'这个字符串必须跟你表单中file控件的name字段相同 $head_img = UploadedFile::getInstanceByName('head_img'); if (!empty($head_img)) { $filePath = self::UPLOAD_PAHT . date('Ymd') . '/'; //判断文件上传路径,如果不存在,则创建 if (!file_exists($filePath)) { @mkdir($filePath, 0777, true); @chmod($filePath, 0777); } //文件名,我们通过md5文件名加上扩展名 $fileName = md5($head_img->baseName) . '.' . $head_img->extension; $file = $filePath . $fileName; //保存文件到我们的服务器上 $head_img->saveAs($file); //返回服务器上的文件地址。 (编辑:济南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |