0
我使用BotDetect验证码在CakePHP的2.6应用程序,并已实施按照这个网页的指示于:CakePHP的V2.6和BotDetect验证码
How To Add BotDetect Protection To CakePHP 2.6 Applications
的验证码是在工作的伟大控制器/视图,我需要它。
但是,它似乎与某个控制器所使用的标准登录过程有些干扰。
这是我为它装载BotDetect组件控制器标题:
public $components = array('RequestHandler','Epd','BotDetect.Captcha' => array(
'CaptchaId' => 'EpdCaptcha',
'UserInputId' => 'CaptchaCode'));
这是我的登录功能:
public function login() {
$this->layout='login';
if ($this->request->is('post')) {
if ($this->Auth->login()) {
$this->redirect($this->Auth->redirectUrl());
}
else
{
$this->Session->setFlash(__('Invalid username or password, try again'));
}
}
这是我的AppController.php:
class AppController extends Controller {
public $components = array(
'Auth' => array(
'loginRedirect' => array(
'controller' => 'users',
'action' => 'selectorg'
),
'logoutRedirect' => array(
'controller' => 'users',
'action' => 'login'
),
'authenticate' => array(
'Form' => array(
)
)
),
'Session'
);}
现在当我登录到应用程序时,auth组件不授权登录,它只是bo退回到登录屏幕。但是当我删除BotDetect组件时,登录工作完美。我试着改变加载组件的顺序,看看是否有什么区别...但无济于事。
有什么建议吗?