Datetime + 8 uur
Nu klopt deze tijd niet, en moet er 8 uur bij worden opgeteld. Hoe moet dit?
Bedankt! Het werkt nu.
Hoe komt het dat dat verschil van 8 uur er is? Staat de server soms ergens in een ander land, zeg Amerika? In dat geval is de oplossing van Ger wel leuk, maar krijg je een aantal weken per jaar dat het niet meer klopt. Die 8 uur is dan namelijk het resultaat van een andere tijdzone en de Amerikaanse 'daylight saving' (zomertijd/wintertijd) loopt niet gelijk met de Nederlandse. Wil je dan dus een 'echte' oplossing dan zal je de tijd moeten converteren naar de juiste tijdzone.
Het is inderdaad een gratis webhost van 000webhost, dus zit de server inderdaad niet in Nederland. Het gaat erom dat als er een unieke bezoeker komt, dat die geregristreerd wordt met een ID, IP en Datum. Nu je het zegt: Je kan wel eens gelijk hebben. Hoe voeg ik een tijdzone in? Ik wil dan gewoon de 'Amsterdamse'.
Code (php)
America/New_York is de timezone van de 000webhost servers, Europe/Amsterdam van jou. Je zet dus eerst de datum/tijd in een DateTime object met de tijdzone van de server, dan converteer je die naar je eigen tijdzone en vervolgens kan je de datum/tijd gebruiken zoals je maar wilt.
Koen Vlaswinkel op 21/07/2013 12:57:13:
Dit werkt helaas niet.
Erwin H op 21/07/2013 12:28:43:
Daar heeft php inmiddels een erg makkelijke DateTimeZone object voor:
America/New_York is de timezone van de 000webhost servers, Europe/Amsterdam van jou. Je zet dus eerst de datum/tijd in een DateTime object met de tijdzone van de server, dan converteer je die naar je eigen tijdzone en vervolgens kan je de datum/tijd gebruiken zoals je maar wilt.
Code (php)
America/New_York is de timezone van de 000webhost servers, Europe/Amsterdam van jou. Je zet dus eerst de datum/tijd in een DateTime object met de tijdzone van de server, dan converteer je die naar je eigen tijdzone en vervolgens kan je de datum/tijd gebruiken zoals je maar wilt.
Zoals jij het zegt, lijkt het mij te werken, alleen nu is het probleem, dat ik deze niet echo, maar uiteindelijk in een tabel zet.
Vervang de echo door bijvoorbeeld $tijd = en je kan met $tijd doen en laten wat je wilt.