奶头挺立呻吟高潮av全片,成人试看120秒体验区,性欧美极品v,A片高潮抽搐揉捏奶头视频

php語言

如何判斷PHP文件上傳file是否已選擇上傳文件

時(shí)間:2025-05-30 03:21:38 php語言 我要投稿
  • 相關(guān)推薦

如何判斷PHP文件上傳file是否已選擇上傳文件

  PHP文件上傳時(shí)如何判斷file是否已選擇上傳文件呢?下面是小編給大家提供的實(shí)現(xiàn)方法,大家可以參考閱讀,更多詳情請關(guān)注應(yīng)屆畢業(yè)生考試網(wǎng)。

  一個(gè)合格的程序員在實(shí)現(xiàn)數(shù)據(jù)入庫中時(shí)我們都會(huì)有一些非常嚴(yán)密的過濾與數(shù)據(jù)規(guī)則,像我們文件上傳時(shí)在前段要判斷用戶是否選擇上傳文件同時(shí)在后臺(tái)也可判斷是否有上傳的文件,本文實(shí)例即對此做一較為深入的分析。

  如下html代碼所示:

   代碼如下:

  <form action="?" method="post" enctype='multipart/form-data'>

  文件上傳:<input type="file" name="file" id="file"/>

  <input type="submit" id="send" value="提交"/>

  </form>

  我們最常用的在前端簡單的進(jìn)行判斷

   代碼如下:

  <script>

  var send=document.getElementById("send");

  send.onclick=function(){

  var file=document.getElementById("file").value;

  if(file.length<1){

  alert('請選擇圖片');

  return false;

  }

  }

  </script>

  如果要做真正的安全我們需要在后臺(tái)進(jìn)入判斷處理

   代碼如下:

  <?php

  //判斷pic文件框是否已經(jīng)選擇文件

  if(!empty($_FILES['file']['tmp_name'])){

  echo'已選擇文件';

  }else{

  echo'請選擇文件';

  }

  //PS:$_FILES后面的['tmp_name']一定不要忘寫,它表示是一個(gè)臨時(shí)的意思

  ?>

  安例分析

  js判斷是比較籠統(tǒng)了我們只是使用了file=document.getElementById("file").value;來判斷file有沒有值或不為空了,這樣只要輸入一個(gè)數(shù)字就可以直接提交了,所以我們需要進(jìn)入如上傳文件的用戶名限制

  如

   代碼如下:

  function CheckWorkFile()

  {

  var obj=document.getElementById('fuMain');

  if(obj.value=='')

  {

  alert('請選擇要上傳的作業(yè)書文件');

  return false;

  }

  var stuff=obj.value.match(/^(.*)(\.)(.{1,8})$/)[3];

  if(stuff!='doc')

  {

  alert('文件類型不正確,請選擇.doc文件');

  return false;

  }

  return true;

  }

  對于php處理我們也只使用了if(!empty($_FILES['file']['tmp_name'])){來判斷不為空了,其實(shí)這樣也是不合理的

  如我們可以如此處理

   代碼如下:

  function file_type($filename)

  {

  $file = fopen($filename, "rb");

  $bin = fread($file, 2); //只讀2字節(jié)

  fclose($file);

  $strInfo = @unpack("C2chars", $bin);

  $typeCode = intval($strInfo['chars1'].$strInfo['chars2']);

  $fileType = '';

  switch ($typeCode)

  {

  case 7790:

  $fileType = 'exe';

  break;

  case 7784:

  $fileType = 'midi';

  break;

  case 8297:

  $fileType = 'rar';

  break;

  case 8075:

  $fileType = 'zip';

  break;

  case 255216:

  $fileType = 'jpg';

  break;

  case 7173:

  $fileType = 'gif';

  break;

  case 6677:

  $fileType = 'bmp';

  break;

  case 13780:

  $fileType = 'png';

  break;

  default:

  $fileType = 'unknown: '.$typeCode;

  }

  //Fix

  if ($strInfo['chars1']=='-1' AND $strInfo['chars2']=='-40' ) return 'jpg';

  if ($strInfo['chars1']=='-119' AND $strInfo['chars2']=='80' ) return 'png';

  return $fileType;

  }

  echo file_type('start.php');   // 6063 or 6033

  這樣我們可以限制上傳文件類型的同時(shí)也給程序做了一個(gè)安全處理

【如何判斷PHP文件上傳file是否已選擇上傳文件】相關(guān)文章:

PHP實(shí)現(xiàn)文件上傳和多文件上傳07-31

php文件怎么上傳06-21

PHP文件上傳源碼分析10-13

php文件上傳后端處理方法05-05

jQuery Mobile + PHP實(shí)現(xiàn)文件上傳10-20

php實(shí)現(xiàn)通過ftp上傳文件07-07

PHP實(shí)現(xiàn)大文件上傳源代碼10-21

用PHP實(shí)現(xiàn)文件上傳二法09-10

php多個(gè)文件及圖片上傳實(shí)例詳解08-02

主站蜘蛛池模板: 建昌县| 安福县| 成都市| 芷江| 鹤峰县| 沈丘县| 兴隆县| 濮阳县| 龙里县| 怀仁县| 邹城市| 融水| 象山县| 武隆县| 东港市| 南阳市| 长武县| 怀安县| 甘南县| 浏阳市| 韶关市| 沿河| 漯河市| 信丰县| 邵武市| 东乡县| 闵行区| 克什克腾旗| 镇巴县| 施秉县| 津市市| 长垣县| 远安县| 宁波市| 神池县| 黄大仙区| 开远市| 洪湖市| 孟连| 巴南区| 正镶白旗|