Goedemiddag,
Met de volgende code lees ik wedstrijden van dit jaar uit mijn database.En geef ik ze weer in een tabel
<?
$i = 0;
$maandarray=array('januari','februari','maart','april','mei','juni','juli','augustus','september','oktober','november','december');
$datumarray=array();
if(!isset($_GET['jaar'])){$_GET['jaar'] = date("Y");}
$jaar = intval($_GET['jaar']);
$jaar2 = $jaar + 1;
$query =
    "SELECT datum, naam, lengte, start FROM wedstrijden
WHERE YEAR(datum) = YEAR(CURDATE())
        ORDER BY datum ASC";
$result = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_assoc($result))
{
$datum=$row['datum'];
$datum2=explode("-",$datum);
$NLdate=$datum2[2]."-".$datum2[1]."-".$datum2[0];


if(in_array($datum2[1],$datumarray)){
}
else{
    if($datum2[1]<10){
    $curmonth=substr($datum2[1],-1);
    }
    else{
    $curmonth=$datum2[1];
    }
$curmonth=$curmonth-1;
?>
<tr>
    <td colspan="5" class="maand">
    <center><b><? echo $maandarray[$curmonth]; ?></b></center>
    </td>
</tr>
<?
}
if($i%2){
$kleur="#D5297D";
}
else{
$kleur="#F8F8F8";
}?>
<tr bgcolor='<?php echo $kleur; ?>'>
    <td class="datum1"><? echo $NLdate ?></td>
    <td class="naam1"><? echo $row['naam'] ?></td>
    <td class="lengte1"><? echo $row['lengte'] ?>km</td>
    <td><? echo $row['start'] ?></td>
    </tr>
<?
$datumarray[]=$datum2[1];
$i++;
}
?>
</table>


Nu zou ik willen als hij de naam van de wedstrijd uitleest meteen een link aanmaakt ( naar een andere pagina )waar een soort historie over de vorige wedstrijden die daar gereden zijn word geplaatst. Dus alle uitslagen die diegene daar gereden heeft.

Dus als voorbeeld. Diegene heeft 4 keer de ster van zwolle gereden ( 2001, 2003, 2007 en 2010 )Nu wil ik dat ik in mijn programma/uitslagen op de naam van de wedstrijd klik en daarmee een overzicht krijg van die wedstrijden.

Kan iemand mij op weg helpen?
Heb het werkend gekregen.
Maar nog een klein vraagje:
Als ik bijvoorbeeld de uitslagen van de wedstrijdnaam Schijndel opvraag krijg ik alleen de wedstrijden van schijndel maar als de wedstrijd bijvoorbeeld als Ronde van Schijndel in de database staat krijg ik die niet bij het lijstje.Is er ook nog een aanpassing zodat ik die er dan ook bij krijg?
Hebben jullie nog tips aanmerkingen aan deze code?

<?php include('includes/config.php');?>
<table>
<?php
$sql =
    "SELECT datum, naam, lengte, uitslag FROM wedstrijden WHERE naam = '". mysql_real_escape_string($_GET['naam']) ."'
        ORDER BY datum ASC";
        
      
$result = mysql_query($sql) or die(mysql_error());
while ($row = mysql_fetch_assoc($result))
{
$datum=$row['datum'];
$datum2=explode("-",$datum);
$NLdate=$datum2[2]."-".$datum2[1]."-".$datum2[0];
?>
<tr>
<td><? echo $NLdate ?></td>
<td><? echo $_GET['naam']; ?></td>
<td><? echo $row['uitslag']; ?></td>
</tr> 
<?php
$datumarray[]=$datum2[1];
}
?>
</table>

Gaat je eens verdiepen in SQL, dan hoef je dit soort vragen ook niet te stellen.

En je code "belabbert" slecht.

Je zit met php te prutsen met php om een nl date format te verkrijgen terwijl je dit ook al kunt doen in je query zelf. Dus nog meer reden om je in SQL te verdiepen.
Codeer consequent. de ene keer <.? en de andere keer <.?php (beide zonder .)
Gebruik geen or die
Beveilig je gegevens voor je ze publiceert: $_GET['naam'] op regel 18.
Datum is aangepast: DATE_FORMAT(datum, '%d-%m-%Y') as datum

Hoe kan ik die $_GET['naam'] op regel 18 het beste beveiligen dan?

Reageren