久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

php封裝單文件上傳到數據庫(路徑)

這篇文章主要介紹了php封裝單文件上傳到數據庫(路徑) 的相關資料,需要的朋友可以參考下

1.首先思考一個問題上傳到數據庫是上傳的圖片還是圖片地址這里我們上傳的是圖片地址,因為圖片或音頻存數據庫中過大,數據庫會崩掉。

下面是封裝的文件上傳的方法:

<?php
/*
*@prame string key
*@prame string path
*@prame String maxSize
*@prame array allowMime
*@prame array allowFiletype
*@prame bool true
*
*auther wulei
*/
function upload($key,$path,$maxSize,$allowMime,$allowType,$ifFileName = true){
  //第一步 判斷錯誤碼
  if($_FILES[$key]['error']){
    switch($_FILES[$key]['error']){
      case 1:
        $str = "上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值。";
        break;
      case 2:
        $str = "上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值。";
        break;
      case 3:
        $str = "文件只有部分被上傳。";
        break;
      case 4:
        $str = "沒有文件被上傳。";
        break;
      case 6:
        $str = "找不到臨時文件夾。";
        break;
      case 7:
        $str = "文件寫入失敗";
        break;
    }
    return [0,$str];
  }
  //判斷文件大小
  if($_FILES[$key]['size']>$maxSize){
    return [0,'傳的文件超過最大限制'];
  }
  //判斷文件的mime類型
  if(!in_array($_FILES[$key]['type'],$allowMime)){
    return [0,'不符合的mime類型'];
  }
  //判斷文件的后綴
  $info = pathinfo($_FILES[$key]['name']);
  $sub = $info['extension'];
  if(!in_array($sub,$allowType)){
    return [0,'不符合的文件后綴'];
  }
  //判斷是否是隨機文件
  if($ifFileName){
    $name = uniqid().'.'.$sub;
  }else{
    $name = $info;
  }
  //拼接路徑
  $path = rtrim($path,'/').'/'.date('Y/m/d').'/';
  //判斷文件是否存在,不存在則創建
  if(!file_exists($path)){
    mkdir($path,0777,true);
  }
  //判斷是否是上傳文件
  if(is_uploaded_file($_FILES[$key]['tmp_name'])){
    if(move_uploaded_file($_FILES[$key]['tmp_name'],$path.$name)){
      echo '文件上傳成功';
      return [1,$path.$name];
    }else{
      return[0,'上傳文件失敗'];
    }
  }else{
    return [0,'文件不存在'];
  }
  }

2.html 頁面

<html>
<head>
  <title>文件上傳</title>
  <meta charset = "utf-8"/>
</head>
<body>
  <form action = "onUpload.php" method = "post" enctype ="multipart/form-data">
    <!--<input type = "text" name = "username"/><br/>-->
    <input type = "file" name = "file"/><br/>
    <input type = "submit" value ="提交"/>
  </form>
</body>

3、下面我們鏈接數據庫

這里我們直接使用了,看不懂的可以去看前面的封裝的數據庫方法那一篇文章

<?php
  //包含方法
  include 'uploed.php';
  include 'common.php';
  //得到方法
  $data = upload('file','image',pow(1024,2)*2,[
        'image/png','image/jpeg','image/gif','image/wbmp'
      ],['png','jpg','jpeg','jpe','pjpeg','gif','wbmp','bmp']);
  //這里進行數據庫操作
  if($data[0]){
    $date['img_path'] = $data[1];
  }
  insert($link,'user',$date);

總結

以上所述是小編給大家介紹的php封裝單文件上傳到數據庫(路徑),希望對大家有所幫助!

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

這篇文章主要介紹了PHP有序表查找之插值查找算法,簡單分析了插值查找算法的概念、原理并結合實例形式分析了php實現針對有序表插值查找的相關操作技巧,需要的朋友可以參考下
下面小編就為大家分享一篇ThinkPHP整合datatables實現服務端分頁的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
下面小編就為大家分享一篇PHP實現APP微信支付的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
這篇文章主要介紹了PHP實現的多維數組排序算法,結合實例形式對比分析了php針對多維數組及帶有鍵名的多維數組進行排序相關操作技巧與注意事項,需要的朋友可以參考下
這篇文章主要為大家詳細介紹了php結合ajaxuploadfile實現無刷新文件上傳功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本篇文章給大家詳細介紹了PHP開發接口使用RSA進行加密解密方法,對此有興趣的朋友可以學習下。
主站蜘蛛池模板: 黄色免费在线网址 | 欧美视频二区 | 欧美日韩高清在线一区 | 开操网| 国产网站在线免费观看 | 狠狠干影院 | 99久久久99久久国产片鸭王 | 日韩精品av一区二区三区 | 成人免费片| 久久久精品一区二区三区 | 一级黄色生活视频 | 欧美国产激情 | 97色在线观看免费视频 | 免费的色网站 | 国产精品久久久久久一区二区三区 | 国产精品96久久久久久 | 欧美综合一区二区三区 | 视频一区在线播放 | 欧美成人精品在线 | 欧美精品在线免费观看 | 日韩午夜场 | 韩国精品一区 | 成人做爰9片免费看网站 | 99re国产精品 | 久久久精品久 | 精品一二区 | 国产综合第一页 | 成人av一区二区三区 | 国产精品成av人在线视午夜片 | 91免费福利在线 | 国产精品一区二区久久久久 | 国产日韩一区二区三区 | 久久免费看 | 免费黄色网址视频 | 亚洲精品国产成人 | 成年人免费在线视频 | 波多野结衣先锋影音 | 999国产视频| 成人免费精品视频 | 久久久久亚洲精品 | 久久av网站 |