phpbar.de logo

Mailinglisten-Archive

[php] PHPLIB: Template Problem...

[php] PHPLIB: Template Problem...

Hendrik 'rik' Frank rik_(at)_shorebreak.de
Sat, 13 May 2000 00:06:36 +0200


Hallo PHPler,

Ich komme nicht weiter mit einer Ausgabe per Template.
Normale Ausgabe geht, aber das ganze in einer Schleife klappt nicht,
obwohl ich es eigentlich gemacht habe wie in dem Docu-Beispiel.

Das Problem ist, dass PHP gar nichts ausgibt, obwohl Datensätze
vorhanden sind.
Die Templates kommen hier (gekürzt):

--- webdir.tpl ---
  <TD WIDTH="100%" BGCOLOR="#FFB400">
   <FONT COLOR="#000066" FACE="Arial, Helvetica, sans-serif"
SIZE="2"><B>
   <UL>
   <!-- BEGIN block -->
    {CAT}
   <!-- END block -->
   </UL>
   </B></FONT>
  </TD>
  <TD COLSPAN="3">
   <FONT FACE="Verdana, Arial, Helvetica, sans-serif">
    {TEXT}
   </FONT>
  </TD>

--- homepage.tpl ---
  <TD COLSPAN="4" VALIGN="TOP" BGCOLOR="#FFE16E"><BR>
   {CONTENT}
  </TD>


So jetzt kommt das script:
--- --- ---
/* db verbindung steht */
$query = "SELECT cat_name,cat_path,cat_descript FROM db_cat WHERE
cat_path=''";
$result = mysql_query($query);

/* aufrufen der template funktion usw... */
include($inc_path."template.inc");

$tpl = new Template($tpl_path,"remove");

/* news.tpl enthält keine platzhalter */
$tpl -> set_file(array("MAIN" => "homepage.tpl", "CONTENT" =>
"webdir.tpl", "NEWS" => "news.tpl" ));

/* der block in den die datensätze eingefügt werden sollen */
$tpl -> set_block("CONTENT","block","blocked");


/* creating the DB-result */
while($row = mysql_fetch_array($result)) {

 $out = "<LI><A
HREF=\"".$row["cat_path"].$row["cat_name"]."/\">".$row["cat_name"]."</A>:
";
 $out .= $row["cat_descript"]."</LI>\n";

 $tpl -> set_var(array("CAT" => $out));
 $tpl -> parse("block","blocked", true);
}

/* dann kommt noch ein set_var() aufruf, der aber 100% richtig
ausgeführt wird */
/* und zum schluß noch: */

$tpl -> parse("out", array("NEWS","CONTENT","MAIN"));
$tpl -> p("out");


-- DANKE!

Hendrik






php::bar PHP Wiki   -   Listenarchive