![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 13.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Zaczynam się uczyć Symwony2 i mam problem z autoryzacją użytkowników z bazy danych. Gdy użytkownicy są zapisani w pliku security.yml logowanie działa. Natomiast gdy przenoszę użytkowników do bazy danych i próbuje się zalogować, dostaję: An exception occurred while executing 'SELECT t0.id AS id1, t0.username AS username2, t0.password AS password3, t0.email AS email4, t0.salt AS salt5 FROM user t0 WHERE t0.username = ? LIMIT 1' with params ["admin"]: SQLSTATE[42703]: Undefined column: 7 BŁĄD: kolumna t0.id nie istnieje LINE 1: SELECT t0.id AS id1, t0.username AS username2, t0.password A... ^ Poniżej kod pliku security.yml Kod security: encoders: #Symfony\Component\Security\Core\User\User: Madan\AdminBundle\Entity\User: algorithm: md5 iterations: 1 encode_as_base64: false role_hierarchy: ROLE_ADMIN: ROLE_USER ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH] providers: administrators: entity: { class: Madan\AdminBundle\Entity\User, property: username } in_memory: memory: users: user: { password: 63e780c3f321d13109c71bf81805476e, roles: [ 'ROLE_USER' ] } # userpass admin: { password: 25e4ee4e9229397b6b17776bfceaf8e7, roles: [ 'ROLE_ADMIN' ] } # adminpass firewalls: dev: pattern: ^/(_(profiler|wdt)|css|images|js)/ security: false login: pattern: ^/demo/secured/login$ security: false secured_area: pattern: ^/ form_login: ~ # check_path: login # login_path: login_check logout: path: /logout target: /login anonymous: ~ http_basic: realm: "Secured Demo Area" access_control: - { path: ^/admin, roles: ROLE_ADMIN } #- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https } routing: Kod login: pattern: /login defaults: { _controller: MadanAdminBundle:Security:login } login_check: pattern: /login_check logout: pattern: /logout admin: pattern: /admin defaults: { _controller: MadanAdminBundle:Security:index } Entity\User.php
Entity\Role.php
Pomożecie? ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 879 Pomógł: 189 Dołączył: 14.06.2006 Skąd: Bytom Ostrzeżenie: (0%) ![]() ![]() |
Dla encji User nie masz zdefiniowanego id.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 13.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Jest zdefiniowane id
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 879 Pomógł: 189 Dołączył: 14.06.2006 Skąd: Bytom Ostrzeżenie: (0%) ![]() ![]() |
Oj przepraszam. Nie pomyślałem o tym, że można tak kod sformatować.
Sprawdzałeś w bazie danych, że masz tą kolumnę w tej tabeli? |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Niech zgadnę... nie zrobiłeś
Kod php app/console doctrine:schema:update --force ? -------------------- ET LINGUA EIUS LOQUETUR IUDICIUM
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 13.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Wykonałem to polecenie.
W bazie danych mam wszystko ok |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Ten błąd nie jest bezpośrednio związany z Sf czy Doctrine, występuje on na poziomie połączenia PDO. Sprawdź czy na pewno w tabeli user znajduje się kolumna id w bazie danych zdefiniowanej w połączeniu PDO. Jeżeli jest, a taki błąd nadal występuje wygląda to na bug PDO/MySQL w co szczerze wątpię. Sprawdź też czy wywołanie takiego zapytania z poziomu konsoli/jakiegoś phpMyAdmina zwraca błąd.
Ten post edytował Crozin 6.01.2014, 19:49:05 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 13.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Baza stoi na PostgreSQL.
id username password email salt 1 admin 25e4ee4e9229397b6b17776bfceaf8e7 op@op.pl Kolumna Typ Not Null Domyślny Więzy integralności Akcje Komentarz id integer NOT NULL [pk] Przeglądaj Zmień Uprawnienia Usuń username character varying(255) NOT NULL Przeglądaj Zmień Uprawnienia Usuń password character varying(50) NOT NULL Przeglądaj Zmień Uprawnienia Usuń email character varying(127) NOT NULL Przeglądaj Zmień Uprawnienia Usuń salt character varying(50) Przeglądaj Zmień Uprawnienia Usuń Błąd po wykonaniu zapytania: SELECT t0.id AS id1, t0.username AS username2, t0.password AS password3, t0.email AS email4, t0.salt AS salt5 FROM user t0 WHERE t0.username = 'admin' LIMIT 1; w phpPgAdminie: Błąd SQL: BŁĄD: kolumna t0.id nie istnieje LINE 1: SELECT t0.id AS id1, t0.username AS username2, t0.password A... ^ W poleceniu: SELECT t0.id AS id1, t0.username AS username2, t0.password AS password3, t0.email AS email4, t0.salt AS salt5 FROM user t0 WHERE t0.username = 'admin' LIMIT 1; |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.06.2025 - 11:26 |