smarty include problem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • smarty include problem

    Hallo ich habe folgendes Problem:

    Ich benutze Smarty includes, rufe aus einem php Script ein Template auf (z.B. content.tpl), welches per Smarty include weitere Templates wie z.B.
    header.tpl, footer.tpl etc. includiert.

    Wie kann ich jetzt in diesen includierten Templates Smarty Variablen aus dem php Script ansprechen?

    Beispiel:

    ----------------------------------------
    Script content.php

    <?php

    # hier steht jetzt einiger php code

    $smarty->assign('var1',"$var1");
    $smarty->display('content.tpl');

    ?>
    ----------------------------------------
    Template content.tpl

    {include file="head.tpl"}
    {include file="linke_spalte.tpl"}

    <!
    hier steht jetzt irgendwelches html
    {$var1}
    ->

    {include file="rechte_spalte.tpl"}
    {include file="bottom.tpl"}

    ----------------------------------------
    Template linke_spalte.tpl

    <!
    hier steht jetzt wieder irgendwelches html
    {$var2}
    ->

    ----------------------------------------

    Jetzt will ich im Template linke_spalte_login.tpl
    z.B. die Variablen $var2 ausgeben.

    Wie spreche ich die aus dem content.php an?


    Hoffe mich verständlich ausgedrückt zu haben,
    und freue mich auf Tipps zur Lösung.

    Grüße s-m-w

  • #2
    ganz normal, als wenn es alles in einem File wäre

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      hm,

      ich hab bisher folgendes probiert:

      im php Script zusätzlich:

      $smarty2->assign('var2',"$var2");
      $smarty2->display('linke_spalte.tpl');

      oder auch nur

      $smarty->assign('var2',"$var2");

      Beides hatte (bei mir) nicht funktioniert.

      Könntest du bitte etwas genauer sagen, was du mit "ganz normal ..." meinst?

      Dank und Gruß s-m-w

      Kommentar


      • #4
        Re: smarty include problem

        PHP-Code:
        $smarty->assign('var1''Smarty ist ');
        $smarty->assign('var2'' ein Template-System');
        $smarty->display('something.tpl'); 
        something.tpl
        PHP-Code:
        <b>{$var1}{include file="test.tpl"}</b
        test.tpl
        PHP-Code:
        {$var2

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar


        • #5
          Ups, jetzt funktionierts. Danke!

          Ich dachte, ich hätte diese Variante auch getestet, aber jetzt klappts.
          Hab gesehen dass es auch noch folgende Möglichkeit gibt:

          {include file="xyz.tpl" title="Erste Seite"}

          Funktioniert bei mit aber nicht mit Variablen und die Parameter hier explizit anzugeben wäre ja auch umständlich.

          Dank und Gruß s-m-w

          Kommentar

          Lädt...
          X