Php Laravel4验证器、验证码和;会话无法匹配
我有一个helper方法,它返回captcha图像url并存储密钥会话:Php Laravel4验证器、验证码和;会话无法匹配,php,session,laravel-4,captcha,Php,Session,Laravel 4,Captcha,我有一个helper方法,它返回captcha图像url并存储密钥会话: function captcha(){ $builder = new CaptchaBuilder; $builder->build(); Session::put('phrase', $builder->getPhrase()); return $builder->inline(); } 然后,用户写入验证码并提交表单,我的控制器获取所有内容并进行验证: 'captcha' =>
function captcha(){
$builder = new CaptchaBuilder;
$builder->build();
Session::put('phrase', $builder->getPhrase());
return $builder->inline();
}
然后,用户写入验证码并提交表单,我的控制器获取所有内容并进行验证:
'captcha' => 'required|same:'.Session::get('phrase')
问题是,不管它总是说什么,它们的短语和文本框提交的内容都不一样。。。
如果需要,我可以提供更多信息,如果这不是最好的方法,请给我建议,我只是在学习Laravel4
编辑某些输出信息:
如果我从控制器返回值:
return "Session:".Session::get('phrase')." - Input:".$input['captcha'];
它返回:
Session:5zij5-Input:5zij5
根据Laravel的文档,same
表示另一个输入
我建议使用a来比较会话和输入。您是否比较了
session::get('phrase')
和input::get('captcha')
?在处理表单数据之前,短语会话是否可能在每次页面加载时被覆盖?我更新了我的帖子以回答您的问题。一切都是这样的。问题在于同一方面: