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

首頁 > 語言 > PHP > 正文

PHP入門教程之上傳文件實例詳解

2024-05-04 23:49:43
字體:
來源:轉載
供稿:網友

本文實例講述了PHP上傳文件的方法。分享給大家供大家參考,具體如下:

Demo1.php

<form enctype="multipart/form-data" action="Demo2.php" method="post">  <input type="hidden" name="MAX_FILE_SIZE" value="2000000" />  上傳文件: <input type="file" name="userfile" />  <input type="submit" value="上傳" /></form>

Demo2.php

<?php  //接受上傳文件  //$_FILES;  //存在,但是空值  //[userfile][name] 表示上傳的文件名  //[userfile][type] 表示文件類型:例如,jpg 的文件類型為:image/jpeg  //[userfile][tmp_name]表示上傳的文件臨時存放的位置 C:/WINDOWS/temp/php28.tmp  //[userfile][error]表示錯誤類型,表示沒有任何錯誤。  //[userfile][size]表示上傳文件的大小  print_r($_FILES);  echo '<br/>';  //is_uploaded_file -- 判斷文件是否是通過 HTTP POST 上傳的  //通過 HTTP POST 上傳后,文件會存放在臨時文件夾下  $fileMimes = array('image/jpeg','image/pjpeg','image/gif','image/png','image/x-png');  //判斷類型是否是數組里的一種  if(is_array($fileMimes)){    if(!in_array($_FILES['userfile']['type'],$fileMimes)){      echo "<script>alert('本站只允許 jpg,png,gif 圖片');history.back();</script>";      exit;    }  }  //創建一個常量  define('URL',dirname(__FILE__).'/uploads');  echo URL;  //判斷目錄是否存在  if(!is_dir(URL)){    mkdir(URL,0777); //最大權限0777,意思是如果沒有這個目錄,那么就創建  }  define('MAX_SIZE',2000000);  if($_FILES['userfile']['size'] > MAX_SIZE){    echo "<script>alert('上傳不得超過 2 M');history.back();</script>";    exit;  }  //還有兩個問題要驗證  //第二個問題,只允許 JPG 文件// if($_FILES['userfile']['type'] != 'image/jpeg' && $_FILES['userfile']['type'] != 'image/pjpeg'){//   echo "<script>alert('本站只允許 JPG 圖片');history.back();</script>";//   exit ;// }// switch ($_FILES['userfile']['type']){//   case 'image/jpeg'://火狐//     break;//   case 'image/pjpeg'://     break;//   case 'image/gif'://     break;//   case 'image/png'://火狐//     break;//   case 'image/x-png'://IE//     break;//   default: echo "<script>alert('本站只允許 jpg,png,gif 圖片');history.back();</script>";//   exit ;// }  //第一個問題,如果上傳錯誤,怎么辦  if($_FILES['userfile']['error']>0){    switch ($_FILES['userfile']['error']){      case 1:echo "<script>alert('上傳文件超過約定值1');history.back();</script>";      break;      case 2:echo "<script>alert('上傳文件超過約定值2');history.back();</script>";      break;      case 3:echo "<script>alert('部分被上傳');history.back();</script>";      break;      case 4:echo "<script>alert('沒有被上傳');history.back();</script>";      break;    }    exit;  }  if(is_uploaded_file($_FILES['userfile']['tmp_name'])){    //就在這里移動了    //move_uploaded_file -- 將上傳的文件移動到新位置    //第一個參數,寫上臨時文件的地址,    //第二個參數,第二個參數要寫上你要存在的地址    //先去判斷這個目錄是否存在    //如果想屏蔽掉警告,直接加上 @    if(!move_uploaded_file($_FILES['userfile']['tmp_name'],URL.'/'.$_FILES['userfile']['name'])){      //如果移動失敗,就失敗      echo '移動失敗';      exit;    }  }else{    echo "<script>alert('臨時文件夾找不到上傳的文件');history.back();</script>";    exit;  }  //全部通過就上傳成功了  //必須傳一個值給Demo3.php  //文件上傳的地址  echo "<script>alert('文件上傳成功');location.href='Demo3.php?url=".$_FILES['userfile']['name']."';</script>";?>

Demo3.php

<?php  $url = $_GET['url'];  echo "<img src=/"uploads/".$url."/"/>";?>

希望本文所述對大家PHP程序設計有所幫助。


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

圖片精選

主站蜘蛛池模板: 连平县| 灌云县| 阿勒泰市| 舒城县| 永登县| 遵义县| 双峰县| 昌宁县| 平乡县| 平远县| 宜春市| 延安市| 克拉玛依市| 阜康市| 象山县| 昌宁县| 冀州市| 临海市| 巴林右旗| 仁怀市| 湘西| 兖州市| 兴和县| 孟州市| 陇川县| 长子县| 怀仁县| 香港 | 龙陵县| 桑日县| 霸州市| 灌南县| 昌平区| 临漳县| 双城市| 吉首市| 宝应县| 汉川市| 准格尔旗| 镇雄县| 武宣县|