2013-01-02 65 views
0

我想從sql表中的條目初始化一個變量;這個條目是我查詢過的。從SQL查詢初始化PHP變量

//Grab user id from users.sql 
$quser = $db->query(" 
    SELECT * 
     FROM users //in this table is a column named userident 
     WHERE username = '$user' //this where conditional filters to a lone row   
");*/ 

我試圖$var = $quser["ident"];,因爲這是我怎麼會顯示在foreach()環表項,但這似乎並沒有工作。

每個用戶只有一個ident條目,所以當我用where來過濾查詢時,它會導致一行。爲什麼我不能抓住入口並放置在變量中?

+0

無視最後的評論;我評論了這段代碼,因此我可以在此期間處理其他事情。 – gator

+0

你說'在這個表中是一列名爲userident',但你使用'$ quser [「ident」]' – kmkaplan

+0

對不起,我正在重命名的東西,因爲我去。我試圖在單行內的'ident'下找到條目。 – gator

回答

2

這是你需要做什麼

  1. 執行查詢
  2. 拿起第一排(如將只有一個行會這樣的工作,否則做一個循環)
  3. 從生產

這裏的行獲取該列是一個例子

$quser = $db->query("SELECT * FROM users WHERE username = '$user'"); 
    $first_row=$quser->row(); 

    $reqdData=$first_row->ident; // Or whateber column you need 
+1

我認爲上面的解決方案是完美的,但我想補充一個補丁 $ reqdData =($ first_row-> num_rows()> 0)?$ first_row-> ident:0; –

+0

有了這個,我得到了一個調用未定義方法PDOStatement :: row()的錯誤。 – gator