Ik heb momenteel een query die via een aantal joins waarden leest uit verschillende tabellen. Aan het eind zeg ik tegen deze waarden dat het id moet liggen tussen de 3 en de 10.

Wat ik nu graag wil is dat deze waarden terugkomen op de website. Dit is gedaan met een foreach loop. Echter worden nu alle waardes tussen 3 en 10 in één grote lijst gezet. Ik wil echter dat alles met de waarde 3 in een tabel komt. Daarna alle waardes met 4 in een appart tabel, enz.

Hebben jullie een idee waarmee ik dit het best kan doen?

Mijn foreach loop ziet er als volgt uit:

<?php


for ($i=0, $n=count( $this->rows ); $i < $n; $i++) {
$row = &$this->rows[$i];

}
?>

momenteel laat hij het volgende zien:

http://sandersdomein.nl/standen.html

Groep A dient nu in een tabel te komen met groep a. Daaronder een nieuw tabel met groep b , etc

Groet
in je loop met rijen:
<?php
$vorige = '';
if($vorige != $row['groepskolom'])
{
//invoegen kop tabel
echo '<table width="100%" border="0" cellspacing="0" cellpadding="0">';
...//je kolommen van de top

$vorige = $row['groepskolom']; //even zorgen dat $vorige weer goed staat)
}
?>
@TJVB: En waar sluit je de </table> dan weer?
@SanThe, was wat vergeten.
Als het goed is maakt dit het goed. (Kan hier niet testen)

<?php
$vorige = NULL;
//je kolommen van de top
$head = '<table width="100%" border="0" cellspacing="0" cellpadding="0">';
$end = '</table>';
if($vorige != $row['groepskolom'])
{
//invoegen kop tabel
if(!is_null($vorige))
{
echo $end;
}
echo $head;
$vorige = $row['groepskolom']; //even zorgen dat $vorige weer goed staat)
}
if(!is_null($vorige))
{
echo $end;
}
?>
mijn gehele code is:

<?php
  $odd=0;

  for ($i=0, $n=count( $this->rows ); $i < $n; $i++) {
  $row = &$this->rows[$i];


 ?>

<tr class="sectiontableentry<?php echo $odd + 1; ?>">
	<td height="20px" align="right">
		<?php echo $this->pagination->getRowOffset( $i ); ?>
	</td>

	<td height="20px">
		<?php echo $row->pool ;?>

	</td>

	<td height="20px" width="100px" align="center" >
	<b>
			<?php echo $row->team; ?>
	</b>
	</td>



	<td height="20px" width="20px" align="right">
		<b><?php echo $row->played; ?></b>

	</td>

	<td height="20px" align="right">
		<b><?php echo $row->points; ?></b>

	</td>


</tr>
<?php
$odd= 1 - $odd;
}
//endforeach;
?>

het moet dus zo zijn dat deze code herhaald wordt bij de verschillende groepen:

<tr class="sectiontableentry<?php echo $odd + 1; ?>">
	<td height="20px" align="right">
		<?php echo $this->pagination->getRowOffset( $i ); ?>
	</td>

	<td height="20px">
		<?php echo $row->pool ;?>

	</td>

	<td height="20px" width="100px" align="center" >
	<b>
			<?php echo $row->team; ?>
	</b>
	</td>



	<td height="20px" width="20px" align="right">
		<b><?php echo $row->played; ?></b>

	</td>

	<td height="20px" align="right">
		<b><?php echo $row->points; ?></b>

	</td>


</tr>

?>




zoals het nu op de site is, zijn alle groepen dus in één tabel bij elkaar .. hij moet dus gaan kijken of row->pool hetzelfde is als de voorgaande. is dit niet zo dan een nieuw tabel maken.

ik weet dus niet hoe ik dat moet gaan maken.

Reageren