WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Problem mit Template (http://www.wcm.at/forum/showthread.php?t=140008)

walter3 22.07.2004 21:08

Problem mit Template
 
Hallo Leute!
Ich habe ein Anfängerproblem, das ich auch durch Stundenlanges Googeln nicht lösen konnte.
Ich möchte ein bestehendes Fotoalbum so umändern, dass auf der Startseite die Übersicht formatiert in Dreierreihe und nicht wie vorgegeben einfach untereinander ausgegeben wird.
Das Script:
  • if(!$result = mysql_query($sql)){
    $output = mysql_errno().': '.mysql_error();
    }
    else{
    $catsTemplate = readTemplate($dirTemplates.'cats.tpl');
    while($catInfo = @mysql_fetch_array($result)){
    $rowTemplate = readTemplate($dirTemplates.'catsrow.tpl');
    $num_sql = mysql_query("SELECT COUNT(*) AS num FROM $tablePics WHERE catid = '".$catInfo['id']."' AND vis = '1'");
    $num = @mysql_fetch_array($num_sql);
    $arr_cats[0] = array('{!pic}' => htmlLink('', 'catid='.$catInfo['id'], htmlImg($dirSmallPics.$catInfo['filename'], '')));
    $info = ''.stripslashes($catInfo['catname']).' (';
    $num['num'] == 1 ? $info .= $num['num'].' Pic' : $info .= $num['num'].' Pics';
    $info .= ')
    Beschreibung:
    '.stripslashes($catInfo['catdesc']);
    $arr_cats[1] = array('{!info}' => $info);
    $parse = ap_parse($rowTemplate, $arr_cats);
    $t .= $parse;

    }


    }



    $arr[] = array('{!html}' => $t);
    $output = ap_parse($catsTemplate, $arr);
    }
Ich möchte der Variablen $t </td><td> anhängen und bei jeder dritten Ausgabe </tr><tr><td> .

l.G Walter

Hussl 23.07.2004 10:03

Also ich hab jetzt von PHP nicht die Ahnung, aber du musst wahrscheinlich einen Zähler mitlaufen lassen und dann mit der Modulo-Funktion schauen, ob es durch 3 (oder wieviele Bilder auch immer) teilbar ist. Wenn dem so ist, dann hängst du halt ein "<tr><td>" an.
Nach jedem Schleifendurchlauf musst du natürlich den Zähler um eins erhöhen...

Ausserdem: die tags </tr> und </td> sind optional. ich wusste das bis vor einiger zeit auch nicht, aber ich finde es viel sympathischer ohne diese end-tags... Nur so am rande.

T.dot 23.07.2004 12:42

Eigentlich wäre interessant zu wissen, welches Templatesystem du verwendest und wie der Template Sourcecode aussieht. Außerdem wäre es vielleicht sinnvoll wenn du den Sourcecode im Forum als PHP Block formatieren würdest (zwecks lesbarkeit).

Die Antwort von Hussl wird wohl nicht so leicht funktionieren, da du ja die Tabelle erst im Template erstellen wirst. Du könntest zwar den ganzen HTML Source in PHP kreieren, das vernichtet aber die Sinnhaftigkeit eines Templates.

Wenn es dein Templatesystem unterstüzt müsstes du zwei Schleifen ineinander verschachteln, die immer drei Datensätze nebeneinander plaziert...

mfg Thomas


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:05 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag