2013-08-05 77 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_ *