February 28th, 2000, 09:22 AM
I'm creating a simple intranet application with PHP/mySQL. In this application, I have a form: in this form there are fields with dates. In belgium, dates are stored in the form dd/mm/yyyy. MySQL requires the dates to be stored as yyyy-mm-dd. Users can change the fields manually. Some use dd/mm/yy others d/mm/yy etc... When I update my tables, the date values are all wrong of course. One solution is to make a two digit field for the days, a two digit field for the month... (and use select boxes) but this is more work Does anyone know how an elegant way to convert "european (belgian) dates" to the required yyyy-mm-dd ?
March 3rd, 2000, 08:39 AM
I thought about two ways to do this:
The first is this:
$standard_date = ereg_replace( "(..).(..).(....)", "2-1-3", $belgium_date );
This is more "elegant" and does all in a single instruction, but do not work if the user insert dates with a non-fixed format (i mean,the date 02/01/1999 can be written also 2/1/99).
Instead you can use:
list( $day, $month, $year ) = split( '/', $belgium_date );
$standard_date = $year + "-" + $month + "-" + $day;
this gives you also the three variables that you can compose as you like. Also this will work even if the user enters dates using a non-fixed format.
I have not tested it, but i'm pretty sure they're right.
Hope it helps,
nice example, but it doesn''t work !!
now this function count all dates from
months and days and years together.
for instance :
$standard_date is her 2014 !! ;-)
who has a proper working example ??
at first look i thought it would work,
but tested it and it doesn't !
Jan The Netherlands.
i am used to other languages,
and replied to quickly,
the "+" must be a "." that's what's wrong
in the example :-))
$year + "-" + $month + "-" + $day;
sorry for my earlier remark, but
now this example is complete and works
for all people :-)