Page 1 of 1

[SOLVED] Passaggio variabili

Posted: Sat Feb 14, 2009 2:48 pm
by nervino
Scusate il crossposting (ho scritto anche nel sito inglese: http://forum.cmsmadesimple.org/index.ph ... 900.0.html) ma non ho ricevuto risposte e provo qui.

Devo passare una variabile da una pagina all'altra; la pagina che riceve la variabile contiene il tag object in cui tale variabile va inserita.
Non ci riesco.
Ho provato anche con il metodo GET di smarty ma niente. Ottengo sempre degli errori.

Qual è il modo corretto di passare una variabile ad un tag object?

Grazie

Re: Passaggio variabili

Posted: Wed Feb 18, 2009 7:59 pm
by protempore
nervino wrote: Qual è il modo corretto di passare una variabile ad un tag object?
sempre se ho capito...  ;)

il link:

Code: Select all

<div class="video"><a href="index.php?page=video&idvideo=bRleRM5f4XQ">il mio video</a></div>
nella pagina "video":

Code: Select all

{if $smarty.get.idvideo}{assign var='idvideo' value=$smarty.get.idvideo}{else}{assign var='idvideo' value='VALORE DI DEFAULT'}{/if}
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" width="425" height="350">
    <param name="movie" value="http://www.youtube.com/v/{$idvideo}"/>
    <param name="wmode" value="transparent"/>
    <!--[if !IE]> <-->
    <object data="http://www.youtube.com/v/{$idvideo}" width="425" height="350" type="application/x-shockwave-flash">
      <param name="wmode" value="transparent"/>
      <param name="pluginurl" value="http://www.macromedia.com/go/getflashplayer"/>
      FAIL (the browser should render some flash content, not this).
   </object>
   <!--> <![endif]-->
</object>
ho condizionato la variabile {$smarty.get.idvideo} in modo che se non esistesse il tag object passi un video di default (ovviamente va meso l'ID di default invece di "'VALORE DI DEFAULT"...

prova... ma dovrebbe funzionare

Re: Passaggio variabili

Posted: Thu Feb 19, 2009 12:44 pm
by nervino
Grazie! Così funziona.
Io stavo utilizzando il tag object (http://dev.cmsmadesimple.org/projects/objecttag/) e volevo passare la variabile via url dentro questo tag. Non si può fare, vero?

Avevo fatto una cosa del genere (nel template del player video):

Code: Select all

{assign var="p" value=$smarty.get.zoomifyImagePath}
The value of $p is {$p}.

{object src='player.swf' height='600' width='100%' param='FlashVars::zoomifyImagePath|$p&zoomifyX=0&zoomifyY=0&zoomifyZoom=15&zoomifyToolbar=1&zoomifyNavWin=1&zoomifyNavWidth=75&zoomifyNavHeight=75&zoomifySlider=1'}
Ma non funziona.

In pratica non c'è un modo per passare una variabile catturata con GET all'interno di un tag elaborato da smarty, cioè dentro le graffe {} ?

Re: Passaggio variabili

Posted: Thu Feb 19, 2009 4:12 pm
by protempore
nervino wrote: In pratica non c'è un modo per passare una variabile catturata con GET all'interno di un tag elaborato da smarty, cioè dentro le graffe {} ?
si, si può... il tuo codice non funziona perché stai usando all'interno degli apici (') singoli e non doppi (")... a Smarty non piace...
;)

Re: Passaggio variabili

Posted: Thu Feb 19, 2009 5:06 pm
by nervino
Ciao protempore, non so se in questo caso era un problema di apici; ho usato gli apici singoli perché così era stato fatto nell'esempio che avevo letto (http://forum.cmsmadesimple.org/index.ph ... 847.0.html).

Comunque ho risolto inserendo nel template:

Code: Select all

{if $smarty.get.zoomifyImagePath}
   {capture assign=FlashVars}zoomifyImagePath={$smarty.get.zoomifyImagePath}{/capture}
{else}
   {capture assign=FlashVars}zoomifyImagePath=some_default_path{/capture}
{/if}

{object src='player.swf' height='600' width='100%' param=FlashVars::$FlashVars}

Re: Passaggio variabili

Posted: Thu Feb 19, 2009 5:47 pm
by protempore
non è che non funzionano gli apici singoli... non funzionano se contengono delle variabili...

infatti nella tua soluzione la variabile non è contenuta dentro apici singoli... e funziona.

Re: Passaggio variabili

Posted: Thu Feb 19, 2009 9:31 pm
by nervino
Capito!  :)