解决方案 »

  1. 忘记了还有点 index控制器的
    <?php
    class IndexAction extends Action{
    public function index(){
    //这里也有点问题的
    //if(isset($_SESSION['username']) && //$_SESSION['username']!=' '){
    // $this->display();
    //}else{
    // $this->redirect('login/login');
    //} }
    public function top(){
    $this->display();
    }
    public function left(){
    $this->display();
    }
    public function right(){
    $this->display();
    }



    }
    ?>
      

  2. Thinkphp 已经提供了验证码功能,你为什么不用?
    如果什么都是自己弄,那要使用框架做什么
    见 Thinkphp 开发手册:19.8  验证码
      

  3. verify有个check方法你好像没用,我写的供参考
     $verify = new \Think\Verify();
                if(!$verify->check($_POST['captcha'])){
                    echo "验证码错误";
    }else{}
    官方的
    // 检测输入的验证码是否正确,$code为用户输入的验证码字符串
    function check_verify($code, $id = ''){
        $verify = new \Think\Verify();
        return $verify->check($code, $id);
    }
      

  4. if(md5($code)!=$_SESSION['code']){在这句前加入echo $code.'<br>';
    echo md5($code).'<br>';
    echo $_SESSION['code'];看看两个是否一致,如果$code为空请检查 $_POST['code'],如果$_SESSION['code']为空,请检查session_start();是否已开启。
      

类似问题 »