日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

PHP中的表单传值

發(fā)布時間:2025/3/21 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PHP中的表单传值 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?前言:試想一下如果PHP沒有了表單傳值,那么就相當(dāng)于一個沒有表達(dá)能力的人,因此表單傳值在php中是相當(dāng)重要的,但是不難,接下來我們一起來探討一下吧------>

(一)什么是表單傳值  

  概念:表單傳值指的是通過表單(如果還不知道表單的小伙伴要看看html的知識)構(gòu)建數(shù)據(jù),傳遞給服務(wù)器。

(二)表單傳值的方式(有且只有兩種)

  

get方式
  
  <form method="get"> xxxx </form>

?

get方式<form method="post"> xxxx </form>

?

(三)PHP接收表單傳值數(shù)據(jù)的方法

接收post傳值的方式:var_dump($_POST);

?

接收get傳值的方式:var_dump($_GET);

?

接收get/post傳值的方式:var_dump($_REQUEST);

?

小結(jié):

  1.要想能夠成功接收傳遞的參數(shù),那么input屬性里面必須要加name,

  2.服務(wù)器接收到的值是以name為關(guān)聯(lián)數(shù)組索引的一個數(shù)組

  3.如果想要接收復(fù)選框值,那么name=xxx[],需要加上中括號

  4.單選框時候需要有相同的name值

?

(四)POST方式與GET方式的區(qū)別

?

- GET方式具有可見性,而POST方式不具有可見性;
- 基于第一點,POST方式在安全性上比GET方式要高一些;
- 在傳輸?shù)臄?shù)據(jù)量上,POST方式可能比GET方式要大;
- 在支持的數(shù)據(jù)類型上,GET方式僅支持ASCII碼數(shù)據(jù)類型,POST方式無限制;

?

(五)文件上傳

  概念:文件上傳指的是將文件從本地傳輸?shù)街付ǖ姆?wù)器。

?

構(gòu)造表單上傳的三要素1.必須是post方式2.必須要在form表單屬性里面加 enctype="multipart/form-data"3.必須加<input type="file">

?

接收表單上傳文件的參數(shù)1. $_FILES 接收用戶上傳文件的數(shù)組變量

    參數(shù)包含6部分參數(shù): name type tmp_name error size 為索引的索引數(shù)組
      
      其中error包含了6個碼值(0-7除了5)的錯誤提示
      tmp_name 臨時存放的文件(會過期,因此轉(zhuǎn)移這個文件就達(dá)到了文件上傳的效果)

  2.?move_uploaded_file(文件臨時的路徑,轉(zhuǎn)移到的路徑)

?

同名文件的上傳: 思路(把name=xxx[])不同名文件上傳: 思路(構(gòu)造name不同名字就可以了)

?

(六)封裝文件上傳的方法

<?phpfunction upFile($file){ #檢查系統(tǒng)錯誤switch ( $file['error'] ){case 1:echo '文件上傳的大小超出了系統(tǒng)配置文件的限制大小~'; return false;case 2:echo '文件上傳的大小超過了瀏覽器的限制!'; return false;case 3:echo '文件沒有完全上傳完!'; return false;case 4:echo '用戶沒有選擇需要上傳的文件喲~'; return false;case 6:case 7:echo '服務(wù)器繁忙,請客官稍候再試~'; return false;}#檢查邏輯錯誤//檢查格式類型是否符合要求$limitType = ['image/jpeg', 'image/png'];//定義出允許的格式類型if( !in_array($file['type'], $limitType) ){//如果上傳的文件格式類型不在允許的范圍內(nèi),則給出提示信息,并且中止函數(shù)的執(zhí)行echo '您上傳的文件格式類型不符合要求,只能上傳' . implode('或', $limitType) . '格式的文件'; return false;}//檢查文件的大小是否符合邏輯要求$limitSize = 250 * 1024;//限定的大小為250KBif( $file['size']>$limitSize ){//如果上傳的文件大小超過了限定的大小,則給出提示,并且中止函數(shù)的執(zhí)行echo '您上傳的文件超過' . ($limitSize/1024) . 'KB的大小,請重新選擇上傳的文件!'; return false;}#構(gòu)建絕對不重復(fù)的文件名$fileName = uniqid('img_') . date('YmdHis') . '_' . mt_rand(0, 10000) . strstr($file['name'], '.');$path = 'F:/home/class/day11/code/upload/';$wholeFileName = $path . $fileName;#轉(zhuǎn)移文件到指定目錄$re = move_uploaded_file($file['tmp_name'], $wholeFileName);if( $re ){//上傳成功echo '恭喜你,文件上傳成功';return true;}else{//上傳失敗echo '系統(tǒng)繁忙,請稍候再試!'; return false;} }

?

轉(zhuǎn)載于:https://www.cnblogs.com/learningPHP-students2018/p/10138179.html

總結(jié)

以上是生活随笔為你收集整理的PHP中的表单传值的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。