![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
Jestem ciekaw jak Wy postepujecie z wyswietlaniem wynikow z np. z bazy piszac swoje templatesy...
Zalozmy ze mamy takie szablon: Teraz w jego srodku chcialbym wyswietlic tabelke ktora zawiera rekordy z MySQL, np. 5 wierszy? W jaki sposob Wy to rozwiazujecie? P.S. Chodzi o jak najprostsze rozwiazania:) Ten post edytował kicaj_ 11.09.2004, 00:00:29 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 242 Pomógł: 0 Dołączył: 14.03.2003 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
zależy.
jeżeli rekordy mają nagłówki, to warto zastosować coś takiego:
przykład? newsy, gdzie każdy news będzie miał swoją datę jako nagłówek. jeżeli nie, to wystarczy zwykły <BR>. można też połączyć obydwa rozwiązania. np. (piszę w skrócie): Ten post edytował mpps 11.09.2004, 06:55:27 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
eekh, nie zrozumiales...
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 242 Pomógł: 0 Dołączył: 14.03.2003 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
to rozwiń myśl, chyba, że uważasz, że dla innych jest wystarczająco czytelnie.
chętnie poczytam odpowiedzi, bo też mnie to interesuje. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
Okey:)
Wiekszosc robi szablony tak:
W szablonie {nazwa} zamienia na "Jakas tam..." I teraz jak Wy rozwiazujecie wyswietlanie wynikow np. z bazy danych, gdzie wiersze sa automatycznie generowane? Ten post edytował kicaj_ 11.09.2004, 14:38:53 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 222 Pomógł: 0 Dołączył: 3.04.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Ja bym zrobił tak:
Wszystkie wiersze z wyniku zapytania wrzuciłbym do jednej tablicy. I przekazałbym tą całą tablcę do systemu szablonów, który obsługuje tablice i tam już wszystko wyświetlał. W Smarty służą do tego znacznik section i foreach. To bardziej uniwersalny sposób. Drugi, który przychodzi mi do głowy, Wykorzystując ADOdb i Smarty: Po wykonaniu zapytania za pomocą ADOdb przekazałbym do Smarty cały obiekt $Result. Myśle, że możnaby go ładnie wyświetlić korzystając z możliwości Smarty. Pisze teoretycznie, bo nie mam czasu sprawdzać. Innych systemów szablonów nie znam. Jakby coś było niejasne w mojej wypowiedzi to pytaj. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
Chce napisac wlasne szablony. I zacialem sie na wyswietlaniu wynikow z bazy mysql? Nie wiem kompletnie jak to rozwiazac... Kombinuje jak zrobic zeby dany wiersz byl powtarzany tyle razy ile jest rekordow w bazie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ma ktos jakis pomysl?
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 222 Pomógł: 0 Dołączył: 3.04.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Cytat(kicaj_ @ 2004-09-11 19:43:40) Chce napisac wlasne szablony. I zacialem sie na wyswietlaniu wynikow z bazy mysql? Nie wiem kompletnie jak to rozwiazac... Kombinuje jak zrobic zeby dany wiersz byl powtarzany tyle razy ile jest rekordow w bazie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ma ktos jakis pomysl? No to ja cię nie rozumiem. Chcesz napisać funkcję w twoim systemie szablonów? Jeśli tak to wykorzystaj php. Jeśli nie to nie wiem co ty kombinujesz.. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 0 Dołączył: 28.09.2003 Skąd: Rzeszów Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#10
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Cytat(kicaj_ @ 2004-09-11 20:43:40) I zacialem sie na wyswietlaniu wynikow z bazy mysql? Nie wiem kompletnie jak to rozwiazac... Kombinuje jak zrobic zeby dany wiersz byl powtarzany tyle razy ile jest rekordow w bazie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ma ktos jakis pomysl? To co Ty piszesz system szablonow zintegrowany z baza danych? Po co.. Wystarczy zrobic obsluge tablic w szablonach i tyle. A z bazy pobrac najpierw wszystko, wprowadzic do tablicy i dopiero przypisac do zmiennej w szablonie. Bez uzycia zadnych klas do bazy jest to kilka(nascie) linijek, ale z klasami to nie ma problemu, moze to byc jedna linijka..
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
Jak to mam przerobic zeby dzialalo poprawnie, tak jak bym chcial? |
|
|
![]()
Post
#12
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Musisz dorobic obsluge tablic w klasie do szablonow. W przypadku klasy, ktora nie kompiluje szablonow do kodu php, tylko robi wszystko w locie, nie jest to takie hop siup, musisz troche poczytac, najlepiej jakies inne klasy ktore takie cos maja.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 222 Pomógł: 0 Dołączył: 3.04.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Ja bym to zrobił inaczej.
Zastosowałbym dwa znaczniki w szablonie. Jeden do obsługi płaski zmiennych, drugi do obsługi tablic. Ten drugi musiałby chyba przypominać {foreach} lub {section} z Smarty. Nie widze raczej sposobu, żeby zrobić to prościej, będzie konieczne zastowanie wyrażeń regularnych. No chyba, że ustalisz sobie pewien stały schemat wyświetlania tablic i będziesz konkretny wygląd regulował stylami CSS. Ale ty byłoby zbytnie uproszczenie... |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
Hehe, tak sie meczylem a tylko bylo potrzebna petla foreach" title="Zobacz w manualu PHP" target="_manual() (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
O to co wykombinowalem: Szablon: Problem polega na tym ze jesli ustawie dwa razy `setSection()` to nie zamienia mi tego drugiego, krotko mowiac: metoda dziala tylko dla pierwszego (tutaj dla {lewa}). Jak to przeboic zeby zamienialo obydwa? Ten post edytował kicaj_ 13.09.2004, 17:10:45 |
|
|
![]() ![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 697 Pomógł: 47 Dołączył: 19.12.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
http://ship.me2.pl/index.php?d=7&id=22
Tam masz arta(mojego autorstwa (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) ) jak napisać własny systm szablonów... Z petlami, instrukcjami warunkowymi i w ogóle (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Metoda jest inna niż u wszystkich innych kolegów phpistów (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Przynajmniej ja takiej jak moja nie widziałem.. Moze sie przyda... |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 0 Dołączył: 10.03.2004 Skąd: z duszy :] Ostrzeżenie: (20%) ![]() ![]() |
w TemplatePower wygladaloby to tak:
Kod <table border="1"> <tr> <!-- START BLOCK : blok --> <td>{wiersz}</td> <!-- END BLOCK : blok --> </tr> </table>
chyba nie da sie przejrzysciej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ja bym nie podolal wlasnego template systemu napisac to wiem na sete, szczegolnie ze ten jest bardzo cacy i za darmo (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował jbiz 14.09.2004, 14:45:17 |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
Hehe juz "wierszowanie" mam za soba (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Teraz zastanawia mnie jak rozwiazywane sa formularze i ich validacja. Mam takie szablony: form.php - formularz logowanie (nick, haslo, submit) panel.php - strona widoczna po zalogowaniu Moge zrobic tak: Kod {if $submit} panel.html {elseif $submit} form.html {endif $submit} Ale ten sposob mnie ogranicza. W samym php zrobilbym to tak:
Jak by to mialo wygladac z szablonami? Wstawianie tyle {if} itp do szablonow mija sie z celem... |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 697 Pomógł: 47 Dołączył: 19.12.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
dajesz blok w pliku tpl {errors}
i później
I póżniej przkazujesz zmienną $err jako blok {errors} Troche złą nazwe dałem nie chce mi sie poprawwać (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
Okey, jakos to poszlo, jak cos to wroce to tego (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Teraz mam cos takiego - kod w szablonie: Kod {session ? plik1.html : plik2.html} Ma to za zadanie jak zwykly warunek if" title="Zobacz w manualu PHP" target="_manual() w formie skroconej. Teraz, jak mozna zrobic zeby ta `session` bylo zmienna i gdy np. sesja jest aktywna to by byl includowany `plik1.html`? Jakies pomysly? |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 216 Pomógł: 0 Dołączył: 9.08.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
hm, mysle ze powinienes w jakis sposob identyfikowac zmienne, czyli np...
{$session ? plik1.html : plik2.html} $ - w smarty wystepuje i tak identyfikowana jest zmienna. Tez mozesz zrobic to w ten sposob |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 01:52 |