Hjælp til if() med datoer

Tags:    php mysql html css javascript

Hej UVere

Jeg er igang med et projekt og er stødt ind i et problem jeg ikke kan finde fejlen i?

Fold kodeboks ind/udPHP kode 


Kan i finde fejlen? :-o



4 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
dit problem er at du forsøger at se om tekst er over en dato

prøv at skriv: var_dump( $partydate ); og du vil se det er en string.

du kan prøve at kigge på functionen; strtotime, den kan lave en string om til en dato

ikke teste, men noget i den her stil.
Fold kodeboks ind/udPHP kode 




Ahhh..

Prøver følgende men det virker ikke:
Fold kodeboks ind/udPHP kode 


$PartyInfo['partyStartDate'] henter 31/04/2013



Indlæg senest redigeret d. 22.03.2013 02:09 af Bruger #17284


$PartyInfo['partyStartDate'] henter 31/04/2013


Note:

Dates in the m/d/y or d-m-y formats are disambiguated by looking at the separator between the various components: if the separator is a slash (/), then the American m/d/y is assumed; whereas if the separator is a dash (-) or a dot (.), then the European d-m-y format is assumed.

To avoid potential ambiguity, it's best to use ISO 8601 (YYYY-MM-DD) dates or DateTime::createFromFormat() when possible.




Grunden til at det ikke virker, er at du starter med datoen, efterfulgt af måned, og derefter år. Hvad du i stedet skal gøre, er at "vende det på hovedet", dvs. at du giver år først, derefter måned, og til sidst dag. Derved bliver din korrekt:

Fold kodeboks ind/udPHP kode 


Et andet forslag ville være, at du brugte PHPs indbyggede klasse DateTime, som har indbyggede funktioner til at tjekke disse ting for dig :)
Se yderligere her: http://php.net/manual/en/class.datetime.php



t