无法启动会话:PHP已经启动($_SESSION已设置)。500内部服务器错误-运行时异常。
无法启动会话:PHP已经启动($_SESSION已设置)。500内部服务器错误-运行时异常。
我正在尝试为我的usermanagementbundle实现一个简单的登录页面,但我在通过formbuilder创建表单方面还是新手。我的bundle中只有3个函数,其中有一个新的会话,并且在不同的路由中被调用,即使我删除其他2个函数,我仍然会收到相同的错误。这是我的代码:
createForm(new SigninType(), $users); if ($session->has('token')) { return $this->render('AcmeUserManagementBundle:Default:home.html.twig', array('token' => $session->get('token'))); } if (!($session->has('alert'))) { $session->set('alert', 'Welcome'); return $this->render('AcmeUserManagementBundle:Default:index.html.twig', array('form' => $form->createView(), 'alert' => 'Welcome!')); } else { $alert = $session->get('alert'); $session->clear(); return $this->render('AcmeUserManagementBundle:Default:index.html.twig', array('form' => $form->createView() ,'alert' => $alert)); } } public function logoutAction() { $session = new Session(); $session->invalidate(); return $this->render('AcmeUserManagementBundle:Default:index.html.twig'); } public function signupAction() { return $this->render('AcmeUserManagementBundle:Default:signup.html.twig'); } public function LoginAction(Request $request) { $session = new Session(); if ($request->getmethod()=='POST' || $session->get('token') != ""){ $user = $request->get('user'); $password = $request->get('password'); $em = $this->getDoctrine()->getManager(); $repository = $em->getRepository('AcmeUserManagementBundle:Users'); $username = $repository->findOneBy(array('username'=>$user,'password'=>$password)); if (!$session->get('token') && $username) { $token = $this->get('token_generator')->getToken(); $session->set('token', $token, 'user', $username); } else { $session->set('alert', 'Invalid Username and/or Password!'); return $this->redirect($this->generateUrl('homepage')); } return $this->redirect($this->generateUrl('homepage')); } else { return $this->redirect($this->generateUrl('homepage')); } } }
当我尝试在我的函数中实现一个formbuilderinterface时,我突然遇到了这个问题,而通过html创建表单时,我完全没有遇到问题。我的代码有问题吗?因为我尝试了这个登录代码通过HTML,并将其转换为Symfony的formbuilderinterface组件。