婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > YII2框架實(shí)現(xiàn)表單中上傳單個文件的方法示例

YII2框架實(shí)現(xiàn)表單中上傳單個文件的方法示例

熱門標(biāo)簽:嘟嘟云外呼系統(tǒng) 正規(guī)電銷機(jī)器人系統(tǒng) 辦理400電話哪家好點(diǎn) 南京3D地圖標(biāo)注 咸陽電銷 南寧電話外呼系統(tǒng)線路 濟(jì)源百應(yīng)電銷機(jī)器人聯(lián)系方式 邢臺400電話辦理 重慶外呼電銷系統(tǒng)多少錢

本文實(shí)例講述了YII2框架實(shí)現(xiàn)表單中上傳單個文件的方法。分享給大家供大家參考,具體如下:

有些時候我們提交的表單中含有文件。怎么樣讓表單里的數(shù)據(jù)和文件一起提交。

我的數(shù)據(jù)表tb_user內(nèi)容如下:

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來創(chuàng)建,這個就不解釋了):

?php
use yii\helpers\Url;
?>
!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>
  密碼:input type="password" name="pwd">br>
  性別:input type="radio" name="sex" value="0" checked>男
     input type="radio" name="sex" value="1">女br>
  年齡:input type="number" name="age">br>
  頭像:input type="file" name="head_img">br>
  input type="submit" value="提交">
  input name="_csrf" type="hidden" value="?php echo \Yii::$app->request->csrfToken; ?>">
/form>
/body>
/html>

模型類代碼如下:

?php

namespace app\models;

use yii\db\ActiveRecord;
use yii\web\UploadedFile;

class MyUser extends ActiveRecord
{
  //注意這里的上傳路徑是相對你入口文件
  const UPLOAD_PAHT = 'uploads/';

  //返回你要操作的數(shù)據(jù)表名
  public static function tableName()
  {
    return '{{%user}}';
  }

