Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dziwne zachowanie się zmiennej klasowej z funkcją i (::)
Forum PHP.pl > Forum > PHP
orideith
Witam mam taki problem buduje klasę odpowiedzialną ze generowanie treści do CMS`a, którego buduję w sumie to bedzie taki mini cms albo framework sam nie wiem co z tego się narodzi ;>. Ale występuje mi bład przy wywolywaniu metody
  1. <?php
  2. echo $this->body_top[2];
  3. ?>
najpierw przedstawie kod bo inaczej trudno to wyjaśnic.

  1. <?php
  2. function main_page($count_article,$title_arr,$article_text_arr,$article_arr,$h5_article_arr,$main_article_arr,$top_article,$bottom_article) {
  3. $this->body_top[1]="<div class=".$this->main_c().">";
  4. // klasa modules
  5. $this->body_top[2]=modules_class::load_top($this->top,$this->class_top);
  6. for($x=0; $x<=count($count_article) -1;$x++) {
  7.  
  8. $this->article($x,$title_arr[$x],$article_text_arr[$x],$article_arr[$x],$h5_article_arr[$x],$main_article_arr[$x],$top_article,$bottom_article);
  9. }
  10. $this->body_bottom=modules_class::load_bottom($this->bottom,$this->class_bottom);
  11. $this->body_bottom.="</div>";
  12. return $this->count_article = $count_article;
  13.  
  14. }
  15.  
  16. function render() {
  17. echo $this->body_top[2];
  18. echo $this->body_top[1];
  19. for($xx=0; $xx<=count($this->count_article)-1;$xx++) {
  20. echo $this->article_all[$xx];
  21.  
  22. }
  23. echo $this->body_bottom;
  24. }
  25. ?>


Funkcja
  1. <?php
  2. load_top($this->top,$this->class_top);
  3. ?>
z którą mam problem wyglada tak jest ona w innej klasie

  1. function test(){
  2. $c="";
  3. $c.= "<form action="index.php">";
  4. $c.= "<input type="text" name="t" />";
  5. $c.= "<input type="submit" value="bum" />";
  6. $c.= "</form>";
  7. return $c;
  8. }
  9.  
  10. function load_top($parametr,$klasa_css){
  11. $w_funkcja=eval('?>' . $this->test() . '<? '); 
  12. return $w_funkcja;
  13. }



No i tak wynik funkcji render() chodzi mi o początek powinien byc taki
  1. <div class="jakas klasa>"

i potem zawartość funkcji load_top

Problem jest taki że funkcja load_top ląduje zawsze co bym nie robił przed zapisem
  1. <?php
  2. $this->body_top[1]="<div class=".$this->main_c().">";
  3. ?>
Chodzi mi tutaj o prezentacje wyników czy nawet zrobiłem tablice by kolejnosc ustalić ale to nic nie zmienia nie rozumiem tego.

Proszę o jakiekolwiek rady bo juz nie mam pomyslów na to.
Pozdrawiam Oskar.
mariuszn3
Strasznie namieszałeś.. piszesz wyskakuje mi błąd przy wywołaniu metody i listujesz echo parametru, potem piszesz o funkcji, która jest w innej klasie i listujesz po prostu funkcję nie metodę klasy.. nic nie rozumiem. Poza tym zapomniałeś o najważniejszej rzeczy.. jaki to błąd.. jeśli chcesz się poradzić dlaczego wyskakuje jakiś błąd to zawsze cytuj jego treść.
orideith
Nie neguję tego, że ta funkcja main_page jest poprawnie napisana szukalem poprostu sposobu na dowiązanie kodu php do początku i konca każdego artykułu (inaczej kod = jakis komponent np data utworzenia dokumentu itd), dlatego wymysliłem taki oto sposób może jest lepsze rozwiązanie ale ja go poprostu nie znam.
Jeżeli ktoś ma jakiś pomysł to chętnie posłucham
Pozdrawiam.
nasty
Cytat
Ale występuje mi bład przy wywolywaniu metody
Podaj tresc komunikatu z bledem
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.