Hej! Generellt skulle jag sätta en flagga i databasen som flaggas upp när artikeln redan visats. Flagga av den när ett annat bestämt villkor anger att artikeln skall visas igen. Det var nog en rätt bra lösning... Om man nu skulle vara så väldigt orolig för det kan man väl lägga till ett fält för sommar och vintertid. Ja, om man skulle vara så hemskt orolig ;) När en sidladdning räknats sparar du datum och tid för detta. Om du lägger in en villkorsats som endast är sann en ggr/år (månaden då det är dags att vrida tillbaks klockan). När villkoret är sant kontrollerar du via ett nytt villkor timman då vi ställer om klockan så att räkningen inte redan utförts en timma framåt i tiden. Varför inte alltid spara tiden i UTC? Då kommer du aldrig ha några problem. Tänk om du hostar en websida som används av människor från andra sidan jorden, skall deras statisitk då baseras på serverns lokala klocka... verkar otroligt korkat. Använder man sig av UTC när man sparar data blir det aldrig några problem... Hade ett litet problem själv angående sommar och vintertid... egentligen inte relaterat till denna tråd men jag tänkte bara nämna den som kuriosa. Frågan är ju egentligen ganska enkel. Det gäller ju bara att definiera vad som är vad. Men om man har nått script som lägger till en bild/whatever var 10;e minut med ett datum. Och sen en sida som ska visa dom 6 senaste bilderna. Jovisst, men problemet är ju egentligen inte hur man ska lösa det, utan definitionen av "var 10:e minut". Annars skulle man ju kunna bygga allting på UTC om man vill istället Om inte UTC ändrar mellan sommar och vintertid är det ju det bästa valet...Sommar/vintertid och datum i program/databaser
Stod just i duschen och kom att tänka på en liten sak...
Vi ändrar ju mellan sommar och vinertid, men vad händer med data i databaser som är beroende av tiden?
Till exempel:
Jag har en databas med artiklar som ska visas kl 02:30. Det är dags att ändra till vintertid (det är väl då man för bak klockan en timme vid 03:00? Har ingen koll ;) ) och datorn gör detta automatiskt kl 03:00.
Det borde ju då betyda att artikeln redan visats i en halvtimme, tas sedan bort och visas igen efter en halvtimme? :)
Just i sådana fall är det nog inte så farligt eftersom det bara är en visning, men om man har en statistik funktion som lagrar sidladdningar, och en besökare laddar en sida kl 02:59:59. Nästa sidladdning blir då 02:xx:xx igen, vilket kan ställa till med problem...
Har någon annan tänkt på samma sak eller kanske någon som känner till någon lösning? :)
Mvh,
ThomasSv: Sommar/vintertid och datum i program/databaser
Sv:Sommar/vintertid och datum i program/databaser
Men hur skulle man göra i sådana fall då man räknar sidladdningar och sparar datum och tid för det?Sv: Sommar/vintertid och datum i program/databaser
Sv:Sommar/vintertid och datum i program/databaser
Det är jag inte nu, men det är ett problem som många inte tänker på...
Om man absolut ska ha det mest exakta svaret i t.ex. statistik måste man ta hänsyn till detta...
När vi går till sommartid kommer det bli en timmes lucka i statistiken, vilket kan vara katastrofalt för vissa ;)Sv:Sommar/vintertid och datum i program/databaser
Så länge villkoret är falskt räknas dina sidladdningar men när klockan vridits tillbaka och eventuella sidladdningar under den gångna timman finns lagrade kommer villkoret vara sant och räkningen för sidladdningarna ignoreras.
Kanske???Sv: Sommar/vintertid och datum i program/databaser
http://aa.usno.navy.mil/faq/docs/UT.htmlSv: Sommar/vintertid och datum i program/databaser
En av mina kunder har sin webbplats på en amerikansk server (California, PST/PDST).
Min kund är australiensk med huvudsaklig verksamhet här i Queensland och ville förståss ha tiden i AEST. Queensland byter inte till sommartid så det enda jag då behövde tänka på var att när man ändrar tid i Californien (dvs PST ändras till/från PDST) så fick jag dra bort/lägga till en timma.
För några månader sen så ville samma kund att klockan skulle stämma även nere i New South Wales och Victoria... där dom byter till/från ADST... Detta blev lite mer besvärligt eftersom när man flyttar fram klockan en timma på norra halvklotet så flyttar man tillbaka klockan en timma här nere på södra klotet, och vice versa. Lite tjorvigt var det, men jag fick det att funka efter lite huvudbry... ;)
Tur att AEST och PST byter tid på samma söndagar under året...Sv:Sommar/vintertid och datum i program/databaser
Sen att själva definitionerna är knepiga är ju en annan sak. Alltså: så fort man bestämmer sig för hur man räknar grejer i exempelvis statistiken, så är det ju enkelt att göra den beräkningen.
Om man till exempel räknar hits på en sida, så är ju frågan vad statistiken vill säga. Är det inom vilka intervall på dygnet folk är inne på sidan?
Men under själva övergången till sommartid är det ju så att själva dygnet faktiskt ändras, och i och med det så förändras sannolikt även människors vanor just då, för att anpassa sig till den "nya tiden".Sv: Sommar/vintertid och datum i program/databaser
Så mellan 02 och 03 så finns då dessa bilder:
bildan.jpg, 2005-05-13 02:00
bildbn,jpg, 2005-05-13 02:10
bildcn.jpg, 2005-05-13 02:20
bilddn.jpg, 2005-05-13 02:30
bilden.jpg, 2005-05-13 02:40
bildfn.jpg, 2005-05-13 02:50
Sen när klockan slår om till 03:00 och blir 02:00 igen. Då blir det ju 6st dubletter, eller? För mig ser det ut som ett problem...Sv:Sommar/vintertid och datum i program/databaser
Är det en bild som ska visas under ett givet tidsintervall ("5:e juli 06:20 till 06:30"), eller innebär det att man efter 10 minuters visande av en bild ska byta?
Är det den första definitionen så är din lösning korrekt, det ingår i själva defionitionen att vissa bilder kommer visas två gånger. Är det den andra så måste man istället välja ett sätt att lösa det. Eftersom jag knappast är någon hejare på databaser vet jag inte det snyggaste eller mest effektiva.
Man kan tänka sig en tidsordning mellan bilderna, och en flagga om en bild är visad. Eller så kan man använda en flagga för om en bild ska visas på sommartid eller vintertid, etc.Sv: Sommar/vintertid och datum i program/databaser
Sv:Sommar/vintertid och datum i program/databaser
Det enda man måste göra är att tänka på att hela tiden konvertera till lokala tiden...