2010-09-27 18 views
5

Convertirò tutta la data dell'ora & immessa dall'utente (ora locale) in UTC e la memorizzerò nel database. Quando visualizzi indietro, convertirò l'ora UTC nel loro fuso orario che è impostato nel loro profilo. È buono?Memorizza ora data UTC nella banca dati

+5

È molto buono. –

+0

@ Mark Ransom: Perché non postare questo come una risposta adeguata in modo che la domanda possa essere chiusa? –

+0

@Ates, una risposta corretta avrebbe bisogno di qualche giustificazione e avvertimenti che non sono pronto a fornire. Non potevo resistere all'apertura che mi è stata data. –

risposta

3

Penso che sia abbastanza buono. Oltre a memorizzare il fuso orario dell'utente nel profilo, puoi anche consentire al client (ad esempio, javascript) di convertire l'ora UTC in base al fuso orario del computer dell'utente.

1

Finché è possibile convertire in/da qualsiasi fuso orario dai record DB memorizzati, questo è tutto ciò che serve.

Quello che hai descritto funzionerà.

1

Nota qualche MySQL documentation per quanto riguarda il fuso orario lavorazioni & server/client:

Per-collegamento fusi orari.
Ogni client che si collega ha il proprio fuso orario impostato, dato dalla variabile time_zone della sessione. Inizialmente, la variabile di sessione prende il suo valore dalla variabile globale time_zone, ma il client può modificare il proprio fuso orario con questa dichiarazione:
mysql> SET time_zone = timezone;

Così, normalmente, nella soluzione proposta, tutto è giusto, ma non lasciare che l'attuale server o il fuso orario client cambino prendendoti di guardia.

Problemi correlati