Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]OOP wywołanie menu
Forum PHP.pl > Forum > Przedszkole
szczabik
Witam

W OOP jestem początkujący wiec proszę wyrozumiałość

Próbuję napisać klasę do tworzenia tabeli wyświetlania menu.

Co to tabeli jakoś mi to wyszło gorzej z menu. I tu zaczynają się schody bo nie wiem jak mam to wyświetlić.



Kod klasy

  1. <?php
  2. class test
  3. {
  4.  
  5. var $locale;
  6.  
  7. public $linki;
  8.  
  9. public function start_tabela($tabela_atrybuty = array()) {
  10. $table = "<table ";
  11. foreach($tabela_atrybuty AS $atrybut => $parametr) {
  12. $table .= ' '.$atrybut.'="'.$parametr.'"';
  13. }
  14. $table .= '>';
  15. return $table;
  16. }
  17.  
  18.  
  19. public function start_tr() {
  20. $tr = "<tr>";
  21. return $tr;
  22. }
  23.  
  24. public function start_td($td_atrybuty = array()) {
  25. $td = "<td ";
  26. foreach($td_atrybuty AS $atrybut => $parametr) {
  27. $td .= ' '.$atrybut.'="'.$parametr.'"';
  28. }
  29. $td .= '>';
  30. return $td;
  31. }
  32.  
  33.  
  34. public function koniec_td() {
  35. $td = "</td>";
  36. return $td;
  37. }
  38.  
  39. public function koniec_tr() {
  40. $tr = "</tr>";
  41. return $tr;
  42. }
  43.  
  44. public function koniec_tabela() {
  45. $table = "</table>";
  46. return $table;
  47. }
  48.  
  49.  
  50.  
  51. public function menu_admina($param)
  52. {
  53. $this->przyciski = array(
  54. $param['TN200'] => 'glowna.php',
  55. $param['TN201'] => 'kontakt.php'
  56. );
  57.  
  58. foreach ($this->przyciski AS $nazwa=>$url)
  59. {
  60. $menu .= $this->start_td()."<a href='".$url."'>".$nazwa."</a>".$this->koniec_td();
  61. }
  62. return $menu;
  63. }
  64.  
  65.  
  66.  
  67. }
  68. ?>


I tutaj jak to wywołuje.


  1. <?php
  2. $a = new tag_news();
  3. $a->locale = $locale;
  4. echo $a->start_tabela(array('align'=>'center', 'cellpadding'=>0, 'cellspacing'=>0, 'class'=>'tbl'));
  5. echo $a->start_tr();
  6.  
  7. // tutaj wywołanie menu ale nie wiem jak
  8.  
  9. echo $a->koniec_tr();
  10. echo $a->koniec_tabela();
  11. ?>


I tutaj jest problematyczny kod
  1. <?php
  2. public function menu_admina($param)
  3. {
  4. $this->przyciski = array(
  5. $param['TN200'] => 'glowna.php',
  6. $param['TN201'] => 'kontakt.php'
  7. );
  8.  
  9. foreach ($this->przyciski AS $nazwa=>$url)
  10. {
  11. $menu .= $this->start_td()."<a href='".$url."'>".$nazwa."</a>".$this->koniec_td();
  12. }
  13. return $menu;
  14. }
  15. ?>

który nie wiem czy dobrze napisałem oraz nie wiem jak wywołać.

?
nexis
Cytat(szczabik @ 20.06.2009, 13:36:10 ) *
W OOP nie jestem początkujący wiec proszę wyrozumiałość

To jesteś czy nie jesteś początkujący? Raczej obstawiałbym pierwszą możliwość.

Moje pytanie brzmi: po co Ci ta klasa?
A moja rada: poczytaj o MVC.
szczabik
Twój post nic mi nie pomógł
Może mi ktoś pomóc jak mam wywołać to menu ?
Spawnm
klasa do kosza ...

  1. <?php
  2. public function menu_admina($param)
  3. {
  4. $this->przyciski = array(
  5. $param['TN200'] => 'glowna.php',
  6. $param['TN201'] => 'kontakt.php'
  7. );
  8.  
  9. foreach ($this->przyciski AS $nazwa=>$url)
  10. {
  11. $menu .= $this->start_td()."<a href='".$url."'>".$nazwa."</a>".$this->koniec_td();
  12. }
  13. return $menu;
  14. }
  15. ?>


po co ten $param ?

echo $klasa->menu_admina('cokolwiek bo i tak nic z tym nie robisz..');
szczabik
Cytat(Spawnm @ 20.06.2009, 14:25:27 ) *
klasa do kosza ...

po co ten $param ?


Param to tablica z przetłumaczonymi plikami na j polski

  1. <?php
  2. $locale['TN200'] = "Dodaj Tag";
  3. $locale['TN201'] = "Przydziel Tagi";
  4.  
  5. $a = new tag_news();
  6. $a->locale = $locale;
  7. ?>


No tak zrobiłem
  1. <?php
  2. echo $a->menu_admina($a->start_td(array('align'=>'center')), $a->locale);
  3. ?>


Ale to nie działa
I możesz powiedzieć czemu klasa do kosza ?
Spawnm
//I możesz powiedzieć czemu klasa do kosza ?

Cytat(nexis @ 20.06.2009, 13:38:59 ) *
Moje pytanie brzmi: po co Ci ta klasa?
A moja rada: poczytaj o MVC.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.