Date functie werkt niet goed
$sql="select datum as xxx,
DAYOFWEEK(datum) as dag,
date_format(datum,'%e') as toondatum,
date_format(datum,'%m') as toonmaand,
voorg.omschrijving,
hoofdg.omschrijving,
nag.omschrijving,
voorg.plaatje,
hoofdg.plaatje,
nag.plaatje
from Dagmenu dm,
Gerecht as voorg,
Gerecht as hoofdg,
Gerecht as nag
where datum > date_sub(now(),interval 1 day)
and ((voorg.id=dm.voorgerecht_id
and hoofdg.id=dm.hoofdgerecht_id
and nag.id=dm.nagerecht_id )
or (voorg.id=dm.overig_id
and hoofdg.id=dm.overig_id
and nag.id=dm.overig_id ))
order by datum asc limit 0,50";
$result=mysql_query($sql);
Nu wil ik graag dat alleen de dagmenu's uit de db komen die voldoen aan de variabelen $jaar en $week
Dus dat er niet vanaf vandaag maar dat er een preciese week opgehaald wordt.
Bijvoorbeeld $jaar = 2007 $week = 20
Weet iemand hoe dit kan? Ik kom e rniet uit
Tip: Ga de boel overzichtelijker noteren door upper en lower case te gebruiken voor SQL en de tabel/kolom namen:
Tabel- en/of kolomnamen schrijf je uitsluitend in lowercase, dan krijg je nooit problemen door bv. een ander besturingssysteem van de database.
En let ook even op het inspringen.
Volgens mij staan de voorwaarden er duidelijk in
where datum > date_sub(now(),interval 1 day)
and ((voorg.id=dm.voorgerecht_id
and hoofdg.id=dm.hoofdgerecht_id
and nag.id=dm.nagerecht_id )
or (voorg.id=dm.overig_id
and hoofdg.id=dm.overig_id
and nag.id=dm.overig_id ))
order by datum asc limit 0,50";
$result=mysql_query($sql);
alleen de eerste regel daarvan moet aangepast worden
Quote:
En waar staat deze voorwaarde dan in de query?Bijvoorbeeld $jaar = 2007 $week = 20
De voorwaarden waar jij op wijst, zijn voornamelijk de foreignkeys. Die zou ik persoonlijk echt noteren als een JOIN, dat is een stuk duidelijker.