PHP基礎之POST與GET

2022-07-26 06:27:09 字數 1954 閱讀 8089

post 與 get區別

重點:

*.post傳輸資料時,不需要在url中顯示出來,而get方法要在url中顯示。

*.post傳輸的資料量大,可以達到2m,而get方法由於受到url長度的限制,只能傳遞大約1024位元組.

*.post顧名思義,就是為了將資料傳送到伺服器段,get就是為了從伺服器段取得資料。而get之所以也能傳送資料,只是用來設計告訴伺服器,你到底需要什麼樣的資料。post的資訊作為http請求的內容,而get是在http頭部傳輸的。

詳細說明:

1、get 通過 url 請求來傳遞使用者的資料,將表單內各欄位名稱與其內容以成對的字串連線,置於 action 屬性所指程式的 url 後, 資料都會直接顯示在 url 上,就像使用者點選乙個鏈結一樣;

post 方法通過 http post 機制,將表單內各欄位名稱與其內容放置在 html 表頭(header)內一起傳送給伺服器端交由 action 屬效能所指的程式處理,該程式會通過標準輸入(stdin)方式,將表單的資料讀出並加以處理

post方式傳遞的資料量相對較大,它是等待伺服器來讀取資料,也有位元組限制,這是為了避免對伺服器用大量資料進行惡意攻擊。

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

4、 get 方式提交資料,會帶來安全問題,表單提交建議使用 post 方法;(比如登陸頁面,通過 get 方式提交資料時,使用者名稱和密碼出

現在 url 上,如果頁面可以被快取或者其他人可以訪問客戶這台機器,就可以從歷史記錄獲得該使用者的帳號和密碼)

post 方法提交的表單頁面常見的問題是,該頁面如果重新整理的時候,會彈出對話方塊。建議:出於安全性考慮,最好使用 post 提交資料

5、get限制form表單的資料集的值必須為ascii字元;而post支援整個iso10646字符集。

6、get是form的預設方法。

post用來新建資源(也可以用於更新資源)

put用來更新資源

delete用來刪除資源。

magic_quotes_gpc總結如下:

1. 對於magic_quotes_gpc=on的情況,

我們可以不對輸入和輸出資料庫的字串資料作

addslashes()和stripslashes()的操作,資料也會正常顯示。

如果此時你對輸入的資料作了addslashes()處理,

那麼在輸出的時候就必須使用stripslashes()去掉多餘的反斜槓。

2. 對於magic_quotes_gpc=off 的情況

必須使用addslashes()對輸入資料進行處理,但並不需要使用stripslashes()格式化輸出

因為addslashes()並未將反斜槓一起寫入資料庫,只是幫助mysql完成了sql語句的執行。

關於php注入中的magic_quotes_gpc     magic_quotes_gpc = on

大家都知道php配置檔案php.in  ,如果裡面的magic_quotes_gpc  配置被開啟 那就是magic_quotes_gpc = on   懂點php的人都知道。

那我們就要對數值型的字段注入。

1 

2 if ( isset($_post["f_login"] ) )

10 }

11 ?>

1 

2

3

sample testtitle>

4 head>

5

6

php 發出get與post請求

3.1 get方式實現 初始化 ch curl init 設定選項,包括 urlcurl setopt ch,curlopt url,curl setopt ch,curlopt returntransfer,1 curl setopt ch,curlopt header,0 執行並獲取 html ...

JSP之POST與GET的區別

有jsp檔案 test.jsp first name last name 有如下html檔案 hello.html get 瀏覽器中如下圖 通過get傳送後,如圖 從url可以看出,get傳輸的資料在url的後面以顯式的方法表示出來了 肉眼可見 first name adam last name b...

PHP實現HTTP的POST與GET 類

php實現http的post與get 類 php socket程式設計,傳送http請求 http請求類的介面 此方法負責寫請求行 protectedfunctionsetline method 此方法負責寫頭資訊 publicfunctionsetheader headerline 此方法負責寫主...