Iterieren im Template

Iteration mit Template

Wiederholt sich eine Datenausgabe so hat man die Möglichkeit die Iteration so zu realisieren das man im HTML Template das Gerüst für z.B. einen Datensatz definiert hat und dieses dann in der erforderlichen Anzahl Durchläufe benutzt wird.
Nützlich für z.B. Gästebücher, Foren Einträge und alles was mehrfach vorkommt.

$templateCode=$this->cObj->fileResource($this->conf['templateFile']); 
$resultsTemplate=$this->cObj->getSubpart($templateCode,'###RESULTS###');
$resultSub=$this->cObj->getSubpart($templateCode,'###RESULT_SUB###');  
$fieldList = '';
    
$tabellenname="tx_extension_name";
                $seitenid=$GLOBALS["TSFE"]->id;
                $res=$GLOBALS['TYPO3_DB']->exec_SELECTquery(
                                                                           '*',#select
                                                                           $tabellenname, #from
                                                                           'deleted=0 AND pid="'.$id.'"', 
                                                                           $groupBy='',
                                                                           $orderBy='sorting',
                                                                           $limit='');

while($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {  
        $fieldList.= $this->cObj->substituteMarkerArray($resultSub, array(
         '###FIELD_TITLE###' => $row['projekttitel'],
         '###FIELD_VALUE###' => 'fieldvalue'));        
    }
PHP Code
<!-- ###RESULTS### -->
<div class="main">
        <!-- ###RESULT_SUB### -->
        <table border='1' width='650px' height='200px'>
            <tr><td rowspan='3'>###BILD###</td>
                  <td>###ADRESSE###</td>
                  <td>###LINKS###</td></tr>
            <tr><td colspan='2'>###TEXT###</td></tr>  
            <tr><td colspan='2'>###BROWSER###</td></tr>
       </table>    
        <!-- ###RESULT_SUB### -->
</div>
<!-- ###RESULTS### -->
HTML Template