caoporm97国产在线视频|欧美性XXXXX精品|一本一道久久a久久精品综合开|精品久久久久久久久久久AⅤ|

十年專注于品牌網(wǎng)站建設(shè) 十余年專注于網(wǎng)站建設(shè)_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
南昌百恒網(wǎng)絡(luò)微信公眾號 掃一掃關(guān)注
小程序
tel-icon全國服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)微信小程序

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

中等標(biāo)簽$_POST object 表單變量獲取使用方法

百恒網(wǎng)絡(luò) 2013-05-15 6068

使用訂單的目的是為了收集客戶訂單。在PHP中,獲得客戶輸入的具體數(shù)據(jù)是非常簡單的,但是具體的方法還依賴于你所使用的PHP版本,以及php.ini文件的設(shè)置。

簡短、中等以及冗長風(fēng)格的表單變量

在PHP腳本中,可以用PHP變量的形式訪問每一個表單域,其中PHP變量名稱必須與表單域的名稱一致。你可以很容易識別PHP的變量名稱,因?yàn)樗鼈兌际且?符號開始的。(漏掉這個$符號是一個常見的編程錯誤。)

根據(jù)PHP版本和設(shè)置的不同,通過變量,可以有3種方法來訪問表單數(shù)據(jù)。這些方法并沒有正式的名稱,因此我們給它們定義了3個昵稱,分別是簡短風(fēng)格、中等風(fēng)格和冗長風(fēng)格。在任何情況下,一個頁面上提交給PHP腳本的每一個表單域在PHP腳本中都是可以使用的。

你可以按如下所示的方法訪問tireqty域的內(nèi)容:

$tireqty //short style

$_POST['tireqty'] //medium style

$HTTP_POST_VARS['tireqty'] //long style

在這個例子以及整本書中,我們將使用中等風(fēng)格(也就是,$_POST[。tireqtyi])來引用表單變量,但是為了便于使用,我們創(chuàng)建了簡短風(fēng)格的變量。然而,在代碼中,我們采用這種風(fēng)格而不是自動選擇的風(fēng)格來引用變量,是因?yàn)樽詣舆x擇風(fēng)格可能會帶來安全性的問題。

對于讀者自己的代碼,讀者可能會決定使用不同的方法,但是必須做出正確的選擇。接下來我們將介紹上述不同的方法。

◎簡短風(fēng)格($ tireqty)非常方便,但是需要將register_globals配置選項(xiàng)設(shè)置為on。由于安全性的原因,在默認(rèn)情況下,該選項(xiàng)的默認(rèn)設(shè)定值為off。這種風(fēng)格的標(biāo)記容易導(dǎo)致產(chǎn)生安全性問題的錯誤,也就是為什么不推薦的原因。在PHP 6中,這個配置選項(xiàng)可能會被棄用,因此在新代碼中使用這種風(fēng)格的變量名稱并不是好的想法。

◎中等風(fēng)格($_POST['tireqty'])是如今所推薦的。如果基于中等風(fēng)格,創(chuàng)建簡短版本的變量名稱(南昌網(wǎng)站建設(shè)公司工程師在所有實(shí)例中使用這種方式)將不會產(chǎn)生安全性問題,只是便于使用的問題。

