Templates mit Smarty

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

  • Templates mit Smarty

    Hi,

    ich habe ein Template worin eine Navigation eingebettet ist. Der Link soll einen Wert mitgeben, damit die Navigation später aufklappt.

    Ich habe folgendes Template dafür entwickelt:

    PHP-Code:
    {include file="header.html"}

        <
    table border="0" cellpadding="5" cellspacing="0">
        <
    tr>
        <
    td valign="top"><a href="index.php">Home</a></td>
        </
    tr>
        <
    tr>
        <
    td valign="top"><a href="artikel.php?menue=1">Fruit Of The Loom</a></td>
        </
    tr>
        {if 
    $menue == 1}
        <
    tr>
        <
    td valign="top"> &nbsp; &nbsp; <a href="artikel.php?menue=1">T-Shirts</a></td>
        </
    tr>
        {/if}
        <
    tr>
        <
    td valign="top"><a href="impressum.php">Impressum</a></td>
        </
    tr>
        <
    tr>
        <
    td valign="top"><a href="kontakt.php">Kontakt</a></td>
        </
    tr>
        </
    table>

    {include 
    file="footer.html"
    Die Navigation klappt aber leider nicht auf! Was machte ich falsch...???

    Hier noch die Datei zum parsen des Template:

    PHP-Code:
    <?php
    include("includes/header.inc.php");

    $startseite = new artikel;
    $startseite $startseite->get_artikel("""Startseite");

    $smarty->assign('startseite'$startseite);
    $smarty->display("artikel.html");

    include(
    "includes/footer.inc.php");
    ?>
    In der header.inc.php steht natürlich das erforderliche smarty Script.

    Danke für eure Hilfe!

    Beste Grüße,

    Björn
    » http://www.htaccess-generator.com

  • #2
    Re: Templates mit Smarty

    Original geschrieben von bweichel
    {if $menue == 1}
    versuch's mal mit $_GET
    mfg - sagg

    Kommentar


    • #3
      Meinst du so?

      PHP-Code:
          {if $_GET[menue] == 1}
          <
      tr>
          <
      td valign="top"> &nbsp; &nbsp; <a href="artikel.php?menue=1">T-Shirts</a></td>
          </
      tr>
          {/if} 
      Geht leider nicht ;-(
      » http://www.htaccess-generator.com

      Kommentar


      • #4
        Wer um himmels Willen erzählt denn allen, das die Hochkommas unbedeutend für die Funktionen sind? Ist ja nicht zu fassen.

        Ich schätze mal du bekommst selbst heraus wo die fehlen.

        byez - sagg
        mfg - sagg

        Kommentar


        • #5
          Sorry, aber das bringt auch nicht viel. Ich befinde mich in einem Template. In der Smarty Doku steht auch nichts von $_GET.

          Die Fehlermeldung wenn ich Hochkomma`s oder Anführungszeichen verwendet lautet:

          PHP-Code:
          Fatal errorSmarty error: [in header.html line 25]: syntax errorunidentified token '['menue']' 
          » http://www.htaccess-generator.com

          Kommentar


          • #6
            Dann solltest du $_GET['menue'] vielleicht nicht in dem Template abfragen, sondern davor, wo auch der restliche Code steht.
            Dort kannst du gerne $menue = $_GEt['menue'] machen und den code von vorhin verwenden.

            Weil in den templates an sich wird nix mehr abgefragt o.ä., normalerweise zumindest.

            nu haste ja im prinzip schon alles, was du brauchst
            mfg - sagg

            Kommentar


            • #7
              du könntest auch einfach mal die doku zu smarty lesen!


              danach wüsstest du, dass dir ja eventruell {if $smarty.get.menue == 1} helfen könnte, aber wer weiß, vielleicht lügt die doku ja auch
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                hm..werd mir mal das smarty ansehen, hab das schon so oft gehört, aber noch nie selbst benutzt.
                Was kann man damit denn alles anstellen? Scheint ja ziemlich umfangreich zu sein. Mal sehen ob ich gleich den richtigen Download finde.
                mfg - sagg

                Kommentar


                • #9
                  http://smarty.php.net


                  ist aber aufgrund der leistungsfähigkeit recht komplex
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    Hi,

                    mit Smarty kann man eigentlich sehr viel machen. Es ist meiner Meinung nach das Beste für Templates. Ich habe schon einige Template Klassen ausprobiert, aber Smarty ist bisher das Beste.

                    Es ist sehr unfangreich. Aus diesem Grund habe ich auch nicht gewußt wie ich die If - Schleife in Smarty richtig verwende. Bei mir stand da folgendes: IF-Schleife


                    Aber nichts des zu trotz. Werde es gleich morgen früh ausprobieren. Ich hoffe es funzt.

                    Hier der Link zu Smarty:

                    Doku
                    Download
                    » http://www.htaccess-generator.com

                    Kommentar


                    • #11
                      Thx.
                      Bin zwar eigentlich kein Freund von solchen "Fertigteilen", aber vlt. ist es ja ganz interessant.


                      byez - sagg
                      Zuletzt geändert von sagg; 02.11.2004, 22:17.
                      mfg - sagg

                      Kommentar


                      • #12
                        Ich würde die Navigation auch schon vor Aufruf des Templates aufrufen, bzw. wir handhaben das so.
                        Erstens kannst Du dadurch (eventuell in diesem oder späteren Scripts) besser Sicherheitsabfragen machen (Darf der das?) und zweitens kannst Du dann im Template eventuell einen Array auswerten und brauchst den <tr>-Code nur einmal formatieren.
                        Die 'foreach, foreachelse'-Doku hilft bestimmt, eventuell auch die section-Funktion.

                        Zur weiteren Arbeit mit Smarty und DOKU: Lade dir am besten die Doku im Hilfe-Format für Windows (*.chm-Datei), erleichtert die Suche ungemein. Vor allem hast du einen guten Index, der oft zur Lösung führt.

                        Kommentar

                        Lädt...
                        X