Symfony1 symfony-sfGuardPlugin错误调用plugins/sfGuardPlugin/lib/user/sfGuardSecurityUser.class.php中非对象上的成员函数getId()
我正在尝试使用symfony 1.4(推进)安装sfGuard插件。 我想知道如何安装它,它工作得很好(我能够注册、登录和注销) 但是,一旦我再次清除缓存,我将无法登录,并出现以下错误: PHP致命错误:对中的非对象调用成员函数getId() plugins/sfGuardPlugin/lib/user/sfGuardSecurityUser.class.php在线 81,推荐人: 我不确定我做错了什么,但不知何故,我无法让它再次发挥作用。我尝试卸载并重新安装插件。但同样的错误 根据文档,我已修改了我的app.yml、settings.yml、routing.yml。我还修改了Symfony1 symfony-sfGuardPlugin错误调用plugins/sfGuardPlugin/lib/user/sfGuardSecurityUser.class.php中非对象上的成员函数getId(),symfony1,Symfony1,我正在尝试使用symfony 1.4(推进)安装sfGuard插件。 我想知道如何安装它,它工作得很好(我能够注册、登录和注销) 但是,一旦我再次清除缓存,我将无法登录,并出现以下错误: PHP致命错误:对中的非对象调用成员函数getId() plugins/sfGuardPlugin/lib/user/sfGuardSecurityUser.class.php在线 81,推荐人: 我不确定我做错了什么,但不知何故,我无法让它再次发挥作用。我尝试卸载并重新安装插件。但同样的错误 根据文档,我已修
apps/myapp/lib/myUser.class.php
以从sfGuardSecurityUser扩展
表单提交进入文件plugins/sfGuardPlugin/modules/sfGuardAuth/lib/BasesfGuardAuthActions.class.php
,并在form->isValid
对$this->getUser()->sign($values['user',…)
函数调用后失败
我验证了$values['user']
是否具有表单中的正确值。signIn函数依次调用:$this->setAttribute('user_id',$user->getId(),'sfGuardSecurityUser')代码>
这就是它无法将$user
作为对象获取的地方,它仍然是我在表单中传递的“用户名”
感谢您的帮助。
谢谢
我验证了$values['user']具有表单中的正确值
您认为正确的值应该是什么?听起来好像您创建了自己的表单,并希望user
字段是用户名,而实际上它希望user
是一个类似以下的数组:
$user = Array (
'username' => 'Username value from form',
'password' => 'password value from form'
}
本质上,您的表单应该如下所示:
<form>
<input type="text" id="user" name="user[username]" />
<input type="password" id="password" name="user[password]" />
</form>
经过一些调试并从头开始,看起来我在重写默认的sfGuardFormSignin.class.php时出了差错,这使得$user类无效,因此对它的任何函数调用都失败了。不,我没有创建自己的表单,我正在使用插件附带的sfGuardFormSignin。我提到的代码(如果失败,$values['user']也是插件的一部分,我没有修改它