Hallo,

Ik heb een stukje code, waarbij het systeem verschillende rijen onder elkaar wegschrijft. Maar nu wil ik dat er eerst 3 kolommen naast elkaar worden gemaakt en dan de volgende rij pas.

Nu dus:
Item 1
Item 2
Item 3
Item 4
Item 5
Item 6

Moet worden:
Item1 Item2 Item3
Item4 Item5 Item6

Code:

<table cellspacing="3" cellpadding="0" border="0" width="100%">
<?php
#---------- schrijf de rijen
$query_overzicht = mysql_query ("SELECT * FROM producten ORDER BY id ASC");
while ($row = mysql_fetch_array ($query_overzicht)) {
$row['prijs'] = "&euro;".number_format($row['prijs'], 2, ',', ',');
echo "<tr>
<td style=\"font-family:Arial; font-size:12px;\">
<b>".$row['bestelnummer']."</b>
<BR>
".$row['image']."
</td>
</tr>\n";
echo "<tr>
<td valign=\"top\">
".$row['prijs']."
</td></tr>\n";
echo "<tr><td valign=\"top\">
<input type=\"text\" name=\"product[".$row['id']."]\" id=\"product[".$row['id']."]\" value=\"0\" style=\"width:25px;text-align:middle;\" maxlength=\"2\" onKeyPress=\"return KeyCheck(this,event);\">\n";
echo "<a href=\"javascript:increase_value(".$row['id'].");\" title=\"Voeg een eenheid toe\"><img src=\"plus.gif\" border=\"0\" align=\"absmiddle\"></a>&nbsp;<a href=\"javascript:decrease_value(".$row['id'].");\" title=\"Haal er een eenheid af\"><img src=\"min.gif\" border=\"0\" align=\"absmiddle\"></a>\n</td>\n</tr>\n";
}
#----------
?>
<tr>
<td align="left" width="70%"><BR><input type="reset" value="Leeg de velden"></td><td align="right"><BR><input type="submit" value="Stap 2 | Besteloverzicht" name="subknop"></td>
</tr>
</table>

Bij voorbaat dank!
tellertje toevoegen

$teller = 1;
while {
<td>adsasd</td>
if ( $teller++ ==3 ) {
$teller =1
</tr>
}
}
Ik heb het nu zo, maar dan doet hij het nog niet goed:


<table cellspacing="3" cellpadding="0" border="0" width="100%">
<tr>
<?
$teller = 1;
while {
?>
<td>
<?php
#---------- schrijf de rijen
$query_overzicht = mysql_query ("SELECT * FROM producten ORDER BY id ASC");
while ($row = mysql_fetch_array ($query_overzicht)) {
    $row['prijs'] = "&euro;".number_format($row['prijs'], 2, ',', ',');
	echo "<tr>
			<td style=\"font-family:Arial; font-size:12px;\">
				<b>".$row['bestelnummer']."</b>
				<BR>
				".$row['image']."
			</td>
		  </tr>\n";
    echo "<tr>
			<td valign=\"top\">
				".$row['prijs']."
			</td></tr>\n";
    echo "<tr><td valign=\"top\">
				<input type=\"text\" name=\"product[".$row['id']."]\" id=\"product[".$row['id']."]\" 		value=\"0\" style=\"width:25px;text-align:middle;\" maxlength=\"2\" onKeyPress=\"return KeyCheck(this,event);\">\n";
    echo "<a href=\"javascript:increase_value(".$row['id'].");\" title=\"Voeg een eenheid toe\"><img src=\"plus.gif\" border=\"0\" align=\"absmiddle\"></a>&nbsp;<a href=\"javascript:decrease_value(".$row['id'].");\" title=\"Haal er een eenheid af\"><img src=\"min.gif\" border=\"0\" align=\"absmiddle\"></a>\n</td>\n</tr>\n";
}
#----------
?>
</td>
<?
if ( $teller++ ==3 ) {
$teller =1
?>
</tr>
<?
}
}
?>
<tr>
<td align="left" width="70%"><BR><input type="reset" value="Leeg de velden"></td><td align="right"><BR><input type="submit" value="Stap 2 | Besteloverzicht" name="subknop"></td>
</tr>
</table>
Kan iemand me aub helpen?
Wat gaat er precies fout? Met 'hij doet het nog niet goed' kan ik echt niets
vanwaar die terugkoppeling naar $teller = 1?
@ Crispijn: Op dit moment geeft hij niks weer. Hij geeft dus als het ware een lege pagina terug, zonder errors.

@ Wim: Ik weet niet waarom die terugkoppeling zo is, ik heb dit overgenomen van de vorige post van Sebas.
zet er even [ignore]
 en 
[/ignore] omheen.
done
die terugkoppeling zal er omheen zitten omdat je 3 kolommen per rij wilt. Opzich wel een goede oplossing.

Staat je error reporting aan? Staat er iets in de broncode? Het kan zijn dat door verkeerd gebruik van td's en tr's niks meer in je tabel wordt weergegeven. Ben benieuwd.
Mijn error reporting staat aan ja.. (ook al gecontroleerd dmv ff een ; weg te laten).

Dit komt uit mijn broncode:

<table cellspacing="3" cellpadding="0" border="0" width="100%">
<tr>
</tr>
...

Dus daar wordt je ook niet veel wijzer van.

Reageren