![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 1 178 Pomógł: 51 Dołączył: 7.01.2009 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Mam problem z bez-htmlowym generowaniem tabelki. Znaczy, nie ma htmlu po stronie php. Skrypt pobiera odpowiednie dane i szablony i zamienia znaczniki z szablonów z danymi. Wszystko działało dopóki nie musiałem tym kodem wygenerować tabelki. Poniższy kod wypluwa miazgę tabeli, komórek i td. Jest na tyle dobrze że nie rozwala strony i na tyle źle że nie wszystkie dane zmienia, wyświetla a tabela nie "działa" poprawnie.
Wiersz: W $plik jest zawarty nagłówek tabeli, z pierwszą linią komórek i "zamykaczem" tabeli. Proszę o wskazówki jak to naprawić, lub co robię źle. Ewentualnie zapodajcie inny pomysł robienia tabelek. Ten post edytował thomson89 17.08.2010, 17:10:35 -------------------- Sklep
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
Proszę o wskazówki jak to naprawić, lub co robię źle. Ewentualnie zapodajcie inny pomysł robienia tabelek. a może szablony bardziej tradycyjne?? tzn. jeśli chcesz korzystać ze zmiennych w szablonie to z tablicy możesz zmienne wyeksportować funkcją extract - oczywiście tego też nie preferuję, gdyż jeśli zmienna jest nie zdefiniowana to może walić błędami - rozwiązanie - nie zdefiniowana zmienna niech będzie nullem automatycznie - jak... zamiast w szablonie pisać np. $tytul to piszę $this->tytul i ustawiam odpowiedniego gettera i jeśli zmiennej nie ma to walę nulem... lub zamiast metodami magicznymi to metodą dostępową jakąś $this->getVar('tytul')....no tak - ale napiszesz, że to musiało by być wewnątrz klasy - ten szablon - nic podobnego - tzn. i tak i nie - nie jako stały element klasy... daje się gdzieś definicję szablonu, podaje zmienne i wyciąga z niego wynik... czyli w metodzie zwracającej cały szablon w uproszczeniu jest konstrukcja: Kod public function przyklad(){ ob_start(); // W INKLUDOWANYM PLIKU SKORO ON JEST W TYM MIEJSCU MASZ DOSTĘP DO WSZYSTKICH ZMIENNYCH TEJ KLASY NAWET PRYWATNYCH!!!! include $this->file; $this->wynik = ob_get_contents(); ob_end_clean(); return $this->wynik; } u siebie mam to jeszcze inaczej i na metodzie prywatnej/chronionej gdyż sobie dorobiłem mechanizm zagnieżdżeń, a wynik jest generowany dopiero na końcu - chyba, że potrzebuję wcześniej to jest zwracany wcześniej przez wymuszenie metod... niżej niby jest połączony kod html z php ale zasada ta sama gdyż wynik nie zostanie wyświetlony a szablon można po prostu zainkludować wewnątrz:
Ten post edytował zegarek84 18.08.2010, 10:00:47 -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 02:00 |