◎冗長風(fēng)格( $HTTP_POST_VARS['tireqty。])是最詳細(xì)的,但是請注意,它已經(jīng)被棄用,因此從長遠(yuǎn)看,這種風(fēng)格可能會被刪除。這種風(fēng)格過去曾是最容易移植的,但是如今可以通過register_long_arrays配置指令禁用它,這樣可以改進(jìn)性能。因此,同樣地,如果不需要將你的代碼安裝在舊版本的服務(wù)器上,就沒有必要在新代碼中使用這種風(fēng)格。

當(dāng)使用簡短風(fēng)格時,腳本中的變量名稱應(yīng)該與HTML表單中的表單域名稱相同。在腳本中,不需要聲明變量或者創(chuàng)建這些變量。就如同向一個函數(shù)傳遞參數(shù),這些變量將被傳遞到腳本中。如果讀者使用這種風(fēng)格,就可以使用類似于$tireqty的變量。表單中的$tireqty域?qū)⒃诒韱?

處理腳本中創(chuàng)建$ tireqty變量。對變量如此方便的訪問是非常受歡迎的,但是在將該選項(xiàng)設(shè)置為on之前,讀者應(yīng)該想想為什么PHP開發(fā)小組將該選項(xiàng)設(shè)置為off。

像這樣對變量的直接訪問是非常方便的,但是這可能會使讀者遇到破壞腳本安全性的編程錯誤。由于表單變量會自動轉(zhuǎn)換成全局變量,因此在你所創(chuàng)建的變量與直接來自用戶的不可信任的變量之間沒有明顯的區(qū)別。

如果沒有對自己的變量賦給一個初始值,腳本用戶就可以像表單變量一樣傳遞變量和值,這樣就可能造成混亂。如果選擇使用方便的簡短風(fēng)格來訪問變量,必須注意對你自己的變量賦予一個初始值。

中等風(fēng)格涉及了從$_POST、$_GET或$_REQUEST數(shù)組之一檢索變量。$_GET或$_POST數(shù)組之一都可以保存表單變量的細(xì)節(jié)。使用哪一個數(shù)組取決于提交表單時使用的方法是POST還是GET。此外,通過POST或GET方法及其組合方式提交的所有數(shù)據(jù)都可以通過$_REQUEST數(shù)組獲得。

如果表單是通過POST方法提交的,tireqty文本輸入框中的數(shù)據(jù)將保存在$_POST['tireqty']中。如果表單是通過GET方法提交的,數(shù)據(jù)將保存在$一GET['tireqty']。在任何一種情況下,數(shù)據(jù)都可以通過$_REQUEST['tireqty']獲得。

這些數(shù)組被稱作是超級全局(superglobal)變量。在我們介紹變量的作用域時,我們還將在稍后的內(nèi)容詳細(xì)介紹這些超級全局變量。

下面,讓我們看一個創(chuàng)建便于使用的變量副本的例子。

要將一個變量的值復(fù)制給另一個變量,你可以使用賦值操作符。在PHP中,賦值操作符是等于號(=)。如下代碼將創(chuàng)建一個名為$tireqty的新變量,并且將$POST['tireqty']的內(nèi)容復(fù)制給這個新變量:

$tireqty=$_POST['tireqty '];

南昌網(wǎng)站設(shè)計公司工程師提醒大家在使用$_POST時一定要注意安全,特別是防SQL注入及跨站攻擊.

將如下代碼塊放置在訂單處理腳本的開始處。在本書中,處理表單數(shù)據(jù)的所有腳本的開始處都將包含與這個相似的代碼塊。由于這段代碼不會產(chǎn)生任何輸出,因此無論將這段代碼放置在開始一個HTML頁面的和其他HTML標(biāo)記之前還是之后,都不會有任何差異。通常,

我們將這段代碼放置在腳本的最開始處,這樣容易查找。

// create short variable names

$tireqty=$_POST['tireqty l];

$oilqty=$_POST['oilqty'];

$sparkqty=s_POST ['sparkqty'];

?>

這段代碼將創(chuàng)建3個新變量:$tireqty、$oilqty和$sparkqty,并且將通過POST方法從表單中傳送過來的數(shù)據(jù)分別賦值給這3個變量。

要使該腳本能夠完成一些可見的操作,可以在PHP腳本結(jié)束處添加如下所示的代碼:

echo

Your order i s as follows:

;

echo $tireqty. tires

';

echo $oilqty. 'bottles of oil

echo $sparkqty. ‘spark plugs

‘;

在這里,還沒有檢查變量內(nèi)容,因此也無法確認(rèn)一些重要數(shù)據(jù)已經(jīng)進(jìn)入了每一個表單域。嘗試輸入一些錯誤數(shù)據(jù)并且觀察發(fā)生的事情。廣大南昌網(wǎng)絡(luò)公司技術(shù)人員可能希望嘗試在該腳本中添加一些數(shù)據(jù)校驗(yàn)的邏輯。

像上例中,從用戶輸入直接獲得輸入并輸出到瀏覽器是一個有風(fēng)險的操作,它可能帶來安全隱患。你應(yīng)該對數(shù)據(jù)進(jìn)行過濾。

如果現(xiàn)在于瀏覽器中載入這個文件,當(dāng)然,具體的數(shù)值還取決于在表單中輸入的數(shù)據(jù)。

本文僅限內(nèi)部技術(shù)人員學(xué)習(xí)交流,不得作于其他商業(yè)用途.文章出自:南昌網(wǎng)站建設(shè)公司-百恒網(wǎng)絡(luò) http://m.gimmickmag.com 如轉(zhuǎn)載請注明出處!


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠為您服務(wù)×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
×