Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZF] Latwe nadawanie praw
zeta758
post
Post #1





Grupa: Zarejestrowani
Postów: 74
Pomógł: 0
Dołączył: 18.06.2006

Ostrzeżenie: (0%)
-----


Witam,

nie bardzo wiem jak sie do tego zabrac i wiem ze na pewno duzo pocztkujacych z ZEND FRAMEWORK tak ma. Prosze o pomoc w rozwiązaniu problemu.

Mógłby ktoś poratować jak zrobić (super jeśli byłby przykład):
1. tworzenie uzytkowników - admin, gość, zwykly uzytkownik
2. możliwość definiowania który użytkownik ma dostęp do którego kontrolera i akcji w danym kontrolerze
3. panel do logowania i jak to sie ma logowanie do tych praw.
4. Jak rozwiazac problem taki: jest kontroler artykul/pokaz/id/123 i dostepny jest dla wszystkich ale tylko dla zalogowanych jest przycisk "komentuj" i moze komentowac?

Prosze o pomoc, wielu na tym uzytkowników forum skorzysta.

Pozdrawiam
M
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
konys
post
Post #2





Grupa: Zarejestrowani
Postów: 100
Pomógł: 7
Dołączył: 5.11.2005

Ostrzeżenie: (0%)
-----


Zend_Acl - autoryzacja
Zend_Auth - autentykacja
Manual to całkiem niezły początek zabawy...
Go to the top of the page
+Quote Post
zeta758
post
Post #3





Grupa: Zarejestrowani
Postów: 74
Pomógł: 0
Dołączył: 18.06.2006

Ostrzeżenie: (0%)
-----


jest taki artykul: http://akrabat.com/zend-auth-tutorial/
  1. <?php
  2. if ($result->isValid()) {
  3. // success : store database row to auth's storage system
  4. // (not the password though!)
  5. $data = $authAdapter->getResultRowObject(null, 'password'); questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif?
  6. $auth->getStorage()->write($data); questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif
  7. $this->_redirect('/');
  8. $this->view->message = 'Logowanie powiodlo sie.';
  9. } else {
  10. // failure: clear database row from session
  11. $this->view->message = 'Login failed.';
  12. }
  13. ?>


Zakładam ze to jest tylko sprawdzanie czy ktos sie zalogowal czy nie - nie rozumiem co znacza te 2 linie które oznaczylem pytajnikami. Zakladam ze te dane musze sie gdzies zapisywac - do sesji??
1. Jeśli chcialbym zapisać do sesji to sesje startuje w public_html/index.php questionmark.gif
2. co musze napisac w tych linijkach z pytajnikami w takim przypadku?
3. Jak sprawdzić pozniej czy ktos sie zalogowal?? - jak odwolac sie do sesji i sprawdzic?
Go to the top of the page
+Quote Post
konys
post
Post #4





Grupa: Zarejestrowani
Postów: 100
Pomógł: 7
Dołączył: 5.11.2005

Ostrzeżenie: (0%)
-----


Znowu odsyłam do manuala. Dla ułatwienia - w podanym tutorialu parę linijek wyżej masz:
  1. <?php
  2. $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
  3. ?>
Go to the top of the page
+Quote Post
zeta758
post
Post #5





Grupa: Zarejestrowani
Postów: 74
Pomógł: 0
Dołączył: 18.06.2006

Ostrzeżenie: (0%)
-----


ok, krok do przodu smile.gif

Wiem juz do czego to sluzy. Ale teraz trzeba to zapisac do sesji, prawda? bo mi sie zalogowal ale jak przeszedlem na inna strone i wrocilem to juz nie pamietal ze sie zalogowal. Jak to mozna zapisac do sesji.

I prosze jeszcze o slowo komentarza czy uzywac session czy session_namespace questionmark.gif

czym to sie tak w jednym zdaniu rozni?? zeby nie nadpisać przez przypadek czy jak?

thx
Go to the top of the page
+Quote Post
konys
post
Post #6





Grupa: Zarejestrowani
Postów: 100
Pomógł: 7
Dołączył: 5.11.2005

Ostrzeżenie: (0%)
-----


W manualu sesji jest opisane stosowanie sesji i ich rozpoczynanie. W dalszej części jest osobny paragraf poświęcony wykorzystaniu sesji dla potrzeb autoryzacji. Dodatkowo tutaj znajdziesz bardziej szczegółowy opis Zend_Session_Namespace.
Go to the top of the page
+Quote Post
MarcinTryka
post
Post #7





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 31.03.2007

Ostrzeżenie: (0%)
-----


