Hey mensen,

Ik heb een klein vraagje. Ik kom er zelf even niet uit, terwijl ik alles normaal toch wel weet te vindne met google :P

Ik wil data die ik uit een database haal graag automatisch goed laten weergeven.

Het makkelijkste om te omschrijven is denk ik door te laten zien wat ik heb:

<?php
$resultaat = mysql_query("SELECT * FROM tabel") 
or die(mysql_error());  

echo "<table border='1'>";
while($test = mysql_fetch_array( $resultaat )) {

	echo "<td>";
	echo $test['ID'];
	echo "</td>";

	}
echo "</table>";
?>


Op deze manier laat ie alle info van links naar rechts zien. Ik zou graag willen weten hoe ik het voor elkaar krijg om na bijvoorbeeld 3x TD door te gaan naar de volgende row.

Ja, ik ben nieuw hierin, en ik ben dankbaar voor elke hulp die ik vrijwillig krijg. :) Bedankt alvast!
Ik zie dat al de data na elkaar komt, je werkt niet met rijen of zo. Is het de bedoeling dat bijvoorbeeld per data omgewisseld wordt van kleur of wat bedoel je?
Ik neem aan dat je je gegevens ophaalt per rij;

<?php
echo '<table>';
while($test = mysql_fetch_array($resultaat))
{
echo '<tr>';
echo '<td>'.$test['ID'].'</td>';
echo '</tr>';
}
echo '</table>';
?>
Hey Jasper,

Ik zal het nog een keertje wat beter proberen uit te leggen

Stel ik heb 9 ID's, dan laat ie nu zien:

1 2 3 4 5 6 7 8 9

Ik zou graag willen weten hoe ik het voor elkaar krijg dat ie na bijvoorbeeld 3 keer doorgaat na de volgende row, oftewel:

1 2 3
4 5 6
7 8 9

Ben ik zo beter te begrijpen?

Thanks!
Arjan Kapteijn schreef op 21.04.2009 15:06
Ik neem aan dat je je gegevens ophaalt per rij;

<?php
echo '<table>';
while($test = mysql_fetch_array($resultaat))
{
echo '<tr>';
echo '<td>'.$test['ID'].'</td>';
echo '</tr>';
}
echo '</table>';
?>


Dit maakt opzich niet uit toch? Hoewel voor een ID per TD inderdaad een beetje raar staat.
Probeer te werken met een if-lus binnen de while normaal moet dit lukken. de 3 in de if-clause staat voor het aantal data binnen 1 row dat je wil. Laat me weten of dit werkt.

<?php
echo '<table>';
$i = 0;
echo '<tr>'
while($test = mysql_fetch_array($resultaat))
{
if($i<3)
{
echo '<td>'.$test['ID'].'</td>';
$i++;
}
else
{
echo '</tr>';
echo '<tr>';
echo '<td>'.$test['ID'].'</td>';
$i++;
}
echo '</tr>';
echo '</table>';
?>
Jasper:

Bedankt voor je tip, ik ga maar eens opzoek naar info over lussen! :)

In je code missen hier en daar wat tekens, nadat ik die had aangepast kreeg ik vreemd genoeg (in mijn ogen) dit:

1
23456789


Jou code + wat toegevoegde tekens: :P

<?php
echo '<table>';
$i = 0;
echo '<tr>';
while($test = mysql_fetch_array($resultaat))
{

      if($i<3)
      {
           echo '<td>'.$test['ID'].'</td>';
           $i++;
      }
      else
      {
           echo '</tr>';
           echo '<tr>';
           echo '<td>'.$test['ID'].'</td>';
           $i++;
      }
echo '</tr>';
echo '</table>';
}
?> 
De fout zat em erin, dat ik </tr> en </table> in de while had gezet. Met onderstaande code lukt het.


<?php
echo '<table>';
$i = 0;
echo '<tr>';
while($test = mysql_fetch_array($resultaat))
{

if($i<3)
{
echo '<td>'.$test['ID'].'</td>';
$i++;
}
else
{
echo '</tr>';
echo '<tr>';
echo '<td>'.$test['ID'].'</td>';
$i++;
}

}
echo '</tr>';
echo '</table>';
?>

Reageren