  //設(shè)置規(guī)則,驗(yàn)證表單數(shù)據(jù)
  public function rules()
  {
    return [
      ['name', 'required', 'message' => '請?zhí)顚懹脩裘?],
      ['pwd', 'string', 'length' => [6, 12], 'message' => '密碼6-12位'],
      ['sex', 'in', 'range' => [0, 1], 'message' => '正確選擇性別'],
      ['age', 'integer', 'min' => 1, 'max' => 120, 'message' => '正確填寫年齡'],
      ['head_img', 'image', 'extensions' => ['png', 'jpg', 'gif'], 'maxSize' => 1024 * 1024 * 1024, 'message' => '請上傳頭像'],
    ];
  }

  //上傳頭像
  public function uploadHeadImg()
  {
    //'head_img'這個字符串必須跟你表單中file控件的name字段相同
    $head_img = UploadedFile::getInstanceByName('head_img');
    if (!empty($head_img)) {
      $filePath = self::UPLOAD_PAHT . date('Ymd') . '/';
      //判斷文件上傳路徑,如果不存在,則創(chuàng)建
      if (!file_exists($filePath)) {
        @mkdir($filePath, 0777, true);
        @chmod($filePath, 0777);
      }
      //文件名,我們通過md5文件名加上擴(kuò)展名
      $fileName = md5($head_img->baseName) . '.' . $head_img->extension;
      $file = $filePath . $fileName;
      //保存文件到我們的服務(wù)器上
      $head_img->saveAs($file);
      //返回服務(wù)器上的文件地址
      return $file;
    } else {
      return false;
    }
  }
}

控制器代碼如下:

?php

namespace app\controllers;

use YII;
use yii\web\Controller;

class IndexController extends Controller
{
  public function actionIndex()
  {
    if (YII::$app->request->isPost) {
      $user = new \app\models\MyUser();

      //把POST過來的數(shù)據(jù)加載到user對象
      $data = YII::$app->request->post();
      //注意第二個參數(shù)設(shè)為'',默認(rèn)YII的ActiveForm創(chuàng)建的表單元素會加上下標(biāo)
      $user->load($data, '');

      if ($user->validate()) {
        $user->pwd = YII::$app->security->generatePasswordHash($user->pwd);
        $user->head_img = $user->uploadHeadImg();

        //這里保存時設(shè)為false不驗(yàn)證,因?yàn)閜wd加密了
        $user->save(false);
      } else {
        var_dump($user->errors);
      }
    } else {
      return $this->renderPartial('index');
    }
  }
}

這樣我們就可以通過表單上傳圖像了。

更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結(jié)》、《php優(yōu)秀開發(fā)框架總結(jié)》、《smarty模板入門基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》

希望本文所述對大家基于Yii框架的PHP程序設(shè)計有所幫助。

您可能感興趣的文章:
  • yii2.0框架使用 beforeAction 防非法登陸的方法分析
  • Yii2使用$this->context獲取當(dāng)前的Module、Controller(控制器)、Action等
  • Yii框架獲取當(dāng)前controlle和action對應(yīng)id的方法
  • yii框架配置默認(rèn)controller和action示例
  • YII2框架中驗(yàn)證碼的簡單使用方法示例
  • YII2框架中分頁組件的使用方法示例
  • YII2框架中自定義用戶認(rèn)證模型,完成登陸和注冊操作示例
  • YII2框架中操作數(shù)據(jù)庫的方式實(shí)例分析
  • YII2框架自定義全局函數(shù)的實(shí)現(xiàn)方法小結(jié)
  • yii2.0框架場景的簡單使用示例
  • YII2框架中actions的作用與使用方法示例

標(biāo)簽:武漢 平頂山 隴南 黃山 唐山 河南 通遼 南通

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《YII2框架實(shí)現(xiàn)表單中上傳單個文件的方法示例》,本文關(guān)鍵詞  YII2,框架,實(shí)現(xiàn),表單,中,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《YII2框架實(shí)現(xiàn)表單中上傳單個文件的方法示例》相關(guān)的同類信息!
  • 本頁收集關(guān)于YII2框架實(shí)現(xiàn)表單中上傳單個文件的方法示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    精品一区二区三区视频| 中文字幕av一区二区三区高 | 美国十次了思思久久精品导航| 欧美一卡二卡在线| 蜜臀av一区二区| 国产欧美精品在线观看| av在线不卡观看免费观看| 成人短视频下载| 一级做a爱片久久| 免费在线观看精品| 欧洲视频一区二区| 一区精品在线播放| 国产一区二区三区电影在线观看| 欧美精品一二三四| 欧美亚洲国产一区二区三区| 国产亚洲成年网址在线观看| 欧美日韩在线播放三区四区| 欧美一区二区视频在线观看2022| 国产成人鲁色资源国产91色综 | 一区二区三区蜜桃| 国产一区日韩二区欧美三区| 色综合久久66| 3d动漫精品啪啪1区2区免费| 亚洲美女电影在线| 欧洲一区二区三区在线| av中文字幕一区| 日韩欧美一区二区三区在线| 夜色激情一区二区| 欧美狂野另类xxxxoooo| 亚洲大片精品永久免费| 91.成人天堂一区| 美脚の诱脚舐め脚责91| 欧美日韩视频不卡| 亚洲男人的天堂在线aⅴ视频| 久久久久高清精品| 国产91精品久久久久久久网曝门| 久久99久国产精品黄毛片色诱| 国产美女在线精品| 亚洲免费在线观看视频| 欧美日本在线播放| 国产xxx精品视频大全| 国产欧美精品一区二区色综合| 精品欧美一区二区久久| 国产美女久久久久| 亚洲成人动漫在线观看| 久久亚洲精品小早川怜子| 99久久久久免费精品国产| 亚洲欧美中日韩| 成人久久久精品乱码一区二区三区 | 国产福利视频一区二区三区| 国内偷窥港台综合视频在线播放| 亚洲男人的天堂av| 日韩国产欧美在线观看| av动漫一区二区| 亚洲综合色在线| 日韩一区二区三区四区五区六区| 国产精品沙发午睡系列990531| 视频在线观看一区| 久久精品夜色噜噜亚洲a∨| 色欧美片视频在线观看| 久久99国内精品| 日韩一级视频免费观看在线| 国产河南妇女毛片精品久久久| 精品国产乱码久久久久久图片 | 欧美成人精品3d动漫h| 亚洲一区二区三区视频在线 | 欧美精品丝袜久久久中文字幕| 亚洲欧美日本韩国| 日韩欧美aaaaaa| 91香蕉国产在线观看软件| 免费av成人在线| 1000精品久久久久久久久| 2欧美一区二区三区在线观看视频| 亚洲6080在线| 国产精品激情偷乱一区二区∴| 一区二区三区在线影院| 日本亚洲三级在线| 欧洲一区在线观看| 中文字幕一区二区三区在线观看 | 制服丝袜亚洲播放| 中文字幕不卡的av| 成人看片黄a免费看在线| 亚洲国产精品成人久久综合一区 | 一区二区三区精品在线| 51精品久久久久久久蜜臀| 日本一区二区动态图| 欧美性三三影院| 亚洲色图色小说| 国产sm精品调教视频网站| 美国十次综合导航| 欧美电影免费观看高清完整版在线| 免费在线欧美视频| 亚洲激情一二三区| 天天操天天综合网| 成人av网站在线| 精品写真视频在线观看 | 欧美伦理影视网| 91网站最新网址| 成人爱爱电影网址| 国产成人免费9x9x人网站视频| 国产欧美日韩另类视频免费观看| 国产成人在线色| 2023国产一二三区日本精品2022| 国产乱码精品一区二区三区av | 国产亚洲欧美色| 欧美成人女星排名| 一区在线播放视频| 在线电影院国产精品| 午夜免费久久看| 日韩精品在线看片z| 26uuuu精品一区二区| 26uuu亚洲综合色欧美| 另类的小说在线视频另类成人小视频在线 | 精品日韩在线观看| 国产亚洲一二三区| 免费在线一区观看| 色激情天天射综合网| 欧美精品一二三| 亚洲欧美日韩久久| 蜜桃一区二区三区四区| 国产精品麻豆欧美日韩ww| 欧美一区二区视频在线观看2022| 国产乱码精品一区二区三区忘忧草| 91麻豆精品国产自产在线| 丰满亚洲少妇av| 91丨国产丨九色丨pron| 制服丝袜日韩国产| 亚洲一区二区高清| 综合自拍亚洲综合图不卡区| 国产欧美日韩视频在线观看| 国产亚洲一区二区在线观看| 日韩国产欧美一区二区三区| 亚洲国产一区视频| 欧美一区二区三区影视| 欧美一区二区视频在线观看2020| 欧美综合久久久| 国产精品国产三级国产| 国产精品美女久久久久av爽李琼| 亚洲国产精品精华液ab| www.激情成人| 亚洲激情图片小说视频| 在线免费观看不卡av| 日本一区中文字幕| 日韩欧美中文字幕公布| 日韩欧美高清dvd碟片| 蜜桃视频在线一区| 国产欧美va欧美不卡在线| 一区二区三区高清| 午夜影院在线观看欧美| 日韩美一区二区三区| 国产精品99精品久久免费| 亚洲色图在线看| 欧美吞精做爰啪啪高潮| 国产精品九色蝌蚪自拍| 欧美中文字幕亚洲一区二区va在线| 一本色道亚洲精品aⅴ| 91丝袜高跟美女视频| 亚洲午夜激情网页| 久久99精品国产91久久来源| 91尤物视频在线观看| 亚洲综合一区二区三区| 国产精品精品国产色婷婷| 一本久久精品一区二区| 5566中文字幕一区二区电影| 美国三级日本三级久久99 | 亚洲国产视频一区| 欧美综合色免费| 在线观看91av| 中文字幕一区二区三区视频| 2020日本不卡一区二区视频| 尤物av一区二区| 懂色中文一区二区在线播放| 国产一区二区精品久久| 欧美老人xxxx18| 亚洲免费视频中文字幕| 国产精品小仙女| 欧美tickling挠脚心丨vk| 亚洲6080在线| 欧美视频中文一区二区三区在线观看| 欧美亚洲一区三区| 国产精品毛片久久久久久| 亚洲欧洲av色图| 国产激情一区二区三区四区 | 悠悠色在线精品| 大桥未久av一区二区三区中文| 91免费小视频| 中文字幕免费一区| 国产毛片一区二区| 精品久久人人做人人爽| 男男gaygay亚洲| 91精品国产乱| 欧美激情中文字幕一区二区| 精品系列免费在线观看| 精品久久久久久无| 自拍偷拍欧美激情| 成人av电影免费在线播放| 久久久久久久久久看片| 亚洲免费观看高清完整| 99免费精品在线| 最新日韩在线视频|