从选择查询设置变量


Setting variable from select query

不是最有经验的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);的简单登录机制似乎无法正确显示$result中的行customercode

mysql数据库中的SELECT查询是否可以用作会话变量?

谢谢-

您需要使用mysql_fetch*来获取customerCode:

$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_*