Problem mit smarty (template)

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

  • Problem mit smarty (template)

    Hallo,

    ich habe wieder mal ne Frage zu smarty.

    Mit folgendem SQL-Statement lese ich meine artikel Datenbank aus und möchte die einzelnen Zeilen in meinem Template Script ausgeben. Problem: Ich peile einfach nicht wie ich die einzelnen Zeilen ausgeben kann, ohne das sich dabei meine includeten Dateien "header" und "footer" ebenfalls wiederholen.

    Habs schon mit foreach und section versucht!

    PHP-Code:
    // MEIN PHP SCRIPT
    include("includes/header.inc.php");

    $query "SELECT artikelnum, bezeichnun, internet ";
    $query.= "FROM artikel ";
    $query.= "ORDER BY bezeichnun ASC";

    $result mysql_query($query);

    while(
    $row mysql_fetch_array($result)) {
        
    $smarty->assign('artikelnum'$row[artikelnum]);
        
    $smarty->assign('bezeichnun'$row[bezeichnun]);
        
    $smarty->assign('internet'$row[internet]);
    }

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

    include(
    "includes/footer.inc.php"); 
    Und nun meine Template File:

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

    <
    table border="0" cellpadding="3" cellspacing="0" width="100%">
    <
    tr>
    <
    td valign="middle" style="border-bottom: 1px solid #DDDDDD;" colspan="3"><b>Sie befinden sich hier:</bMedia2l &#187; Artikel bearbeiten</td>
    </tr>
    <
    tr>
    <
    td colspan="3"><br></td>
    </
    tr>
    <
    tr>
    <
    td class="th2">Artikelnum</td>
    <
    td class="th2">Bezeichnung</td>
    <
    td class="th2">im Shop anzeigen</td>
    </
    tr>
    {
    WAS MUSS HIER STEHEN???}
    <
    tr bgcolor="#EEEEEE">
    <
    td valign="middle" style="border-left: 1px solid #CC0000;">{$artikelnum}</td>
    <
    td valign="middle" style="border-bottom: 1px solid #FFFFFF;">{$bezeichnun}</td>
    <
    td valign="middle" style="border-bottom: 1px solid #FFFFFF; border-right: 1px solid #CC0000;">{$internet}</td>
    </
    tr>
    {
    UND HIER???}
    </
    table>

    {include 
    file="includes/footer.inc.html"
    Vielen Dank...
    » http://www.htaccess-generator.com

  • #2
    assign ist falsch, du überschreibt schon bestehende zuordnung

    entweder nutzt du assign mit einem array oder du nutzt append

    PHP-Code:
    $result mysql_query($query);

    while(
    $row[] = mysql_fetch_array($result));
    array_pop($row);

    $smarty->assign('artikel'$row);

    $smarty->display('artikel.html'); 
    Code:
    {section name=artikel loop=$artikel}
      {$artikel[artikel].artikelnum} - 
      {$artikel[artikel].bez} - 
      {$artikel[artikel].internet}
    {section}
    so in etwa, aber steht das nicht im manual zu smarty?

    und brich bitte deinen code um
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Hallo mrhappiness,

      vielen dank für deine schnelle Antwort.

      Bestimmt steht das auch in smarty, aber wenn man nicht weiß nach was man suchen soll, kann man da schon mal Probleme bekommen. Im ersten Teil der Doku steht mal nur was von "assign" append ist mir neu.

      Werde es gleich ausprobieren.

      Dank dir!

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

      Kommentar


      • #4
        Original geschrieben von bweichel
        Im ersten Teil der Doku steht mal nur was von "assign" append ist mir neu.
        Dann lies doch mehr als nur den ersten Teil.

        In der Funktionsübersicht steht append übrigens noch vor assign...

        wen du natürlich nur den crashkurs liest und selbst den nicht so 100% aufmerksam...
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Mal noch ne Frage... warum benötige ich eigentlich

          PHP-Code:
          array_pop($array); 
          ???
          » http://www.htaccess-generator.com

          Kommentar


          • #6
            was liefert mysql_fetch_array, wenn keine Daten mehr gibt? überlege, dann weißt du auch warum

            Kommentar


            • #7
              lass es weg und schau was passiert
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar

              Lädt...
              X