mehrere Loops in einem vLibTemplate

lago

Mitglied
Hallo Leute,

ich habe folgendes Problem und hoffe ihr könnt mir dabei helfen, ich habe ein Template mit einem Formular in dem sich mehrere Auswahllisten befinden, befüllt werden die Listen über Loops, die befüllung der Arrays erfolgt über funktionen in einem dritten skript hier mal der code:


Komponente_new.php

<?
require_once "header.php";
$tmpl = new vlibTemplate('Templates/Komponente_tmpl.html');
$tmpl1 = new vlibTemplate('Templates/Komponente_tmpl.html');
$dbh=my_connect();
$komponente = db_query("SELECT * FROM komponente;");
$loopKomp=KompLoop($komponente);
$tmpl->setLoop('komp_loop', $loopKomp);
$lieferant = db_query("SELECT * FROM person WHERE Entwickler = 0;");
$loopPers=PersLoop($lieferant);
$tmpl->setLoop('pers_loop', $loopPers);
$tmpl->pparse();
my_disconnect($dbh);
?>

Templates/Komponente_tmpl.html

<table width="100%">
<tr>
<td width="33%"></td>
<td width="33%"valign="top"><h1>Komponenten</h1></td>
<td width="33%" align="right">
<a href="Hilfe.html" target="newWindow">?</a>
</td>
</tr>
<tr>
<td>
<form method="post">
Bitte wählen sie aus: <br>
<select name="auswahl_komp" class="Auswahl" size="15">
<option selected>----Komponenten----</option>
{tmpl_loop name="komp_loop"}
<option>{tmpl_var name='id'}{tmpl_var name='cut1'}{tmpl_var name='komp'}{tmpl_var name='cut2'}{tmpl_var name='zbn'}</option>
{/tmpl_loop}
</select>
</td>
</tr>
<tr>
<td valign="top" align="left"><br>
Komponentenbezeichnung: <br>
<input type="text" class="Feld" Name="newKompBez">
</td>
<td width="33%" align="left" valign="top"><br>
Sachnummer: <br>
<input type="text" class="Feld" NAME="newSn" maxlength="9">
</td>
<td valign="top" align="left">
Bemerkung:<br>
<textarea class="Feld" name="newBem"rows=3 cols=5>
</textarea>
</td>
</tr>
<tr>
<td align="left" valign="top"><br>
Bitte Wählen sie bitte aus:<br>
<select name="auswahl_ag" class="Auswahl" size="15">
<option selected>---Ausstattungsgruppen---</option>
</select>
</td>
<td valign="top" align="left"><br>
Bitte wählen sie bitte aus:<br>
<select name="auswahl_lief" class="Auswahl" size="15" multiple>
<option selected>---Lieferanten---</option>
{tmpl_loop name="pers_loop"}
<option>{tmpl_var name='idP'}{tmpl_var name='cut1P'}{tmpl_var name='nameP'}{tmpl_var name='cut2P'}{tmpl_var name='vNameP'}</option>
{/loop}
</select>
</td>
<td valign="top" align="left">
Hier wird ein Listing zur <br>Auswahl der Kompgruppe stehen
</td>
</tr>
<tr>
<td></td>
<td></td>
<td>
<input name="submit1" type="submit" class="Button" value="Senden">
<input name="submit2" type="submit" class="Button" value="Auswahl loeschen">
</form>
</td>
</tr>
</table>

functions.php:

function PersLoop($result){
$loopArray = array();
while($row=db_fetch($result)){
array_push($loopArray,
array(
'idP' => $row[ID],
'cut1P' => "----",
'nameP' => $row[Name],
'cut2P' => "----",
'vNameP' => $row[Vorname]
)
);
}
return $loopArray;
}

function KompLoop($result){
$loopArray = array();
while($row = db_fetch($result)){
array_push($loopArray,
array(
'id' => $row[ID],
'cut1' => "----",
'komp' => $row[Bezeichnung],
'cut2' => "----",
'zbn' => $row[ZB_Nummer]
)
);
}
return $loopArray;
}

jetzt gibt er mir allerdings eine parse error an, und ich finde den fehler trotz debuggen nicht


Gruss

Dominik
 
Sorry,

die zweite Initiierung in Komponente_new.php muss natürlich raus, ändert aber nix am Problem!


Gruss
Dominik
 
vLibTemplate

Okay hab den Fehler, man sollte den loop, den man mit {tmpl_loop name="loopName"} auch mit {/tmpl_loop} und nicht mit {/loop} beenden, sorry vielmals auch an den Betrieber wegen der Platzverschwendung, aber vielleicht hilft es ja mal jemand!
 
Zurück