Php Laravel4验证器、验证码和;会话无法匹配

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' =>

我有一个helper方法,它返回captcha图像url并存储密钥会话:

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')
?在处理表单数据之前,短语会话是否可能在每次页面加载时被覆盖?我更新了我的帖子以回答您的问题。一切都是这样的。问题在于同一方面: