![]() |
![]() |
![]()
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 -------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]() |
![]()
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 -------------------- www.mpps.pl
park maszynowy: apache 2.2.22 | php 5.4.0 | MySQL 5.0.10 | phpMyAdmin 3.5.0 | notepad ++ | pilsner urquell |
|
|
![]()
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...
-------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]()
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. -------------------- www.mpps.pl
park maszynowy: apache 2.2.22 | php 5.4.0 | MySQL 5.0.10 | phpMyAdmin 3.5.0 | notepad ++ | pilsner urquell |
|
|
![]()
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 -------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]()
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. -------------------- pozdrawiam, chfast
|
|
|
![]()
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
![]() -------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]()
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 ![]() 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.. -------------------- pozdrawiam, chfast
|
|
|
![]()
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 ![]() 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..
-------------------- Brak czasu :/
|
|
|
![]()
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? -------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]()
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.
-------------------- Brak czasu :/
|
|
|
![]()
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... -------------------- pozdrawiam, chfast
|
|
|
![]()
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()
![]() 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 -------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]() ![]()
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 ![]() ![]() ![]() -------------------- Warsztat: Kubuntu, PhpStorm, Opera
|
|
|
![]()
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 ![]() ja bym nie podolal wlasnego template systemu napisac to wiem na sete, szczegolnie ze ten jest bardzo cacy i za darmo ![]() 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
![]() 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... -------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]()
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ć ![]() -------------------- Warsztat: Kubuntu, PhpStorm, Opera
|
|
|
![]()
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
![]() 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? -------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]()
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: 22.08.2025 - 04:06 |