In mijn databasezien mijn records er zo uit
-10-11-2007
-12-02-2008
Nu wil ik een pagina maken waar alle datums opkomen die reeds voorbij zijn en degene die nog moeten komen.
Kan iemand me even helpen met de sql?

Niels
Als je datums zo in de database staan, dan hebben ze een verkeerd format. En zitten ze dus blijkbaar niet in een DATE of DATETIME veld. Dan heb je dus een probleem.
ja ik heb ze er zelf laten inzetten door een textbox dus mss even een selectbox maken ik in date formaat?
Het maakt niet uit hoe je het doet, als je maar zorgt dat de datum in het formaat yyyy-mm-dd in een DATE veld in de database gestopt wordt. Data in andere formaten dan dit ISO formaat zijn geen data en daar kan de database dus ook helemaal niets mee!
Ps. Mocht je MySQL gebruiken, dan zul je in PHP moeten controleren of de datum wel een datum is. Het formaat yyyy-mm-dd maakt namelijk nog geen datum, 2008-02-30 bestaat namelijk niet. checkdate() zal hier een error op geven, MySQL geeft standaard geen foutmeldingen op onmogelijke datums.
ik heb het script herschreven en omgezet naar: yyyy-mm-dd
hooe kijk ik nu of deze datum reeds geweest is?

bedankt
SELECT * FROM tabelnaam WHERE datum < CURRENT_DATE()

Zie verder de datum- en tijdfuncties van jouw database

SELECT
	datum
FROM
	tabel
WHERE
	datum < NOW()
Nog een beetje uitleg over de verschillende queries: CURRENT_DATE() kijkt uitsluitend naar de datum, NOW() kijkt naar de datum en tijd, tot op de seconde nauwkeurig.
oke bedankt iedereen voor de hulp dit is ook weer opgelost!

Reageren