Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [OOP] menu
dachu
post
Post #1





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 30.08.2005

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


Witam,
pomoże ktoś zapisać menu w OOP?

Coś kombinuje ale nie chce działać, tzn to objęte komentarzami nie działa (submenu)... reszta działa.
(lub może ma ktoś przykład? to bym coś podpatrzył(IMG:style_emoticons/default/smile.gif)
dzięki

  1. <?php
  2.  
  3. class Navigator
  4. {
  5.  
  6. public $menu, $submenu;
  7.  
  8. /*$links =
  9. array(
  10. 'tytul 1' => '1a',
  11. 'tytul 2' => '1b',
  12. 'tytul 3' => '1c'
  13. );*/
  14.  
  15. public function subMenu($links)
  16. {
  17. $submenu.= '<ul>';
  18. foreach ($links as $name => $url) {
  19. $submenu.= '<li id="nav-r">'.$name.'</li>';
  20. }
  21. $submenu.= '</ul>';
  22.  
  23. return $submenu;
  24. }
  25.  
  26. public function Menu($lang)
  27. {
  28. $links =
  29. 'start' => 0,
  30. 'produkty' => 1,
  31. 'oferta' => 2,
  32. 'galeria' => 3,
  33. 'kontakt' => 4
  34. );
  35.  
  36. $menu.= '<ul id="navigator">';
  37. foreach ($links as $name => $url) {
  38. $menu.= '<li onclick="java script:parent.location.href=\'?p='.$url.'\'">'.$name;
  39. //$menu. = subMenu($links1);
  40. $menu.= '</li>';
  41. }
  42. $menu.= '</ul>';
  43.  
  44. return $menu;
  45. }
  46. }
  47.  
  48. ?>


Ten post edytował dachu 23.05.2012, 08:06:22
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Z oop nie ma to żadnego związku - przenosze. A ze poziom przedszkolny to przenosze na przedszkole.

Co do problemu: o $this nie słyszał?
Go to the top of the page
+Quote Post
bastard13
post
Post #3





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


Jeżeli chcesz robić menu z podmenu (i podmenu podmenu itd. ewentualnie) to zainteresuj się wzorcem composite.

A co do tego kodu, no cóż tak jak napisał @nospor, to z OOP niewiele ma wspólnego. Ogólnie powinno być mniej więcej tak:
- Menu to klasa, której atrybut to kolekcja obiektów ElementMenu (każdy posiada jakieś tam swoje atrybut m.in. link, nazwę)
- Menu powinno posiadać informacje, który element jest aktualnie aktywny
- Każdy ElementMenu może być rownież Menu (i tutaj dochodzimy do wzorca:)
Go to the top of the page
+Quote Post

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: 23.08.2025 - 21:38