Ehhh... szkoda ze manual przekazuje tylko sucha wiedze i jak ktos zaczyna z tym frameworkiem, to przejdzie przez jeden dzialajacy polski tutorial typu tworzenie katalogu plyt bez jakichg kolwiek zabezpieczen, ucieszy sie, a pozniej zlapie za glowe bo kompletnie nie wie jak sie zabrac do czegos wiekszego. Tak jest min. ze mna. Wszystko ladnie piekniue, tylko jak w tym tak naprawde programowac.

Dorzuce swoje pytanie czy jezeli chce zrobic panel administracyjny to mam napisac poza ZF ? w jakims katalogu z wylaczonym mrod_rewrite, czy w podkatalogu z ZF, czy wreszcie, mam nie robic osobnego katalogu, tylko wszystko zrobic razem a za pomoca acl i auth kontrolowac kto ma do czego dostep i wyswietlac tylko te mozliwosci do ktorych user ma dostep (moim zdniem bylaby to rzeź na wydajnosci zrobiona niepotrzebnie(,
A moze zrobic osobny kontroler Admin? I:

mojastrona.pl/admin/plytacd/add
mojastrona.pl/admin/plytacd/edit/id/....
mojastrona.pl/admin/plytacd/del/....

Ale to moim zdnaiem jest bez sensu. kontroler ciagle ten sam, a akcja "plytacd"? Srednio mi sie to podoba.

Napialbym panel administracyjny kazda z powyzszych metod, ake kazda kolejna ma coraz wiecej wad i nie mam pojecia jak sie to powinno pisac. Mimo iz szukam juz pare dni w necie tutoriali. Albo sa banalnie proste, albo zaglebiaja sie wjakichs szczegolikach chwilowo dla mnie nieistotnych. Ja ja ciagle nie wiem jak to projektowac ...
Go to the top of the page
+Quote Post
dEF
post
Post #8





Grupa: Zarejestrowani
Postów: 15
Pomógł: 1
Dołączył: 31.03.2006

Ostrzeżenie: (0%)
-----


Cytat(MarcinTryka @ 30.07.2007, 21:33:41 ) *
Ehhh... szkoda ze manual przekazuje tylko sucha wiedze i jak ktos zaczyna z tym frameworkiem, to przejdzie przez jeden dzialajacy polski tutorial typu tworzenie katalogu plyt bez jakichg kolwiek zabezpieczen, ucieszy sie, a pozniej zlapie za glowe bo kompletnie nie wie jak sie zabrac do czegos wiekszego. Tak jest min. ze mna. Wszystko ladnie piekniue, tylko jak w tym tak naprawde programowac.

Dorzuce swoje pytanie czy jezeli chce zrobic panel administracyjny to mam napisac poza ZF ? w jakims katalogu z wylaczonym mrod_rewrite, czy w podkatalogu z ZF, czy wreszcie, mam nie robic osobnego katalogu, tylko wszystko zrobic razem a za pomoca acl i auth kontrolowac kto ma do czego dostep i wyswietlac tylko te mozliwosci do ktorych user ma dostep (moim zdniem bylaby to rzeź na wydajnosci zrobiona niepotrzebnie(,
A moze zrobic osobny kontroler Admin? I:

mojastrona.pl/admin/plytacd/add
mojastrona.pl/admin/plytacd/edit/id/....
mojastrona.pl/admin/plytacd/del/....

Ale to moim zdnaiem jest bez sensu. kontroler ciagle ten sam, a akcja "plytacd"? Srednio mi sie to podoba.

Napialbym panel administracyjny kazda z powyzszych metod, ake kazda kolejna ma coraz wiecej wad i nie mam pojecia jak sie to powinno pisac. Mimo iz szukam juz pare dni w necie tutoriali. Albo sa banalnie proste, albo zaglebiaja sie wjakichs szczegolikach chwilowo dla mnie nieistotnych. Ja ja ciagle nie wiem jak to projektowac ...

Mozesz stworzyc modul o nazwie admin -> http://framework.zend.com/manual/en/zend.c...er.modular.html
W tym module potworzysz sobie kontrolery odpowiedzialne za zarzadzanie.
Dzieki temu mozesz stworzyc zupelnie oddzielny design dla panelu administracyjnego (poniewaz skrypty widoku sa oddzielnie).
Rowniez latwiej jest cos takiego zabezpieczyc. W domyslnym module kontrolery beda odpowiadac tylko za pobieranie danych z bazy i wyswietlanie. Dopiero w module administracyjnym, ktory sobie zabezpieczysz ACL'em, kontrolery beda zajmowaly sie zarzadzaniem danymi.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 13:15