2015-03-02 67 views
0

我環顧四周,我似乎無法找到任何地方的答案,如果它存在的話。使用會話變量從數據庫中提取額外的數據

我想用$ _SESSION變量訪問我的表中的字段。有了這個,我希望查找$ user_id變量並將其與成員表中的id匹配(這是相同的)並回顯'fname'字段。

這裏是我的代碼有此位:

$user_id = $_SESSION['user_id']; 
echo $user_id; //this check echo's out the number 2, which is correct. 

$result = mysql_query("SELECT * FROM members WHERE id == $user_id"); 
echo $result; //doesnt echo anything out 

$fname = $result; 
echo $fname; 

這可能是一個新手的錯誤在我的部分,但是,這將是非常讚賞的任何幫助。 乾杯

+0

數據庫連接在哪裏?你的錯誤檢查在哪裏? – 2015-03-02 20:42:09

+2

SQL不使用兩個'=='進行比較,只有一個'='。但是這並不能解決它:你需要閱讀一個關於用PHP查詢數據庫的教程,因爲它不像你猜測的那樣簡單。 – developerwjk 2015-03-02 20:42:55

+0

僅僅是第二個@developerwjk,當你在它的時候,學習如何正確地做到這一點,就是通過使用'mysqli'或'PDO'準備好的語句。拋棄「mysql_」函數的使用,因爲它們將被棄用。 – Havelock 2015-03-02 20:49:54

回答

0

代碼中的一個關鍵的SQL語法錯誤是之前缺少的單引號的$ USER_ID後:

$result = mysql_query("SELECT * FROM members WHERE id = '" . $user_id . "'"); 

如果不引用變量數據的SQL將它解釋爲代碼,而不是數據。嘗試一下。