Re: something about dates in mysql

From: Date: Thu, 03 Mar 2011 10:30:16 +0000
Subject: Re: something about dates in mysql
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-311622@lists.php.net to get a copy of this message
Richard Quadling wrote:
On 3 March 2011 10:09, Webforlaget.dk <info@web-forlaget.dk> wrote:
I need help to know Why this dont work ? ------------------------------------------------------------- $thisdate =date("Y-m-d",mktime(0,0,0,$mth, $day, $year)); $sql = "SELECT id,case,startdate,enddate FROM table WHERE startdate<=$thisdate AND enddate>=$thisdate ORDER BY startdate"; ------------------------------------------------------------- The result should be an array whith open cases at $thisdate, but nothing appear. Is it something about dates in mysql ? Thanks for any advice. Best regards, Venlige hilsner Rolf Brejner
I think that dates in SQL statements need to be in the quotes as they are strings and not integers. So, try ... $sql = "SELECT id,case,startdate,enddate FROM table WHERE startdate<='$thisdate' AND enddate>='$thisdate' ORDER BY startdate"; I'm surprised you don't get an error.... Ah. As it stands, the SQL is something like ... WHERE startdate <= 2010 - 3 - 3 So, probably the actual test that is being executed is .... WHERE startdate <= 2004 Which, for a date stamp will never return anything sensible.
yes, and remember the DATE and FROM_UNIXTIME mysql functions too.

« previous php.general (#311622) next »