login  Naam:   Wachtwoord: 
Registreer je!
 Forum

php server tijd

Offline GroundZero - 18/11/2011 19:59
Avatar van GroundZeroLid Beste,

ik heb diverse artikelen in mijn database. per artikel is er een start en eind tijd.

nu wil ik het volgende weten. ongeacht waar de bezoeker vandaan komt, de tijd moet het zelfde zijn m.a.w. hij moet de tijd van mijn server pakken (waar ik de site host).

Hoe kan ik hierachter komen met PHP?

Ik wil uiteindelijk dus in een query kunnen zeggen:

selecteer het product welke tot dd-mm-jj datum
en tot 09:35 geldig is

Kan iemand mij vertellen hoe ik dit doe?

als ik nu doe:

  1. echo date("h:m:s");


dan zegt hij 07:45 terwijl het bij mij 19:47 is haha, dus het is geen NL tijd 

4 antwoorden

Gesponsorde links
Offline Ontani - 18/11/2011 20:22 (laatste wijziging 18/11/2011 20:22)
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
Je gaat dit enkel kunnen doen voor geregistreerde bezoekers, dit bijvoorbeeld in hun profiel de tijdsweergaven hebben geselecteerd. Voor alle andere bezoekers laat je best de GMT+1 tijd zien.

Zet dit dan ook onder aan de website. Alle tijden worden weergegeven in GMT+1.
Offline GroundZero - 18/11/2011 21:26
Avatar van GroundZero Lid kijk het is als volgt:

Ik voeg bijvoorbeeld 3 producten toe.
Product A dinsdag tot 00:00
Product B woensdag tot 00:00
Product C donderdag tot 12:00

Mijn PHP script moet nu elke keer kijken welke er aan de beurt is aan de hand van de tijd van de server. De beheerder woont in Nederlands, de tijd is bijvoorbeeld 21:25 maar als ik met PHP de datum opvraag krijg ik iets van 08:00 in de ochtend.

Ik moet dus weten hoe ik dit kan oplossen 

Ik wil dus graag ads kunnen toevoegen met een eind datum, na die datum moet hij automatisch de eerst volgende weergeven zeg maar.

Groetjes
Offline Martijn2008 - 18/11/2011 21:52
Avatar van Martijn2008 PHP beginner Je zou de producten met een timestamp in de database kunnen zetten. Het is verstandig om de server-klok gelijk te laten lopen met het Network Time Protocol. Bij het inserten van de producten of artikelen stuur je in je PHP code dan een timestamp mee.

  1. <?php
  2.  
  3. $myTime = time();
  4.  
  5. ?>


Op basis van die timestamp kun je selecties op de database uitvoeren. Voor het bepalen van de tijd zou je eventueel gebruik kunnen maken van het IP-script van XenoX. Op basis van de host-header kun je 'vaak' bepalen uit welk land het ip-adres zo ongeveer afkomsig is. Aan de hand daarvan zou je een een timezone kunnen selecteren indien deze niet bekend is.

Succes!
Offline Filip - 18/11/2011 23:05 (laatste wijziging 18/11/2011 23:07)
Avatar van Filip IRC guru Je kan ook simpelweg gewoon de setlocale gebruiken, en dan met functies die daar op rekenen (zoals strftime) de tijd achterhalen in het 24h systeem. Geen geknoei met users/timestamping bij de insert 

EDIT: Zoizo kan het makkelijk zijn om bij date H te gebruiken welke staat voor het uur in 24uur systeem, check op de site van php.net
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.226s