![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 30.04.2016 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
chciałbym podejść do tworzenia trzeciego mini systemu na zlecenie dla znajomych. Stworzyłem już podobne 2 na których dużo się nauczyłem i dużo korzystałem z pomocy tego forum. Wszystko funkcjonuje a teraz chciałbym małymi krokami zmierzać w bardziej profesjonalną stronę. Może nie jest to ogromny krok do przodu ale też bardzo nigdzie mi się nie śpieszy, poprzednio mieszałem często php z htmlem a teraz chciałbym tego nie robić. Moim znajomym to oczywiście nie przeszkadza ważne że użytkownicy się logują prowizje się naliczają sklepy działają itd. I moje pytanie, jeśli nie chce mieszać phpa z htmlem rozumiem że najprościej będzie używać jakiegoś systemu szablonów. Co polecacie na początek, może jakiś dobry sprawdzony link do dobrego tekstu albo kursu? Albo jakieś info co najpierw wygogolować co testować i czego się uczyć. Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Zależy od podejścia. Możesz albo od razu całe MVC wdrożyć (wiadomo, powoli na początek) albo sam system szablonów. W zależności od drogi najlepsza będzie dokumentacja.
https://twig.sensiolabs.org/ http://phptal.org/ -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Najprostszy i najszybszy - PHP
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Szablony są równie szybkie - pierwsze przetworzenie zajmuje dłużej. Później system pracuje na gołym PHP (skompilowany szablon). Mnie osobiście skręca jak muszę grzebać w czystym (PHP) szablonie - gigantyczne możliwości popełnienia błędu.
Ewentualnie możesz zobaczyć np Zend Expressive. Microframework który nauczyłby cię dobrych wzorców a instalator ma kilka systemów do wyboru. -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Tak, pracuje na gołym ale wywołuje pierdyliard metod
![]() |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 30.04.2016 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli pracujesz na czystym php to jak załatwiasz sprawę nie mieszania?
Może to głupie pytanie ale dajcie mi chwile to się wdrożę w temat ![]() Dzięki za linki viking dokumentacja na pewno się przyda na pewno zerknę ale mój angielski jest taki lekko ponad podstawę to też za dużo stamtąd nie wyciągnę. Jeśli mielibyście jakieś linki w pl to byłbym wdzięczny. Ten post edytował gucio1 25.04.2017, 12:27:09 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
a czym się różni:
od
Generalnie niczym. W systemie szablonów nie chodzi o mieszanie PHP z HTML tylko o nie mieszanie Logiki z szablonem. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 30.04.2016 Ostrzeżenie: (0%) ![]() ![]() |
Czyli chodzi tylko o to żeby zamiast wyświetlać coś standardowo phpem wstawiać szablon czyli np.
zamiast: <?php echo $zmienna;?> wstawic: <?=$zmienna?> ![]() To po co w ogóle to stosować? Jest to bardziej czytelne? Dla mnie to jeden... |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Różni się jak np czegoś nie zamkniesz w szablonie i poleci wyjątek (kontra dowolna sieczka) czy możliwość minifikacji wyjścia albo zmiany zamknięć elementów.
-------------------- |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Nie. chodzi o to by oddzielic logike od wygladu.
Najpierw ma byc logika aplikacji, potem ma byc wyswietlanie aplikacji Logika aplikacji to np. pobranie danych z bazy albo zapisanie danych do bazy, albo cala masa roznych wyliczen. Wyswietlanie aplikacji to np. wyswietlenie pobranych wczesniej danych No i szablony leza w innych plikach/katalogach niz skrypty odpowiedzialne za logike -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 30.04.2016 Ostrzeżenie: (0%) ![]() ![]() |
Ok, czyli np. w odrębnym pliku pobieram dane z bazy danych przeliczam je w zależności od potrzeb i powiedzmy zapisuje je w zmiennych sesyjnych. A w drugim pliku który wyświetlam użytkownikowi, wyświetlam te zmienne za pomocą szablonu?
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A po co zapisywac do zmiennych sesyjnych? Dane z bazy masz przekazac do szablonu. Sesja tu nie potrzebna
Prosze, tu http://nospor.pl/klasa-widoku.html opisalem przykladawa klase widoku/szablonu ktora korzysta z php jako szablon. Przejrzyj, moze zrozumiesz o czym mowa ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 30.04.2016 Ostrzeżenie: (0%) ![]() ![]() |
Właśnie szukałem odpowiedzi na pytanie jak przekazać dane do szablonu już zerkam.
![]() |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
A jak w php nie domkniesz to nie poleci error? Z dupy argument... Jak nie zamkniesz tagu html... -------------------- |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 30.04.2016 Ostrzeżenie: (0%) ![]() ![]() |
Ok, wydaje mi się że już wiem jak przekazać zmienne do szablonu. W takim razie dzięki za wskazówki będę próbował z tym walczyć
![]() Pozdrawiam. W pliku test.php mam:
a w drugim test2.php
Wyświetlam tą zmienną ale co oznacza: Warning: Creating default object from empty value in.. ![]() |
|
|
![]()
Post
#17
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
To jest caly kod jaki masz? Obiekt $view gdzies tworzysz w ogole?
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
$view ma być instancją jakiegoś obiektu. Zobacz sobie np klasę https://github.com/zendframework/zend-view/...l/ViewModel.php
-------------------- |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 30.04.2016 Ostrzeżenie: (0%) ![]() ![]() |
Aa czaje dobra, czyli po prostu obliczenia itp wykonuje w odrębnych plikach i ładuję plik z klasą potem w widoku odwołuję się do obiektów które wyświetlam przez $this->?
Czyli to wystarczy żeby nikt nie zarzucił mi mieszania logiki z wyglądem? |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Spróbuj skorzystać z gotowego frameworka lub microframworka. Zobaczysz jak się powinno pisać i w jaki sposób tworzy się takie rzeczy. Przykładowe aplikacje:
https://github.com/zf3buch/zendframework-ce...e/chapter_18_01 https://github.com/RalfEggert/zend-expressi...rial/tree/part6 -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 10:18 |