Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZendFramework] Przyjazne URL'e w formacie jakis_tekst,1,1,1,1.html
sanneo
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 15.01.2008
Skąd: Warszawa

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


Witam.

Próbuję znaleźć rozwiązanie mojego problemu.

Chciałbym, aby poniższy przykładowy URL działał w Zend Framework:

http://localhost/kategorie,1,1,1.html


Powyższy URL tłumaczy się na:

http://localhost/dowowolny_tekst,id_kontro...d_elementu.html

Rozszerzona wersja tego URL'a jest taka:

http://localhost/kategorie,1,1,1,1.html

To oznacza:

http://localhost/dowowolny_tekst,id_kontro..._podstrony.html

Przykładowe URL'e:

http://localhost/informatyka,15,29,735,2.html oznacza: kontroler o ID: 15, akcja o ID: 29, element o ID: 735, podstrona: 2

http://localhost/ekologia,4,13,59,7.html oznacza: kontroler o ID: 4, akcja o ID: 13, element o ID: 59, podstrona: 7

http://localhost/teologia,3,2,7.html oznacza: kontroler o ID: 3, akcja o ID: 2, element o ID: 7, podstrona: 1


Poza Frameworkiem udało mi się obsłużyć takie adresy, ale jak to zrobić w Zend Framework?

Prosiłbym o opis w dwóch wersjach w pliku application.ini i w Bootstrap.php

Pozdrawiam.
Mariusz (sanneo)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sanneo
post
Post #2





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 15.01.2008
Skąd: Warszawa

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


Witam.

Poradziłem z tym sobie pisząc poniższy kod:

  1. protected function _initRouter(){
  2. $zcf = Zend_Controller_Front::getInstance();
  3. $router = $zcf->getRouter();
  4. $route = new Zend_Controller_Router_Route_Regex(
  5. '([a-zA-Z0-9_]+),?(\d?),?(\d?),?(\d?),?(\d?)\.html',
  6. 'controller' => 'index',
  7. 'action' => 'edit'
  8. ),
  9. 1 => 'text',
  10. 2 => 'id_controller',
  11. 3 => 'id_action',
  12. 4 => 'id_element',
  13. 5 => 'id_strony'
  14. )
  15. );
  16. $router->addRoute('my-route', $route);
  17. return $router;
  18. }


Jest to prawie OK.

Ale jak wynika z mojego problemu potrzebuję pierwszy id (id_kontrolera) "przetłumaczyć" na "nazwę kontrolera".

W jaki sposób i w którym miejscu?

Pozdrawiam.
Mariusz (sanneo)


Ten post edytował sanneo 18.04.2011, 13:44:15
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 10.10.2025 - 22:54