![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 371 Pomógł: 18 Dołączył: 23.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie forumowiczów. Dzisiaj uderzam do Was z pytaniem, wyglądającym być może trochę jak pytanie przysłowiowej blondynki ... Kopię po sieci w poszukiwaniu rozwiązań opartych na smarty, znalazłem kilka z nich. Moje pytanie brzmi ... :
Czy jeśli w pliku index.php utworzę sobie instancję obiektu smarty oraz zdefiniuję katalog z templatkami, templatkami_c itp. to czy muszę podobną akcję wykonywać w KAŻDYM pliku w tym katalogu ? Przypuśćmy że mam index.php, artykul.php, galeria.php - czy w każdym z nich musi być taka instancja $smarty = new Smarty; ? Logicznie rzecz biorąc tak powinno być, aczkolwiek w tych kilku projektach nie mogę się doszukać gdzie w tych pozostałych plikach jest tworzona taka instancja i ustawianie ścieżek. A każdy tutorial na temat smartów kończy się na jednym pliku, nie pokazując co się dzieje w innych. Wybaczcie być może dziwne pytanie, ale na prawdę nie mogę dojść do tego jak to ma wyglądać. Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
plik index.php jest glownym plikiem projektu. Wszystkie strony przechodza przez ten plik.
obiekt smartiego w 99% przypadkow wystarczy stworzyc raz. Ma byc on tworzony np. w index.php i ma byc dostepny wszedzie tam gdzie potrzebny. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Jeśli te pliki są niezależne i nie są uruchamiane przez jakiś główny kontroler, to musisz tworzyć obiekt w każdym z nich, albo możesz sobie go tworzyć w innym pliku i ten plik includować do każdego w którym potrzebujesz smartów.
Ten post edytował kapslokk 3.11.2015, 13:43:26 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 371 Pomógł: 18 Dołączył: 23.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
Wszystkie strony przechodza przez ten plik. Mógłbyś rozwinąć myśl ? W jaki sposób przechodzą ? Czy w każdym pliku php mam includować na początku index.php ? Cytat(kapslokk) Jeśli te pliki są niezależne i nie są uruchamiane przez jakiś główny kontroler, to musisz tworzyć obiekt w każdym z nich, albo możesz sobie ją tworzyć w innym pliku i ten plik includować do każdego w którym potrzebujesz smartów. tak własnie myślałem Ten post edytował Mefiuu 3.11.2015, 13:43:54 |
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat W jaki sposób przechodzą ? Czy w każdym pliku php mam includować na początku index.php ? Plik index.php powinien byc glownym plikiem aplikacji. Aplikacja nie powinna pozwalac na bezposrednie odpalanie zadnych innych plikow. To plik index.php powinien includowac wlasciwe pliki w zaleznosci od tego jaka strone aplikacji odpalasz. Dzieki temu wszystko inicjalizujesz w jednym miejscu i nie masz tego porozwalane po petryliardach plikow
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 371 Pomógł: 18 Dołączył: 23.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
Chyba rozumiem. Czyli po prostu zamiast bawić się w np. index.php oraz artykul.php wystarczy zrobić index.php z instancją smartów oraz w zależności od przejścia gdzieś metodą POST includować sobie np. właśnie artykul.php i wtedy smarty będą widoczne, tak ? A później tylko sobie ładnie ustawić mod_rewrite, żeby użytkownik myślał, że rzeczywiście jest na innej podstronie
|
|
|
![]()
Post
#7
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Tak. Ale to wcale nie musi byc post, moze byc normale get, np
index.php?page=article i na tej podstawie index.php bedzie wiedzial ze ma zaladowac plik article.php. Poczytaj cos o MVC. Tam to wszystko jest wyjasnione. Teraz kroczysz naprawde zla sciezka (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 371 Pomógł: 18 Dołączył: 23.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
pomyliłem oczywiście GET z POST ... (IMG:style_emoticons/default/blink.gif)
Poczytam o MVC. Dziękuję za pomoc. Pozdrawiam (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 6 381 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Albo zobacz mikro frameworki w style Silex, Slim, Expressive. Możeliwe że zamiast bawić się w jakieś rzeźby w index.php będzie Ci dużo wygodniej zacząć w nich pisać.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 04:49 |