artfiction Posted August 28, 2006 Report Share Posted August 28, 2006 Formā izmantoju Now() funkciju, datu bāzē ir Datetime Problēma tajā, ka serveris atrodas USA un līdz ar to arī datumu ar stundām un minūtēm izmet attiecīgi, kāds šobrīd ir USA. Kas pa kodu kurā vietā ir jāpievieto, lai datu bāzē ievietotos Latvijas laiks, nevis servera laiks - kad formā nospiests submit? Link to comment Share on other sites More sharing options...
Delfins Posted August 28, 2006 Report Share Posted August 28, 2006 (edited) nus, a kur problēmā piešķirt SQL-ā `latvisko laiku` ? $curTime = date('YYYY-mm-dd HH:MM:ss',time() -/+ ... ); // ieliec kadu vajag insert into bla(laiks) values(\''.$curTime.'\'); a vispār ir labāk, glabā tā kā ir uz servera (Unix timestamp) un pie outputa izvadi vajadzīgo laiku pēc timezones date( 'formāts', $laiksNoDB + $currentTimeZone ); Edited August 28, 2006 by Delfins Link to comment Share on other sites More sharing options...
v3rb0 Posted August 28, 2006 Report Share Posted August 28, 2006 vislabāk laikam ir gmt laiku glabāt un pie rādīšanas likt klāt timezones offsetu- atvedīsis serveri uz latviju, neko vairs nesapratisi, kas ir ar asv, kas ar latvijas laika zonas laiku saglabāts. Link to comment Share on other sites More sharing options...
Delfins Posted August 28, 2006 Report Share Posted August 28, 2006 nu tāpēc jau datubāzē neko nedrīkst mainīt, lai liek iekšā kā līdz šim... Offsets nav jāliek, tas ir katram lietotājam individuāli... un reāls laiks ir vienmēr izrēķināms Link to comment Share on other sites More sharing options...
artfiction Posted August 28, 2006 Author Report Share Posted August 28, 2006 nus, a kur problēmā piešķirt SQL-ā `latvisko laiku` ? $curTime = date('YYYY-mm-dd HH:MM:ss',time() -/+ ... ); // ieliec kadu vajag insert into bla(laiks) values(\''.$curTime.'\'); a vispār ir labāk, glabā tā kā ir uz servera (Unix timestamp) un pie outputa izvadi vajadzīgo laiku pēc timezones date( 'formāts', $laiksNoDB + $currentTimeZone ); Man tas pirmais variants laikam ir piemērotāks, jo tas laiks ir svarīgs tieši tuvākajā dienā, lai es cilvēkam varētu laicīgi atbildēt (piemēram, 24h laikā pēc info saņēmšanas). Tā aizdomājos, ja šobrīd skatos db kas man tur ienācis, tad arī ir ņemšanās ar tām 8 stundām, bet tiko kā ielikšu skriptiņu, lai sūtās man uz konkrētu epastu, tā vismaz redzamā daļa atrisināsies (jo parādās jau, kad vēstule ir saņemta). P.S. Kaut kas man tur nesanāk ar to mīnusošanu. a tur iekš tā time() nevajag norādīt ko es gribu mīnusot? Link to comment Share on other sites More sharing options...
v3rb0 Posted August 28, 2006 Report Share Posted August 28, 2006 echo date('Y-m-d H:i:s',strtotime('-8 hours')); Link to comment Share on other sites More sharing options...
artfiction Posted August 28, 2006 Author Report Share Posted August 28, 2006 echo date('Y-m-d H:i:s',strtotime('-8 hours')); ideāli, cik patīkami ieraudzīt pareizo laiku (pat izrādījās, ka jāpieliek nevis jāatņem 8stundas :) ) Paldies v3rb0 un Delfins par palīdzību šajā jautājumā! Link to comment Share on other sites More sharing options...
Delfins Posted August 28, 2006 Report Share Posted August 28, 2006 pastudē GMT laiku un zonas, nav svarīgi, kurš laiks tev ir iekš DB, svarīgi ir tas, ka iekš DB ir vienas zonas laiks.. http://en.wikipedia.org/wiki/Greenwich_Mean_Time Link to comment Share on other sites More sharing options...
artfiction Posted August 28, 2006 Author Report Share Posted August 28, 2006 pastudē GMT laiku un zonas, nav svarīgi, kurš laiks tev ir iekš DB, svarīgi ir tas, ka iekš DB ir vienas zonas laiks.. http://en.wikipedia.org/wiki/Greenwich_Mean_Time Tā lietiņa jau ir skaidra, ka laiks ierakstās pēc GMT laika zonas un ja man serveris ir asv noteiktā daļā tad attiecīgi GMT +5 vai citā, ja latvijā tad GMT-2 Bet paldies par adresi, Labs resurss! P.S. Greenwich - laba vieta kur nofotografēties :D Link to comment Share on other sites More sharing options...
Recommended Posts