Шаблоны Smarty иногда не вставляются ! =(

t3[0one]

Новичок
Шаблоны Smarty иногда не вставляются ! =(

У меня есть основной шаблон в каторый инклудятся динамически созданые 3 шаблона. Есле переключаясь по страничкам очень быстро то получается что превые инклудящиеся шаблоны не компилястя . как бы остаются старые !
есле обновить страничку то всё становися нормально.
как бы мне избежать такую проблему ?
 

Nirva

Dmitry Polyakov
дать страничке до конца загрузится. это что ли на скорость ты собрался между страницами ходить?
или что-то у тебя не так, да. кеши всякие например.
 

t3[0one]

Новичок
кешь я не юзаю пока что

а скорость малоли юзер недожидаясь загрузки тыркнит на другую ссылку а там бага =)
 

Demiurg

Guest
давайте определим причем тут смарти и пхп. я из первого вопроса не понял ничего...
 

t3[0one]

Новичок
вобщем у меня в
index.php
PHP:
$template->assign('left', $session_left_block); // передаю имя созданного шаблона 
$template->assign('right', $session_right_block);// передаю имя созданного шаблона 
$template->assign('module', $session_module);// передаю имя созданного шаблона 
$template->assign('inskin', $_SESSION['inskin']);
$template->display($_SESSION['inskin']."/index.tpl");
index.tpl
PHP:
{include file="../compillersource/$left"}
{include file="../compillersource/$right"}
{include file="../compillersource/$module"}
при быстрой смене контента компилется старые шаблоны хотя
$session_left_block
$session_right_block
$session_module
поменялись
как оперелил что поменялись
PHP:
include ("compillersource/$session_module");
include ("compillersource/$session_left_block");
include ("compillersource/$session_right_block");
$template->assign('left', $session_left_block); // передаю имя созданного шаблона 
$template->assign('right', $session_right_block);// передаю имя созданного шаблона 
$template->assign('module', $session_module);// передаю имя созданного шаблона 
$template->assign('inskin', $_SESSION['inskin']);
$template->display($_SESSION['inskin']."/index.tpl");
получается что до index.tpl инклудятся новые шаблоны а в теле index.tpl всё еще старые

-~{}~ 06.04.05 10:38:

пжлс хелп =0))
 

Мутник

Новичок
t3[0one]

я бы тебе посоветовал делать так:

index.tpl
PHP:
{$page}
index.php
PHP:
$smarty->assign("page", $smarty->fetch(PATH_TEMPLATES .  $left));
сколько раз пользовался - никогда проблем не было...
так что думай...
 

t3[0one]

Новичок
в index.tpl html код основного шаблона и
{include file="../compillersource/$left"}
{include file="../compillersource/$right"}
{include file="../compillersource/$module"}
вствляются в разных его местах.
 

Мутник

Новичок
t3[0one]

слушай, тот код который я тебе дал 100% работает так: читает содержимое шаблона, потом вставляет его как информацию, ТОЛЬКО ПОТОМ показывает юзеру. То как работает то, что делаешь ты - я не представляю. Может в готорый шаблон результат вставляет - не знаю..

но физически не может быть так, что шаблон не успевает ДОВСТАВИТЬСЯ, т.к. юзер получает уже ГОТОВЫЙ результат, у него же не происходит дозагрузки т.к. ПХП чисто серверный язык!
 

t3[0one]

Новичок
Мутник
нашел применение твоему примеру )
как то странно но не помагет
ищу причину в своих писючках!
большое спасибо !
 

yu91

Новичок
Vsem privet.
Mutnik podskazhi pogaluistaodnu vot-takuyu chtuku.

U menia Fail : panier.php

$smarty_benq = new smarty_benq;//declaration class

$smarty_benq->register_object("PhpMyBorder", $phpmyborder);

$smarty_benq->register_object("PhpMyBorder", $phpmyborder,array('begin_round','end_round'));

$smarty_benq->assign_by_ref("PhpMyBorder", $phpmyborder);

$smarty_benq->display('panier.tpl');

I k nemu panier.tpl :

{$phpmyborder->begin_round("180px","cdfedf","123dfe")}
<p class="in-center cadre-titre">{$smarty.const.PANIER_BOX_TITRE}</p>
<p>...</p>
{$phpmyborder->end_round()}
--------------

Kogda ia proveriayu, vyvozhu ego na browsere to poluchayu zhelaemiy resultat. A kogda pytayus' vyvesti ego "tvoim metodom":

V index.php :
$smarty_benq->assign('panier',$smarty->assign("panier", $smarty_benq->fetch(PATH_TEMPLATES . 'panier.tpl'));

i v index.tpl :

{$panier}

to nichego ne proishodit - stranica ostaetsia poustoy. Vchem mozhet byt' zagvozdka ? Spasibo.
 
Сверху