Ik heb een datumveld in mijn database waarin ik een (uiteraard) datum wegschrijf. Dit doe ik als volgt:
<?php
$sql = "INSERT INTO agendav2
(datum)
VALUES
('".$_GET['jaar']."-".$_GET['maand']."-".$_GET['dag']."')";
?>
$_GET['jaar']."-".$_GET['maand']."-".$_GET['dag'] is het volgende formaat als de datum vandaag zou zijn:
2007-5-2
Deze schrijft hij weg als :
2007-05-02, das dus ook goed
Maar:
Als ik nu op een datum de datumwaarden in GET wil vergelijken in de data in mijn database mis ik dus in mijn GET-vars de nullen... Hoe kan ik dan tóch vergelijken? Ik snap niet veel van hoe te werken met DATE functies in SQL... wie kan mij hiermee helpen?
Ik heb het nu zo gedaan:
<?php
$laatste = mktime (0,0,0,$_GET['maand'],$dayNum,$_GET['jaar']);
$datumsql = strftime($_GET['jaar']."-%m-%d", $laatste);
$sqlafspr = "
SELECT
*
FROM
agendav2
WHERE
datum LIKE '".$datumsql."' AND
soort LIKE 'verjaardag' AND
LOWER(toevoeger) LIKE '".strtolower($_SERVER['REMOTE_USER'])."' OR 'iedereen'
" or trigger_error(mysql_error());
$rsafspr = mysql_query($sqlafspr) or trigger_error(mysql_error());
while ($rowafspr = mysql_fetch_array($rsafspr)) {
echo '<td>'.$rowafspr['afspraak'].'</td>';
}
?>
Dit zou moeten werken, maar dat doet het dus niet.. :)
Wat doe ik verkeerd?
Ik heb de datum al goed geconverteerd, daar geeft hij nu ook geen problemen meer mee :) maar de rest van de queryis geloof ik niet goed, en ik weet niet wát er dan verkeerd is.. :)