Jump to content
Sign in to follow this  
k00ni

Smarty: Variable in {php} - Tag nicht sichtbar, trotz global

Recommended Posts

Hallo,


ich habe folgenden Code:

 

{* Wenn das Wort die Zeichenkette 'text' enthält, dann den FCK-Editor anzeigen. *}
{if strstr ( strtolower ( $ln.tag ) , 'text' ) != ''}

      {php} 
             	  global $ln;

                 echo var_dump ( $ln );

             	  pEditorHTML ($ln ['word'] , $ln ['id'] );
       {/php}

{else}

 

Rund um den Code herum ist eine foreach-Schleife und dort kommt auch $ln her. Nur ist es zwischen den {php}-Tags bei var_dump gleich NULL. :gaga:

Share this post


Link to post
Share on other sites

Ich hab das Ding nicht per assign im Template registriert. Es wird wie geschrieben in der foreach-Schleife mit einem Wert belegt. Nur leider ist es nicht im php-Code zu sehen.


Schließe ich daraus, dass in Smarty "erstellte" Variablen NICHT in {php}-Tags nutzbar sind?!

Share this post


Link to post
Share on other sites

Also,


es geht nun mit folgender Krücke:


1. in der PHP-Datei die Smarty-Instanz in sich selbst registrieren

 

$Obj_smarty->assign('Obj_smarty', $Obj_smarty);

 


2. Die Instanz abfragen und Variable explizit zuweisen

 

{php} 
       global $Obj_smarty;

$ln = $Obj_smarty->get_template_vars('ln');

       echo var_dump ( $ln );

       load_fck_editor ($ln ['word'] , $ln ['id'] , 180 );
{/php}

 

Damit hat meine in der foreach-Schleife erstellte Variable $ln nun genau den richtigen Wert und man kann damit arbeiten.



Grüße

Share this post


Link to post
Share on other sites
Original von k00ni

Ich hab das Ding nicht per assign im Template registriert. Es wird wie geschrieben in der foreach-Schleife mit einem Wert belegt. Nur leider ist es nicht im php-Code zu sehen.


Kann ich mir jetzt nicht vorstellen wie das funktioniert ohne den Code zu sehen.


Schließe ich daraus, dass in Smarty "erstellte" Variablen NICHT in {php}-Tags nutzbar sind?!

Ja das ist korrekt.

Share this post


Link to post
Share on other sites
Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×