Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: SMARTY
Forum PHP.pl > Forum > PHP
rzseattle
o co chodzi w tym?questionmark.gif:::


tpl:

Kod
{sciezka_inc}<br>{p_naz_artykulu}<br>{licznik_operacji}<br>{naz_zdjecia}<br> {miniaturka}<br>


php:

[php:1:d01022f690]<?php
$smarty = new Smarty;

// $smarty->assign('naz_zdjecia',$line['naz_zdjecia']);
// $smarty->assign('id_tabeli', $line['id_artykulu']);
// $smarty->assign('miniaturka', $line['naz_zdjecia']."_tn");
// $smarty->assign('licznik_operacji', $licznik_operacji);
// $smarty->assign('sciezka_zdjecia', $sciezki['zdjecia']);
// $smarty->assign('sciezka_inc', $sciezki['inc']);

$smarty->display('t_srodek_art.tmpl');

?>[/php:1:d01022f690]

wynik:


Kod
http://localhost/sklep_wina/inc/

dsfsd

6



002_tn


dla mnie to jest conajmniej dziwne... i chyba nie musze wskazywac co,,,
ale zeby nie bylo watpliwosci
po pierwsze czy to jest jakies zapisywanie gotowych wynikow czy co?questionmark.gif
po drugie co sie stalo z {naz_zdjecia} skoro miniatyuka istnieje?questionmark.gif?


i jeszcze jedno - mam blad przy reloadzie w ramkach w stylu:


Kod
Warning: Failed opening 'tmpl_c%%170%%1709565836t_srodek_art.tmpl.php' for inclusion (include_path='$sciezki[inc]') in c:progamyfoxservwwwsklep_winaincsmartySmarty.class.php on line 1158
rzseattle
dobra doczytalem ze SMARTY kompiluje szablony w celu zwiekszenia wydajnosci szablon (zmienia go tylko w wypadku zmian zmiennych) ,, to juz wiem czemu mi sie dane wyswietlaja pomimo ze ich tak faktycznie nie podaje,, no ale moze ktos powie mi czemu nie ma pokazanej zmiennej $line['naz_zdjecia'] i jakbyktos by mi jeszcze wyjasnil ten blad to bylbym bardzo wdzieczny
kurtz
Cytat
dobra doczytalem ze SMARTY kompiluje szablony w celu zwiekszenia wydajnosci  szablon (zmienia go tylko w wypadku zmian zmiennych)  ,, to juz wiem czemu mi sie dane wyswietlaja pomimo ze ich tak faktycznie nie podaje,, no ale moze ktos powie mi czemu nie ma pokazanej zmiennej $line['naz_zdjecia'] i jakbyktos by mi jeszcze wyjasnil ten blad to bylbym bardzo wdzieczny
prosze doczytaj w dokumentacji smarty informacje nt tego co sie ma dzisac gdy nie ma podstawien. ewentualnie sformuuj pytanie bardziej po polskiemu ;)

ps
http://smarty.php.net
rzseattle
to proste, bledy byly dwa

1. To ze pomimo wylaczonych z obiegu komend $smarty->assign, to zmienne i tak byly widoczne przy wyswietleniu szablonu

2. Najdziwniejsze bylo to ze pokazywaly sie wszystkie oprocz jednej $naz _zdjecia, a w dodatku ta zmienna byla wykorzystywana do tworzenia zmiennej $miniaturka która byla doskonale widoczna.

Cytat
sformuuj pytanie bardziej po polskiemu winksmiley.jpg

Czy wyjasnienie jest wystarczajace?? (na marginesie dodam ze wystarczylo tylko smignac okiem po kodzie aby od razu zobacyc ze cos tu jest nie tak)
Dodam jeszcze ze posty pisze szybko (modem) i nie zrobilem ctrl+v w moim poscie pojwily sie dwabanalne bledy ktorychnie mialem w skyptach ( {$zmienna} a nie {zmienna}, $miniaturka=$line['naz_zdjecia'].'_tn' a dopiero pozniej assign). Te bledy nie mialy wiekszego znaczenia no ale widze ze mozepowinenem opisac lokalizacje geograficzna serva laugh.gif



kiedy juz wszystyko jasne (dla kurtz'a pewnie tez) moze mi ktos powie jak to mozliwe?

ps zmienile serv i ok , ten serv zawsze cos kszaczyl no ale bez przesady
kurtz
Cytat
to proste, bledy byly dwa
pliz raz) wklej kod szablonu (taki jaki jest)

pliz dwa) wklej wynik - taki jaki dostales i jest wg ciebie bledny.

uf ;)
pozdrawiam
rzseattle
Cytat
Cytat
to proste, bledy byly dwa
pliz raz) wklej kod szablonu (taki jaki jest)

pliz dwa) wklej wynik - taki jaki dostales i jest wg ciebie bledny.

uf winksmiley.jpg
pozdrawiam


kurtz zrobie to dlaciebie i jeszcze raz przepisze pierwszy post (z malymi poprawkami)

