我想检查特定列中是否存在具有特定值的行。
我会检查很多列,所以我决定为所有内容创建一个函数,而不是specific为每个事物创建一个函数。
    public function checkInfo($column, $parm)
    {
        $this->check = $this->pdo->prepare("SELECT * FROM recoveries WHERE :column = :parm");
        $this->check->execute(array( ":column" => $column, ":parm" => $parm ));
        if ($this->check->rowCount())
        {
            return true;
        }
        else
        {
            throw new exception ("Could not find recovery ".$parm.", ".$column."");
        }
    }
变量列:列名。
变量 parm: parm 名称(用户在表单中发布的任何内容)。
这就是我检查其行数的方式:
    $column = 'recovery_email'; 
    try
    {
        $recover->checkInfo('recovery_email', $_POST['email']);
        echo
        '
            <form action="check.php" method="post">
                <input type="text" name="id">
                <button type="submit" class="btn">Continue</button>
            </form>
        ';
    }
    catch (Exception $t)
    {
        echo '<div class="alert alert-error">'.$t->getMessage().', <a href="check.php">Go back</a></div>';
    }
结果:
 Could not find recovery
- 列名是正确的。
 - 并且 Parm 是正确的(从数据库中获取)。
 
问题:
我输入了正确的信息,但它给了我一个找不到该行的错误。
问题
为什么会这样?
我怎样才能解决这个问题?