Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Szablony .tpl brak możliwości edycji szablonu
Forum PHP.pl > Forum > PHP
soopy
Witam. Jestem nowicjuszem w PHP więc wybaczcie mi niefachowe słownictwo.

Jakiś czas temu pewna firma zrobiła mi stronę www. Gdy umieścili mi ją na serwerze to chciałem dodać do kodu strony głównej tekst. Ustaliłem że należy to dodać w pliku template_2.tpl. Plik ten był umieszczony w cache\templates\src

Drugi plik o nazwie %%56^563^563B8330%%template_2.tpl.php i podobnym kodzie był umieszczony w cache\templates\compiled

W tamtym czasie udało mi się umieścić ten tekst i było ok.

Po pewnym czasie ta firma robiła jeszcze coś na mym serwerze i po tym jak coś tam zrobili to już nie mogłem nic kombinować ze stroną główną czyli plikiem template_2.tpl i %%56^563^563B8330%%template_2.tpl.php

W chwili obecnej jeśli dokonam zmiany w kodzie pliku template_2.tpl lub tego drugiego i zapisaniu zmian następnie dokonuje odświeżenia strony głównej i
kod w pliku template_2.tpl powraca do wcześniejszego.
nawet jeśli całkowicie usunę z serwera te pliki to po odświeżeniu strony powracają

opcje w folderze i tych plikach (prara pliku) tzw chmod są ustawione na możliwość zapisania

PLIK template_2.tpl ZACZYNA SIE OD KODU:

{php}
$authHandler = ArrowControler::$authHandler;

