2013-08-05 78 views
2

不是最有經驗的PHP式的人在那裏,但是由於需要和要求,我已經慢慢地開始構建一個「登錄」系統內部/外部項目。從選擇查詢設置變量

用戶已登錄,然後能夠搜索基於然而三數據字段,掃描TIF圖像;因爲有多個客戶表中,我想限制查詢到登錄的用戶「客戶編號」

$sql = "SELECT * FROM $tbl_name WHERE username = '$username' and password = '$md5'"; 

$result = mysql_query($sql); 

$count = mysql_num_rows($result); 

if($count == 1) { 

$_SESSION['username'] = strtoupper($username); 
$_SESSION['loggedin'] = TRUE; 
$_SESSION['customercode'] = $result['customercode']; 

header('location:home.php'); 

} else { 

echo '<h1>Wrong Username or Password</h1>'; 
} 

簡單的登錄機制,按預期工作,並適用相應的$_SESSION['username'] = strtoupper($username);但似乎無法從中獲取行customercode$result要正確顯示?

從一個MySQL數據庫SELECT查詢可以被用作會話變量?

謝謝 -

+1

mysql_fetch_assoc($ result) –

+1

勇敢的靈魂,不保護注射攻擊,_and _利用廢棄的函數... –

+0

*不是所有的代碼包含,注入攻擊都包括在內,併爲基地mysql_ *使用,直到一切都被改變mysqli_ *它在這個發展階段 - 感謝您的關注:) –

回答

2

您需要使用mysql_fetch_ *獲得customeCode:

$result = mysql_query($sql); 

$count = mysql_num_rows($result); 

if($count == 1) { 

$data = mysql_fetch_array($result); //add this line 

$_SESSION['username'] = strtoupper($username); 
$_SESSION['loggedin'] = TRUE; 
$_SESSION['customercode'] = $data['customercode']; 

} 

注:由於大多數的問題都被推薦,我還建議 你來使用mysqli_ *或PDO代替mysql_ *