PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Templates [while, include]


Kuka
29.07.2002, 23:41
$db = mysql_query("SELECT * FROM klist_sites");
while ($sites = mysql_fetch_array($db))
{
include("inc/body.inc");
}


body.inc sieht so aus


<tr>
<td>$sites[sitename]</td>
<td> </td>
</tr>


Nun bekomme ich "$sites[sitename]" statt dem Inhalt aus der Tabelle klist_sites. Hat da vllt jmd. eine lösung parat?


Felix Kaiser
29.07.2002, 23:45
Statt: $sites[sitename]

Einfach:

<?php echo $sites[sitename]; ?>

Kuka
29.07.2002, 23:55
Super, Vielen Dank für die schnelle Hilfe :)

TheCondor
30.07.2002, 00:35
das verstehe ich aber jetzt nicht,

es ist ja schon ein PHP Tag vorhanden und entweder muss vor den ganzen html tags ein echo oder in der inc/body.inc steht

?> bla bla bla <?php echo "$sites['sitename']"; ?> bla bla <?

sonst werden die html tags doch übersehen

Lord_Otter
30.07.2002, 06:52
Du musst in jeder PHP-Datei, die du schreibst, entweder das
<?php...?>, das <?...?>, das <X...X> oder das
<SCRIPT language="PHP" RUNAT="Server">...</SCRIPT> verwenden, auch, wenn die Datei ingecludet wird.
Außerdem, mal angenommen, das wäre nicht nötig, würde der Code zu einem Parse-Error führen, da PHP nicht die Befehler <tr>,<td>,</td>,</tr>,... kennt. Das müsste dann auch alles per echo oder per Heredoc-Systax gemacht werden:

<?php
echo <<<ZEILE
<tr>
<td>
$sites[sitename]
</td>
</tr>
ZEILE;
?>


So würde das gehen (ich meine natürlich die Include-Datei)