php中get和post區別(php get和post的區別)

本文目錄一覽:

php中get和post的區別

1、Get 方法通過 URL 請求來傳遞用戶的數據,將表單內各字段名稱與其內容,以成對的字符串連接,置於 action 屬性所指程序的 url 後,如[url];password=51js[/url], 數據都會直接顯示在 url 上,就像用戶點擊一個鏈接一樣;Post 方法通過 HTTP post 機制,將表單內各字段名稱與其內容放置在 HTML 表頭(header)內一起傳送給服務器端交由 action 屬性能所指的程序處理,該程序會通過標準輸入(stdin)方式,將表單的數據讀出並加以處理

2、 Get 方式需要使用 Request.QueryString 來取得變量的值;而 Post 方式通過 Request.Form 來訪問提交的內容

3、 Get 方式傳輸的數據量非常小,一般限制在 2 KB 左右,但是執行效率卻比 Post 方法好;而 Post 方式傳遞的數據量相對較大,它是等待服務器來讀取數據,不過也有位元組限制,這是為了避免對服務器用大量數據進行惡意攻擊,根據微軟方面的說法,微軟對用 Request.Form() 可接收的最大數據有限制,IIS 4 中為 80 KB 位元組,IIS 5 中為 100 KB 位元組

建議:除非你肯定你提交的數據可以一次性提交,否則請盡量用 Post 方法

4、 Get 方式提交數據,會帶來安全問題,比如一個登陸頁面,通過 Get 方式提交數據時,用戶名和密碼將出現在 URL 上,如果頁面可以被緩存或者其他人可以訪問客戶這台機器,就可以從歷史記錄獲得該用戶的帳號和密碼,所以表單提交建議使用 Post 方法;Post 方法提交的表單頁面常見的問題是,該頁面如果刷新的時候,會彈出一個對話框

建議:出於安全性考慮,建議最好使用 Post 提交數據

***********************************

在B/S應用程序中,前台與後台的數據交互,都是通過HTML中Form表單完成的。Form提供了兩種數據傳輸的方式——get和post。 雖然它們都是數據的提交方式,但是在實際傳輸時確有很大的不同,並且可能會對數據產生嚴重的影響。雖然為了方便的得到變量值,Web容器已經屏蔽了二者的 一些差異,但是了解二者的差異在以後的編程也會很有幫助的。

Form中的get和post方法,在數據傳輸過程中分別對應了HTTP協議中的GET和POST方法。二者主要區別如下:

1、Get是用來從服務器上獲得數據,而Post是用來向服務器上傳遞數據。

2、Get將表單中數據的按照variable=value的形式,添加到action所指向的URL後面,並且兩者使用「?」連接,而各個變量之間使用 「」連接;Post是將表單中的數據放在form的數據體中,按照變量和值相對應的方式,傳遞到action所指向URL。

3、Get是不安全的,因為在傳輸過程,數據被放在請求的URL中,而如今現有的很多服務器、代理服務器或者用戶代理都會將請求URL記錄到日誌文件中, 然後放在某個地方,這樣就可能會有一些隱私的信息被第三方看到。另外,用戶也可以在瀏覽器上直接看到提交的數據,一些系統內部消息將會一同顯示在用戶面 前。Post的所有操作對用戶來說都是不可見的。

4、Get傳輸的數據量小,這主要是因為受URL長度限制;而Post可以傳輸大量的數據,所以在上傳文件只能使用Post(當然還有一個原因,將在後面的提到)。

5、Get限制Form表單的數據集的值必須為ASCII字符;而Post支持整個ISO10646字符集。

6、Get是Form的默認方法。

*.Post傳輸數據時,不需要在URL中顯示出來,而Get方法要在URL中顯示。

*.Post傳輸的數據量大,可以達到2M,而Get方法由於受到URL長度的限制,只能傳遞大約1024位元組.

*.Post顧名思義,就是為了將數據傳送到服務器段,Get就是為了從服務器段取得數據.而Get之所以也能傳送數據,只是用來設計告訴服務器,你到底需要什麼樣的數據.Post的信息作為http請求的內容,而Get是在Http頭部傳輸的。

php面試題get和post的區別

網頁表單當中的get方式和post方式的區別

1、get方式可傳遞的數據量有限,大約是2K左右,而post在iis5當中則達到100k,一般人們可以默認post是無限制的;

2、get方式在提交帳號密碼等表單時不如post方式安全。在get提交表單以後瀏覽器的url會將你提交的表單參數全部顯示在地址欄當中,而且可以通過機器的緩存來直接查看到各項參數;而post方式則不會;

3、get方式在後台處理頁面用Request.QueryString接收各個參數;而post則用Request.Form獲取;

4、get方式會忽略form action=”a.asp?a=a”裡邊的”a=a”這個參數;而post方式則不會

表單的提交有兩種方式:GET和POST,這兩種方式的區別是什麼?

一、指代不同

1、GET:從指定的資源請求數據。

2、POST:向指定的資源提交要被處理的數據

二、規則不同

1、GET: 請求可被緩存; 請求保留在瀏覽器歷史記錄中; 請求可被收藏為書籤;請求不應在處理敏感數據時使用; 請求有長度限制; 請求只應當用於取回數據。