Cytat
t_srodek_art.tpl:  

Kod
{$sciezka_inc}<br>{$p_naz_artykulu}<br>{$licznik_operacji}<br>{$naz_zdjecia}<br>{$miniaturka}<br>


*.php
Cytat
[php:1:53ea8a2e57]<?php
$smarty = new Smarty;  

 //  $smarty->assign('naz_zdjecia', $line['naz_zdjecia']);  
 //  $smarty->assign('id_artykulu', $line['id_artykulu']);
      $miniaturka=$line['naz_zdjecia']."_tn";  
 //  $smarty->assign('miniaturka', $miniaturka);  
 //  $smarty->assign('licznik_operacji', $licznik_operacji);  
 //  $smarty->assign('sciezka_zdjecia', $sciezki['zdjecia']);  
 //  $smarty->assign('sciezka_inc', $sciezki['inc']);  

 $smarty->display('t_srodek_art.tpl');  
 
?>[/php:1:53ea8a2e57]


i w wyniku dostawalem:

Cytat
Kod
http://localhost/sklep_wina/inc/

dsfsd

6



002_tn



Czy wreszcie zauwazyles ze szablon jak gdyby przestal reagowac na kod php go wywołujący?questionmark.gif? Pomimo zmian w kodzie php szablon zachowywal sie ciagle tak samo z jednym wyjatkiem $licznik_operacji sie normalnie zwiekszal wiec postaowilem sprawdzic czy cos z kodem nie tak wiec zrobilem osobny plik ktory wygladal tak:

[php:1:53ea8a2e57]<?php
$_SESSION['licznik_operacji']++;
$smarty = new Smarty;

$smarty->assign('naz_zdjecia', $line['naz_zdjecia']);
$smarty->assign('p_naz_artykulu', $line['p_naz_artykulu']);
$miniaturka=$line['naz_zdjecia']."_tn";
$smarty->assign('miniaturka', $miniaturka);
$smarty->assign('licznik_operacji', $_SESSION['licznik_operacji']);
$smarty->assign('sciezka_inc', $sciezki['inc']);

$smarty->display('t_srodek_art.tpl');

?>[/php:1:53ea8a2e57]

i bylo normalnie czyli:
Kod
6 <-- to się powiększalo


Dopoki raz nie podalem danych do innych zmiennych (czysto przypadkowo w stylu $sciezki['inc']='fasif')

i okazalo sie ze te dane nawet po usunieciu ich z kodu dalej zostaja w wyswietlanym szablonie. Potem doczytalem ze SMARTY zachowuje skompilowane na php szablony wiec uznalem to za jakis blad serva no ale dalej nie moge sie nadziwic czemu pojawiala sie miniaturka a nie pojawiala sienazwa zdjecia. Special for kurtz:
[php:1:53ea8a2e57]<?php
$miniaturka=$line['naz_zdjecia']."_tn";
?>[/php:1:53ea8a2e57]

Jak wszystko przenioslem na inny serv to dzialalo ok.
I to naprawde nie zaden bug w sciezkach, szablonach itd wszystko sprawdzalem kilka razy i az oczy przecieralem z wrazenia przed monitorem. Pozatym na innym servie (strefa.pl) dziala bez zazutow (ten pierwszy serv to do mojej bylej szkoly nalezy)

Czy to juz jest dostatecznie jasne objasnienie czy jeszcze cos?
kurtz
Cytat
Czy wreszcie zauwazyles ze szablon jak gdyby przestal reagowac na kod php go wywołujący?
drogi dziabongu - twoj pierwszy post nie byl w jezyku polskim a wytlumaczenie rowniez w tym jezyku nie bardzo brzmialo. strzelam ze masz mniej wiosen niz ja wiec pewnie jeszcze ciebie czekaja egzaminy - np z jezyka ojczystego - i pewnie to tobie a nie mi przykro bedzie gdy wlasnie z tego powodu beda problemy. zamiast wiec majtac sie jak dzieciuch pisz skladniej. dziekuje.

odpowiedz:
masz wlaczone cachowanie templatow. wylacz je wymuszajac force_compile = true;
lub
check_compile = true;
lub
usun skompilowane szablony
lub
usun zcachaowane szablony
rzseattle
owszem czekaja mnie egzaminy ale jutro i pojutrze i nie z jezyka ojczystego tylko z matmy i mechaniki wiec wybacz moje zdenerwowanie, pozatym mysle ze moje pytanie z pierwszego posta

Cytat
po pierwsze czy to jest jakies zapisywanie gotowych wynikow czy co?questionmark.gif ...


bylo dosc jasne i nie trzeba bylo tej calej dyskusji zeby do nich spowrotem wrocic, zwlaszcza jesli spojzysz na swoja odpowiedz:
Cytat
masz wlaczone cachowanie templatow



a co do rad to dzieki , wykorzystam je i sprawdze czy to zadziala
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.