我正在使用mssql数据库来构建应用程序。要连接数据库我使用
$db = new PDO('mssql:host=' . $CONFIG['dbserver'] . ';dbname=' .
$CONFIG['lin2db'],$CONFIG['dbuser'], $CONFIG['dbpass']);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
我在课堂上有这个功能。
public function getGameAccounts($macc_id){
$query = $this->db->prepare("SELECT COUNT(*) FROM user_account WHERE macc_id = ? ");
$query->bindValue(1, $macc_id);
try{
$query->execute();
$rows = $query->fetchColumn();
if($rows <= $CONFIG['gamemaxaccounts']){
return true;
}else{
return false;
}
}catch(PDOException $e){
die($e->getMessage());
}
}
变量$ macc_id包含一个数字ex。 40。当我调用这个函数时,我总是得到0.我想出如果我直接在查询中传递变量就可以了。我找到的所有解决方案都是删除''。我不使用任何。是什么原因?
提前致谢。
答案 0 :(得分:1)
你得0,因为你总是得假(0)。
if($rows <= $CONFIG['gamemaxaccounts']){
return true;
}else{
return false;
}
你的功能没有看到变量$ CONFIG ['gamemax accounts']而你总是得到假;