2014-03-28 57 views
0

我有這樣的代碼在這裏:如何獲得USER_ID與此代碼

$selectUserQuery = 'SELECT user_id, email_address, password FROM user WHERE email_address = :email_address AND password = :password AND confirm_status = 1'; 
$prepSelectUser = $conn->prepare($selectUserQuery); 
$prepSelectUser->bindParam(':email_address', $emailEnc, PDO::PARAM_STR); 
$prepSelectUser->bindParam(':password', $passwordEnc, PDO::PARAM_STR); 
$prepSelectUser->execute(); 
$userResult = $prepSelectUser->fetchAll(); 
$userCount = count($userResult); 

我選擇的電子郵件地址和密碼,以查看它們是否匹配(這是登錄),我需要的USER_ID啓動一個會話以user_id作爲其值。但是,fetchAll()函數會返回結果數組,但我需要單獨使用user_id,只能將其用作會話的值。

如何分別獲取user_id?

回答

0

試試這個:

foreach ($userResult AS $row) { 
    var_dump($row[0]); 
} 
+0

好了,這是怎麼了,我用你的代碼與會話:$ _SESSION ['uid'] = $ row ['user_id'] ;.但是,它在頁面頂部打印「字符串(2)」56「」。我該如何擺脫? – user3456043

+0

@ user3456043 - 您在$ userResult中有一個mysql結果行數組。在循環訪問時,您會在每個循環的第一個元素中找到'user_id'。 var_dump()僅用於說明在哪裏查找它。您可以根據自己的需要安全地調整代碼。 – blue

+0

好的兄弟。我刪除了var_dump函數,它工作正常。乾杯 – user3456043

0

應該在Userresult ::

normaly是HOULD是:

$userResult[0]['user_id'] (1st user) 
$userResult[1]['user_id'] 2th user 
$userResult[5]['user_id'] 6th user....