PHP gevorderde |
|
Hallo mensen,
Ik ben een volledige website met TemplatePower aan het maken.
Nu ben ik tegen zoiets vreemds aangelopen, ik krijg de fout maar niet gevonden. Ik ben een formulier aan het maken waarbij mensen een optreden kunnen inplannen en meerdere artiesten kunnen opgeven in de agenda.
Ik zal eerst de situatie laten zien, en dan vertel ik het probleem. Dit is het gedeelte uit mijn .tpl. Hierin worden alle artiesten uit de database geladen en in een select gestopt. Daarnaast wordt in een vorig formulier aangegeven hoeveel artiesten ingevoegd dienen te worden, dit wordt dan ook automatisch gedaan. Zo ziet mijn .tpl eruit waar artiesten uit gekozen kunnen worden:
<div class="agbasic" style="width: 580px; margin-left: 50px;">
<center><b>
<font style="color:#408080;">Artiesten</font></b></center>
<br /><center>
<table border="0" width="550px;">
<tr>
<td width="150px"><center><b>Artiest</center></b></td>
<td width="30px"><b><center>Begint</center></b></td>
<td width="30px"><b><center>Eindigd</center></b></td>
<td width="75px"><b><center>Optionele info</center></b></td>
</tr>
<!-- START BLOCK : Inputs -->
<tr>
<td width="150px"><Select name="{Inputname}" style="width: 200px;">
<!-- START BLOCK : Artist -->
<option value="{Id}">{Artistname}</option>
<!-- END BLOCK : Artist -->
</select>
</td>
<td width="30px">
<input name="{beginid}" size="6">
</td>
<td width="30px">
<input name="{eindid}" size="6">
</td>
<td width="95px">
<input name="{infoid}" size="28">
</td>
</tr>
<!-- END BLOCK : Inputs -->
<div class="agbasic" style="width: 580px; margin-left: 50px;"> <table border="0" width="550px;"> <!-- START BLOCK : Inputs --> <td width="150px"><Select name="{Inputname}" style="width: 200px;"> <!-- START BLOCK : Artist --> <!-- END BLOCK : Artist --> <input name="{beginid}" size="6"> <input name="{eindid}" size="6"> <input name="{infoid}" size="28"> <!-- END BLOCK : Inputs -->
Hij maakt het aantal selects aan voor het aantal artiesten. Dit werkt prima.
Dit is de code waarmee ik dit genereer:
for ($i=1; $i<=$trimpost; $i++){
$tpl->newBlock("Inputs");
$qry = "SELECT Id, Artiestnaam FROM artists";
$rs = mysql_query($qry) or die ("Error while retrieving artistlist: ". mysql_error());
while($aarr = mysql_fetch_assoc($rs)){
$tpl->newBlock("Artist");
$tpl->assign(array("Id" => $aarr["Id"],
"Artistname" => $aarr["Artiestnaam"]));
}$tpl->gotoBlock("Inputs");
$tpl->assign(array("Inputname" => "Artiest".$i,
"beginid" => "Begin".$i,
"eindid" => "Eind".$i,
"infoid" => "Info".$i));
$tpl->gotoBlock("_ROOT");
for ($i=1; $i<=$trimpost; $i++){ $tpl->newBlock("Inputs"); $qry = "SELECT Id, Artiestnaam FROM artists"; $tpl->newBlock("Artist"); $tpl->assign(array("Id" => $aarr["Id"], "Artistname" => $aarr["Artiestnaam"])); }$tpl->gotoBlock("Inputs"); $tpl->assign(array("Inputname" => "Artiest".$i, "beginid" => "Begin".$i, "eindid" => "Eind".$i, "infoid" => "Info".$i)); $tpl->gotoBlock("_ROOT");
Trimcode is het aantal inputs die gegenereerd dienen te worden.
Nu post ik dit bovenstaand formulier, en krijg ik de waarde uit van mijn artiestid prima terug.Maar de begintijd wordt afgekapt. Ik krijg alleen maar het eerste cijfer te zien als ik mijn post echo, terwijl ik er steeds 4 in het formulier zet.
Heeft iemand enig idee hoe dit kan? Als ik als begintijd dus 11:30 aangeef (of zelfs 1130) dan zie ik alleen maar een 1 staan ....
Weet iemand hoe dit kan?
|