Hoe kan ik in mijn code opgeven dat er alleen de wedstrijden van dit jaar worden geladen. dus dit jaar 2008 en volgend jaar 2009 etc etc

Ik heb de volgende code:

code even weggehaald anders minder overzichtelijk
script staat verder naar ondere


Door in je query WHERE te gebruiken.
Dus bij de query op rij 19
$query = "SELECT datum, naam, lengte, start, finish FROM wedstrijden ORDER BY datum ASC";


Alleen hoe geef ik dan aan dat het om het huidige jaar moet gaan?
Ik dacht iets van NOW(Year)
Laat me raden, dat veld is niet van het type DATE?
WHERE YEAR(datum) = YEAR(CURDATE())
Is het niet beter een interval te doen ipv. het jaar? Je kunt nu niet meer zien op 1 januari wat vorige wedstrijden waren.
Nou moet ik wel zeggen dat je dit zeer slim hebt opgemerkt jurgen, ergens in de winterstop ben je ineens het hele overzicht kwijt (namelijk op 1-1-2009)

beter zou zijn om een seizoen een startdatum/ einddatum mee te geven (tabel seizoenen) en alleen de gegevens die binnen die data vallen mee te nemen. Dan krijg je een volledig seizoensoverzicht en kan je evt. later ook de eerdere seizoenen nog weer ophalen.

SELECT * FROM wedstrijden WHERE YEAR(datumveld) = CURRENT_DATE OR (CURRENT_DATE() - '1 year') INTERVAL - '1 month';


Weet niet of ie klopt (waarschijnlijk niet...)

maar ik zat zoiets te bedenken.
Het zijn wielren wedstrijden.
Dus het seizoen loopt maar tot ongeveer oktober/november

Wil bij de uitslagen wel een mogelijkheid om door de jaren heen te bladeren.
Zal is kijken of ik het werkend krijg

thx
Dus per jaar 1 seizoen. Een seizoen loopt nooit in 2 jaren door elkaar.
In dat geval:

<?php
if(!isset($_GET['jaar']){$_GET['jaar'] = date("Y");
$jaar = intval($_GET['jaar']);
$query = "
SELECT datum, naam, lengte, start, finish
FROM wedstrijden
WHERE YEAR(datumveld) == '".$jaar."'
OR YEAR(datumveld) == '".$jaar+1."'
ORDER BY datum ASC";
?>

pagina.php&jaar=2009 zal seizoen van 2009 openen etc.
Bij geen opgave (pagina.php) zal het huidige jaar geopend worden.

Reageren