2、POST:請求不會被緩存; 請求不會保留在瀏覽器歷史記錄中; 不能被收藏為書籤; 請求對數據長度沒有要求。

三、數據要求不同

1、GET:當發送數據時,GET 方法向 URL 添加數據;URL 的長度是受限制的(URL 的最大長度是 2048 個字符)。與 POST 相比,GET 的安全性較差,因為所發送的數據是 URL 的一部分。

2、POST:發送數據無限制。POST 比 GET 更安全,因為參數不會被保存在瀏覽器歷史或 web 服務器日誌中。

參考資料來源:百度百科-HTTP請求

參考資料來源:百度百科-post

post和get的區別?

一、功能不同

1、get是從服務器上獲取數據。

2、post是向服務器傳送數據。

二、過程不同

1、get是把參數數據隊列加到提交表單的ACTION屬性所指的URL中,值和表單內各個字段一一對應,在URL中可以看到。

2、post是通過HTTP post機制,將表單內各個字段與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址。用戶看不到這個過程。

三、獲取值不同

1、對於get方式,服務器端用Request.QueryString獲取變量的值。

2、對於post方式,服務器端用Request.Form獲取提交的數據。 

四、傳送數據量不同

1、get傳送的數據量較小,不能大於2KB。

2、post傳送的數據量較大,一般被默認為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。 

五、安全性不同

1、get安全性非常低。

2、post安全性較高。

如果沒有加密,他們安全級別都是一樣的,隨便一個監聽器都可以把所有的數據監聽到。

參考資料來源:百度百科-post

Get請求和Post請求有何區別?

Get是向服務器發索取數據的一種請求,而Post是向服務器提交數據的一種請求。

1. Get是獲取信息,而不是修改信息,類似數據庫查詢功能一樣,數據不會被修改。

2. Get傳輸的數據有大小限制,因為GET是通過URL提交數據,那麼GET可提交的數據量就跟URL的長度有直接關係了,不同的瀏覽器對URL的長度的限制是不同的。

3. GET請求的數據會被瀏覽器緩存起來,用戶名和密碼將明文出現在URL上,其他人可以查到歷史瀏覽記錄,數據不太安全。Request.QueryString來獲取Get方式提交來的數據。

4. Post請求則作為http消息的實際內容發送給web服務器,數據放置在HTML Header內提交,Post沒有限制提交的數據。

5. Post比Get安全,當數據是中文或者不敏感的數據,則用get,因為使用get,參數會顯示在地址,對於敏感數據和不是中文字符的數據,則用post。

6. POST表示可能修改變服務器上的資源的請求,在服務器端,用Post方式提交的數據Request.Form來獲取。

php中的表單提交方式get和post有什麼區別?

1 get明文傳輸,信息附加在url上面,get明文傳輸,post更加安全

2 get傳輸有大小限制,應該是3k,post需要制定傳輸類型

3 get多用於獲取數據,根據get變量的不同調用不同的數據,post多用於提交數據,提交用戶輸入的數據

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/247138.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:19
下一篇 2024-12-12 13:19

相關推薦

  • Python中new和init的區別

    new和init都是Python中常用的魔法方法,它們分別負責對象的創建和初始化,本文將從多個角度詳細闡述它們的區別。 一、創建對象 new方法是用來創建一個對象的,它是一個類級別…

    編程 2025-04-29
  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • Sublime Test與Python的區別

    Sublime Text是一款流行的文本編輯器,而Python是一種廣泛使用的編程語言。雖然Sublime Text可以用於編寫Python代碼,但它們之間有很多不同之處。接下來從…

    編程 2025-04-29
  • Shell腳本與Python腳本的區別

    本文將從多個方面對Shell腳本與Python腳本的區別做詳細的闡述。 一、語法差異 Shell腳本和Python腳本的語法存在明顯差異。 Shell腳本是一種基於字符命令行的語言…

    編程 2025-04-29
  • Python中while語句和for語句的區別

    while語句和for語句是Python中兩種常見的循環語句,它們都可以用於重複執行一段代碼。然而,它們的語法和適用場景有所不同。本文將從多個方面詳細闡述Python中while語…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Web程序和桌面程序的區別

    Web程序和桌面程序都是進行軟件開發的方式,但是它們之間存在很大的區別。本文將從多角度進行闡述。 一、運行方式 Web程序運行於互聯網上,用戶可以通過使用瀏覽器來訪問它。而桌面程序…

    編程 2025-04-29
  • TensorFlow和Python的區別

    TensorFlow和Python是現如今最受歡迎的機器學習平台和編程語言。雖然兩者都處於機器學習領域的主流陣營,但它們有很多區別。本文將從多個方面對TensorFlow和Pyth…

    編程 2025-04-28
  • 麥語言與Python的區別

    麥語言和Python都是非常受歡迎的編程語言。它們各自有自己的優缺點和適合的應用場景。本文將從語言特性、語法、生態系統等多個方面,對麥語言和Python進行詳細比較和闡述。 一、語…

    編程 2025-04-28
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28

發表回復

登錄後才能評論