2012-05-21 78 views
0

我需要一些幫助! I'm通過網址和登陸頁面我在我的代碼有這種傳遞多個變量:多個變量通過URL

str = " 
    SELECT 
    * 
    FROM wp_usermail 
    WHERE ID= "[email protected]$_GET['ID']"& Till="[email protected]$_GET['Till']; 

我想更準確的從數據庫中選擇正確的信息,這樣既ID和直到需求是否則你無法看到頁面上的內容。

現在我得到解析錯誤:syntax error, unexpected T_CONSTANT_ENCAPSED_STRING

+4

http://bobby-tables.com/再次乘坐。 – Quentin

+0

@Quentin +1 Bobby Tables! :) – Laimoncijus

+0

首先,您必須將ID設置爲INT,並且不要忘記使用mysql_real_escape_string()來避免SQL注入! (isset($ _GET ['ID'])){ $ id =(int)$ _GET ['ID']; } – HamZa

回答

3

這種替換:

$str = " 
SELECT 
* 
FROM wp_usermail 
WHERE ID = '" . mysql_real_escape_string ($_GET ['ID']) . "' AND Till = '" . mysql_real_escape_string ($_GET ['Till']) . "'"; 

你失蹤周圍的變量和您在變量的名字$,多. S,正確報價並沒有逃避輸入,你應該始終爲安全起見。

一兩件事:你應該停止使用mysql_*功能,並開始使用或者的mysqliPDO,因爲mysql_*現在已過時。

+0

謝謝@Jeroen! :D –

+0

好吧,我仍然是一種小菜,但我會記住它!再次感謝! –

2

您在變量名稱中缺少$