2013-09-16 48 views

回答

2

在你reviews.php,你可以這樣做:

$reviewID = $_GET['id']; 

,並確保它的設置,我會做到以下幾點:

$reviewID = (isset($_GET['id']) : $_GET['id'] ? NULL; 

說明:

超鏈接的href值與012類似。查詢字符串(作爲名稱/值對)在GET請求的URL中發送。由於請求方法是GET,因此您需要使用$_GET超全局數組,因此$_POST將不起作用。

if ($_SERVER['REQUEST_METHOD'] === 'GET') { 
    //do something 
} 

希望這回答了你的問題:

,如果你想查詢請求類型可以使用$_SERVER['REQUEST_METHOD']

+0

'is_null'不是必需的,因爲'isset'檢查它是否存在並且不爲空。 –

+0

如果變量爲空,則isset()不會返回* true *,因此'is_null()'實際上不是必需的。 – ComFreek

+0

謝謝。我已經更新了答案。 –

2

使用$_GET超全局集合,它包含每個querystring值。

$review = $_GET['id']; 
+0

應該是'$ _GET ['id']'。 – ComFreek

+0

謝謝你的工作很棒。 $ _post怎麼不起作用? – user1829823

+0

@ user1829823:我的答案*可能會回答你的問題。 –

2

它是總是最好在嘗試抓取它之前檢查GET變量是否存在。要檢查它是否可用,並且不爲空,你可以這樣做:

$__review_ID = isset($_GET['id']) ? $_GET['id'] : FALSE; 
0

使用$_GET陣列。爲了得到 '審查' 參數,使用方法:

echo $_GET['review']; 

編輯

要獲得 '身份證' 參數:

echo $_GET['id']; 
+0

應該是'$ _GET ['id']'。 – ComFreek

0

由於PHP的最佳實踐,您可以使用filter_input

PHP's new input_filter does not read $_GET or $_POST arrays

這是因爲你需要進行殺毒的數據傳遞到保持侑應用從注入代碼,XSS等安全...

FILTER_SANITIZE_ENCODED 
FILTER_SANITIZE_NUMBER_INT 
FILTER_SANITIZE_EMAIL 
FILTER_SANITIZE_URL 

我認爲這個問題是重複的,需要關閉。

+0

那你爲什麼用不相關的信息回答它? –

+0

爲什麼其他答案是有效的,但正如我之前所說:如果最佳做法有任何相關性,*可能*這個問題是重複的。 –

+1

*我認爲這個問題是重複的,需要關閉。* - 我正在談論這個問題。如果你認爲這個問題id重複,那麼在評論中這樣說,並鏈接到重複。如果您有近距離投票權,請對其進行近距離投票。說它是重複的,並回答無關的信息不會有幫助。 –