【问题标题】:MSSQL PDO query returns always 0MSSQL PDO 查询总是返回 0
【发布时间】:2014-03-20 13:52:58
【问题描述】:

我正在使用 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。我发现如果我直接在查询中传递变量,它就可以正常工作。我找到的所有解决方案都是删除 ' ' 。我什么都不用。是什么原因?

提前致谢。

【问题讨论】:

    标签: php sql-server pdo


    【解决方案1】:

    你得到 0,因为你总是得到假 (0)。

        if($rows <= $CONFIG['gamemaxaccounts']){
        return true;
        }else{
            return false;
             }
    

    你的函数看不到变量 $CONFIG['gamemaxaccounts'] 并且你总是得到错误;

    【讨论】:

    • 并且没有 $CONFIG['gamemaxaccounts'] 它再次返回 0。
    • 对结果使用 var_dump 并确保将变量 $OCNFIG 放入函数 public function getGameAccounts($macc_id, $CONFIG)
    • 谢谢!最后就是这样!我正确地传递了值并且它成功了
    猜你喜欢
    • 2012-07-31
    • 2022-12-19
    • 2017-02-11
    • 1970-01-01
    • 2017-01-25
    • 2011-08-26
    • 2015-11-12
    • 1970-01-01
    相关资源
    最近更新 更多