-2
私はpropelでSymfony 3.4をセットアップしていますが、うまくいきます。 1つのログインスクリプトを作成してエラーが発生しました。symfony 3.4 + Propel +認証エラー
public function loginAction(Request $request)
{
$session = $request->getSession();
$authUtils = $this->get('security.authentication_utils');
$error = $authUtils->getLastAuthenticationError();
$lastUsername = $authUtils->getLastUsername();
return $this->render('SecurityPersonBundle:Default:login.html.twig', array(
'last_username' => $lastUsername,
'error' => $error,
));
}
私は上記のloginActionメソッドを作成しています。チェックイン用に、以下のメソッドを作成しました。
public function logincheckAction(Request $request)
{
$email = $request->request->get('_username');
$password = $request->request->get('_password');
$person = PersonQuery::create()->filterByEmail($email)->findOne();
if (!$person)
{
$this->get('session')->getFlashBag()->add('error',$email.' email id not found..!');
return $this->redirect($this->generateUrl('person_login'));
}
$salt = $person->getSalt();
if(sha1($salt.$password) == $person->getPassword())
{
$this->get('session')->set('personId',$person->getPersonId());
$token = new UsernamePasswordToken($person->getFirstName(), null, 'main', array('ROLE_ADMIN'));
$this->get('security.context')->setToken($token);
return $this->redirect($this->generateUrl('help_releasenote_list'));
}
else
{
$this->get('session')->getFlashBag()->add('error','Email id or Password not match..!');
return $this->redirect($this->generateUrl('person_login'));
}
}
**** ERROR:**
は、名前空間 "セキュリティ\ PersonBundle \コントローラ" からクラス "UsernamePasswordToken" をロードしようとしました。
この問題の修正にご協力ください。
おかげ
再生いただきありがとうございます。私は上記の変更を追加して、以下のエラーにはなりません。 存在しないサービス "security.context"を要求しました。あなたはこれを意味しましたか: "security.context_listener.0"? この問題の修正にご協力ください。 –
これは、この問題が解決されたことを意味しますか?今自分で見つけなければならない別の問題があります。尋ねる前に研究努力をしてください。 –
こんにちは 再生いただきありがとうございます。問題は修正されました –