douzhongqiu5032 2017-06-16 05:05
浏览 24
已采纳

调用一个成员函数bindParam()是什么?

My php code is given below.

class Login {

    public function logar($login, $senha){
        $db = new Database();
        try{
            $conn = $db->connect();
            $prepare = $conn->prepare("SELECT * FROM account WHERE Login = :login AND Passwd = :senha");
            $prepare->bindParam(':login', $login, PDO::PARAM_STR);
            $prepare->bindParam(':senha', $senha, PDO::PARAM_STR);
            $prepare->execute();
            $ranking = $prepare->rowCount();
            if ($ranking >= 1){
                return "<div class='n_ok' style='margin:9px 15px;'><p>Successfully.</p></div>";
            }else{
                return "<div class='n_error' style='margin:9px 15px;'><p>Usuario ou senha incorreta.</p></div>";
            }
        }catch(PDOException $e){
            echo "Erro: ".$e->getMessage();
        }
    }

}

While i am running this below error is occured

Fatal error: Call to a member function bindParam() on boolean in C:\AppServ\www\class\Login.class.php on line 9**

  • 写回答

2条回答 默认 最新

  • dongqiuxu2270 2017-06-16 06:42
    关注

    What does "new Database()" refer to. I hope it should return PDO Connection.

    Below Code will work fine for sure

    class Login {
        public function logar($login, $senha){
            $conn = new PDO('mysql:host=dbhostname;dbname=databasename', $user, $pass);
            try{
                $prepare = $conn->prepare("SELECT * FROM account WHERE Login = :login AND Passwd = :senha");
                $prepare->bindParam(':login', $login, PDO::PARAM_STR);
                $prepare->bindParam(':senha', $senha, PDO::PARAM_STR);
                $prepare->execute();
                $ranking = $prepare->rowCount();
                if ($ranking >= 1){
                    return "<div class='n_ok' style='margin:9px 15px;'><p>Successfully.</p></div>";
                }else{
                    return "<div class='n_error' style='margin:9px 15px;'><p>Usuario ou senha incorreta.</p></div>";
                }
            }catch(PDOException $e){
                echo "Erro: ".$e->getMessage();
            }
        }
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起
  • ¥15 msix packaging tool打包问题
  • ¥15 finalshell节点的搭建代码和那个端口代码教程
  • ¥15 用hfss做微带贴片阵列天线的时候分析设置有问题
  • ¥15 Centos / PETSc / PETGEM
  • ¥15 centos7.9 IPv6端口telnet和端口监控问题
  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 海浪数据 南海地区海况数据,波浪数据