if(false == true && $authHandler->isLoged() == false ){
$router = ArrowRouter::getDefault();
$template = $router->getTemplate();
$cond = explode( ":", $template->getContainer()->getLoginTemplate() );
$template = $router->getProject()->getTemplatesStructure( )->findTemplate( array("path" => $cond[0], "name" => $cond[1]) );

---------------tu się kończy fragment-----------------------------------------------------------------------------------

PLIK %%56^563^563B8330%%template_2.tpl.php ZACZYNA SIĘ OD KODU:

<?php /* Smarty version 2.6.18, created on 2009-12-20 22:57:33
compiled from template_2.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'default', 'template_2.tpl', 1172, false),)), $this); ?>
<?php
$authHandler = ArrowControler::$authHandler;

if(false == true && $authHandler->isLoged() == false ){
$router = ArrowRouter::getDefault();
$template = $router->getTemplate();
$cond = explode( ":", $template->getContainer()->getLoginTemplate() );
$template = $router->getProject()->getTemplatesStructure( )->findTemplate( array("path" => $cond[0], "name" => $cond[1]) );

--------------------------------tu się kończy fragment kodu ------------------------------------------------------------------------

Proszę o pomoc i wyrozumiałość dopiero się uczę ale z tym nie mogę się uporać.
Zauważyłem że przy każdorazowym kliknięciu na stronę główną w pliku %%56^563^563B8330%%template_2.tpl.
dokonuje się zmiana w nagłówku kodu: Smarty version 2.6.18, created on 2009-12-20 22:57:33
Mion
Zmiany wprowadzasz tylko w plikach szablonow template_2.tpl w katalogu templates, a nie tych pre kompilowanych o nazwach %%56^563^563B8330%%template_2.tpl.php z katalogu templates_c. Tak poza tym to smarty już wielki przeżytek.

I jak wprowadzisz zmiany w pliku szablonu *.tpl usuń pliki cache i te prekompilowane.
emtiej
Tak jak kolega wyżej napisał pliki w katalogu templates_c są plikami tymczasowymi cache, które odciążają serwer, dzięki nim skrypt nie generuje za każdym razem i nie przetwarza twojego template, w templates_c niczego nie ruszasz, ewentualnie czyścisz(usuwasz pliki) jeżeli zmienisz coś w plikach z folderu templates, które są prawidłowymi plikami szablonu, jeżeli po edycji plików z templates nie wyczyścisz cache to nie zobaczysz rezultatów swojej pracy.
soopy
Cytat(emtiej @ 21.12.2009, 16:55:21 ) *
Tak jak kolega wyżej napisał pliki w katalogu templates_c są plikami tymczasowymi cache, które odciążają serwer, dzięki nim skrypt nie generuje za każdym razem i nie przetwarza twojego template, w templates_c niczego nie ruszasz, ewentualnie czyścisz(usuwasz pliki) jeżeli zmienisz coś w plikach z folderu templates, które są prawidłowymi plikami szablonu, jeżeli po edycji plików z templates nie wyczyścisz cache to nie zobaczysz rezultatów swojej pracy.


Witam zrobiłem oto następująco:

w lokalizacji
www\cache\templates\src\template_2.tpl (prawidłowe pliki szablonu)

edytowałem plik template_2.tpl dodając do kodu zwykły tekst


po edycji pliku z templates wyczyściłem cache z lokalizacji: www\cache\templates\compiled
czyli został usunięty plik %%56^563^563B8330%%template_2.tpl.php

Co się stało;

oba pliki powróciły do pierwotnych wersji

w pliku template_2.tpl powraca kod do pierwotnej postaci
w lokalizacji www\cache\templates\compiled pojawia się %%56^563^563B8330%%template_2.tpl.php niezmienione


Zrobiłem eksperyment:

www\cache\templates\src\ z tej lokalizacji wyciąłem wszystkie pliki szablonów

www\cache\templates\compiled z tej lokalizacji wyciąłem wszystkie skompilowane pliki

strona po odświeżeniu jej w przeglądarce ruszyła

w tych wymienionych wyżej lokalizacjach pojawiły się tylko te szablony stron i skompilowane i te nie skompilowane - prawidłowe, które są odpowiedzialne za to by strona w ogóle się uruchomiła. Pytanie tylko skąd?
Cysiaczek
@emtiej - Czy wiesz, że Twój post nie wniósł niczego nowego do dyskusji? Nie pisz postów w rodzaju "zgadzam się z powyższym postem", bo jest to na forum bardzo niemile widziane
ucho
Możliwe, że pliki są wypakowywane z jakiegoś archiwum lub ściągane z internetu po stwierdzeniu braku pliku lub uszkodzenia( czyli w tym przypadku modyfikacji) - w skazuje na to nazwa katalogu: "www/cache/". Jeśli odpalasz to pod Windows FileMon ( czy jak się nazywało to narzędzie od sysinternals) powinien pokazać, które pliki są otwierane. Pod linuksem może być gorzej, nie wiem czy da się jakoś łatwo `strace` do php podłączyć
soopy
Cytat(ucho @ 22.12.2009, 11:46:09 ) *
Możliwe, że pliki są wypakowywane z jakiegoś archiwum lub ściągane z internetu po stwierdzeniu braku pliku lub uszkodzenia( czyli w tym przypadku modyfikacji) - w skazuje na to nazwa katalogu: "www/cache/". Jeśli odpalasz to pod Windows FileMon ( czy jak się nazywało to narzędzie od sysinternals) powinien pokazać, które pliki są otwierane. Pod linuksem może być gorzej, nie wiem czy da się jakoś łatwo `strace` do php podłączyć



Przepraszam nie dopisałem pełnej lokalizacji plików"
C:\serwer\www\cache\templates\compiled
C:\serwer\www\cache\templates

Zainstalowałem na swoim komputerze serwer apache+php+mysql na localhost system win xp pro

Uruchamiałem stronę www w trybie offline na moim serwerze zainstalowanym w komputerze PC więc nie było możliwości ściągnięcia plików z zewnętrznej lokalizacji i sytuacja jest taka sam czyli pliki templates są wczytywane przy każdorazowym odświeżeniu strony.

Nawet Zatrzymałem serwer Apache, w trybie offline i usunąłem plik templates_2.tpl po uruchomieniu apache i wpisaniu adresu przypisanego do mojej strony www (w tym przypadku localhost) plik templates_2.tpl powrócił niezmieniony na swoje miejsce.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.