Met het hier onderstaande stukje script krijg ik nu het volgende resultaat :


Heren: H1 | H2 | H3 | H4 | H5 |
Dames: D1 | D2 | D3 | D4 |
Jeugd: JB1 | JB2 | MC1 | MC2 | CMV5 | CMV6 |

Ik probeer nu alleen al een tijdje uit te zoeken om het laatste scheidingsteken ( | ) aan het einde van de loop niet te echoen, maar helaas tot op heden zonder resultaat. Heeft een van jullie een hint in welke richting ik het zou kunnen vinden?

$tabel = mysql_query("SELECT Teamgroep FROM teamgegevens GROUP BY Teamgroep ORDER BY ID");
if ($tabel && mysql_num_rows($tabel) >= 1)
{
echo ' <div class="tb">' . "\n";
while ($rij = mysql_fetch_array($tabel))
{
echo ' <div class="tb_l">'.$rij['Teamgroep'].':</div>' . "\n";
echo ' <div class="tb_r">' . "\n";
$res = mysql_query("SELECT Teamkort FROM teamgegevens WHERE Teamgroep = '".$rij['Teamgroep']."'");
if ($res && mysql_num_rows($res) >= 1)
{
while ($row = mysql_fetch_array($res))
{
echo ' <a href="#'.$row['Teamkort'].'">'.$row['Teamkort'].'</a> | ' . "\n";
}
}
echo ' </div>' . "\n";
}
echo ' </div>' . "\n";
echo ' <div class="clear"></div>' . "\n";
}
Je kunt dit doen door bijvoorbeeld een variabele $first te maken, die je eerst instelt op TRUE. Je controleert bij het echo'en van de | of het de eerste keer is dat de loop wordt gemaakt (if($first == TRUE)), zo ja: geen |, zo nee: wel een | . In de eerste loop stel je dan ook $first op FALSE in.

Even snel erin verwerkt:

$tabel = mysql_query("SELECT Teamgroep FROM teamgegevens GROUP BY Teamgroep ORDER BY ID");
if ($tabel && mysql_num_rows($tabel) >= 1)
{
echo ' <div class="tb">' . "\n";
while ($rij = mysql_fetch_array($tabel))
{
echo ' <div class="tb_l">'.$rij['Teamgroep'].':</div>' . "\n";
echo ' <div class="tb_r">' . "\n";
$res = mysql_query("SELECT Teamkort FROM teamgegevens WHERE Teamgroep = '".$rij['Teamgroep']."'");
if ($res && mysql_num_rows($res) >= 1)
{
$first = TRUE;
while ($row = mysql_fetch_array($res))
{
if($first == TRUE){echo ' | ';}
echo ' <a href="#'.$row['Teamkort'].'">'.$row['Teamkort'].'</a>' . "\n";
$first = FALSE;
}
}
echo ' </div>' . "\n";
}
echo ' </div>' . "\n";
echo ' <div class="clear"></div>' . "\n";
}
Hej bedankt! Dat is wat ik zocht. Kleine verbetering op je snelle verwerking :

if($first == FALSE){echo ' | ';}

Geeft het goede resultaat.

Reageren