2013-04-09 151 views
-2

我有這樣的代碼就在這裏:未定義的變量

$conn = db_connect(); 
    $username = $_POST['username']; 
    $result = $conn->query("select * from where username='".$username"'"); 
    if (!$result) throw new Exception ("Could not excecute query"); 
    } 

是我在與被說有這些線路之一未定義的變量麻煩的錯誤消息。它只是對$result = $conn->query("select * from where username='".$username"'");行表示這一點,即使一切似乎都已定義。如果有人知道如何解決這個錯誤,請讓我知道!

+1

什麼是** EXACT **消息。 – zerkms 2013-04-09 22:50:25

+0

如果你在'$ result ='行之前'echo $ username'會怎麼樣?你有什麼收穫? – fedorqui 2013-04-09 22:50:27

+0

這是確切的消息:注意:未定義變量:在C:\ Users \ koenigmh \ Documents \ website1 \ signupform.php中運作 – Max 2013-04-09 22:51:53

回答

4

更改代碼這樣:

$conn = db_connect(); 
$username = $_POST['username']; 
$result = $conn->query("select * from table_name where username='".$username."'"); 
if (!$result) throw new Exception ("Could not excecute query"); 
} 

您忘記了用戶名後的期末。正如上面的評論之一所述。你還需要指定一個表名,所以你需要用你的表名替換table_name。

+1

+1擊敗了我。 – nickhar 2013-04-09 22:51:29

+4

更好的辦法是使用帶有綁定參數的預準備語句。不需要字符串連接,也避免了SQL注入 – Phil 2013-04-09 22:52:43

+0

敲我的表名.. – 2013-04-09 22:57:08