国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

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

2024-05-05 00:00:30
字體:
來源:轉載
供稿:網友

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封裝單文件上傳到數據庫(路徑),希望對大家有所幫助!


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 淄博市| 麻城市| 罗源县| 潜江市| 淳安县| 藁城市| 仪征市| 陕西省| 松原市| 元朗区| 襄垣县| 皮山县| 固原市| 兴仁县| 内江市| 松阳县| 保亭| 定安县| 长子县| 万盛区| 休宁县| 德安县| 郑州市| 犍为县| 南宁市| 和田县| 都江堰市| 宁强县| 共和县| 吉木萨尔县| 沙雅县| 宁南县| 仪征市| 巫山县| 绥化市| 亚东县| 成都市| 淅川县| 年辖:市辖区| 阳春市| 乃东县|