2016-04-26 4 views
0

У меня возникла проблема с входом в систему. Я уже прочитал документ Symfony, темы в stackoverflow и другие учебники. Когда я пытаюсь войти в систему с Firefox или Chrome, я в первый раз не буду входить в систему, но во второй попытке мне это удастся. В IE я вообще не войду. Может ли помочь вам? У меня нет идей. Вот мой код:Проблема с формой входа в систему Symfony

index.html.twig

<form action="{{ path('login_check') }}" method="post"> 
    <input type="text" id="username" name="_username" placeholder="{{ 'INDEX_LOGIN_USERNAME'|trans }}" /> 
    <input type="password" id="password" name="_password" placeholder="{{ 'INDEX_LOGIN_PASSWORD'|trans }}" /> 
    {#<input type="hidden" name="_target_path" value="/admin" />#} 
    <button type="submit"></button> 
</form> 

routing.yml

login: 
    path: /login 
// without next line (defaults) I receive an error: Unable to find the controller for path "/login". The route is wrongly configured. 
    defaults: { _controller: FC_Hlinsko_Bundle:Default:index } 
    options: { i18n: false } 

logout: 
    path: /logout 
    options: { i18n: false } 

homepage: 
    path: /
    defaults: { _controller: FC_Hlinsko_Bundle:Default:index } 

admin: 
    path:  /admin 
    defaults: { _controller: FC_Hlinsko_Bundle:Admin:index } 

security.yml

security: 
    providers: 
     in_memory: 
      memory: 
       users: 
        admin: 
         password: $2y$12$aE7n0XduDqfYd5xZVfm.G.uiIZSMUCdtPxfz6VRgdBKrU2ihxcC7i 
         roles: 'ROLE_ADMIN' 
    firewalls: 
     dev: 
      pattern: ^/(_(profiler|wdt)|css|images|js)/ 
      security: false 
      anonymous: true 

     secured_area: 
      pattern: ^/ 
      form_login: 
       check_path: /login_check 
       login_path: login 
      logout: 
       path: logout 
       target: homepage 
      anonymous: ~ 

    access_control: 
     # require ROLE_ADMIN for /admin* 
     - { path: /login, roles: IS_AUTHENTICATED_ANONYMOUSLY } 
     - { path: /admin, roles: ROLE_ADMIN } 

    encoders: 
     Symfony\Component\Security\Core\User\User: 
      algorithm: bcrypt 
      cost: 12 
+0

Просьба предоставить содержимое FC_Hlinsko_Bundle /Controllers/DefaultController.php indexAction. Похоже, вы используете один и тот же метод контроллера для каждого запроса интерфейса. Это неправильно. У вас должны быть отдельные методы для главной страницы, входа в систему, выхода из системы –

+0

'public function indexAction (Request $ request) { return $ this-> render ('FC_Hlinsko_Bundle: Default: index.html.twig'); } '}' Существует только рендер для index.html.twig ... Это потому, что у меня есть эта форма входа, скрытая в index.html.twig, и она появляется на ссылке LOGIN – Pesino

+0

такая же, как у нас есть здесь [ссылка] (http : //www.fcviktoria.cz/rus/) .. Эта ссылка SIGN IN в верхней части веб-сайта :-) – Pesino

ответ

0

ПРОБЛЕМА Решаемые. Я исследовал dev.log, и из-за IE он написал эту ошибку: ваш сеанс был отключен, или вы отключили файлы cookie ... Поэтому после некоторых поисков я обнаружил, что undescore не может быть в доменном имени (у меня был мой домен fc_hlinsko.local /app_dev.php/), поэтому я создал новый проект Symfony и новый Bundle, и на данный момент все выглядит нормально. Также мне пришлось добавить к моей security.yml в form_login этот код: require_previous_session: false

Смежные вопросы