• Cliquez ICI pour voir date et l’heure actuelle.
• Changez ensuite l’heure de votre appareil, PUIS recliquez sur le bouton précédemment cliqué. Normalement, le changement d’heure sera bien appliqué.
• Enfin, cliquez ICIpour avoir l’heure réelle.
Vous avez compris l’idée, le but est de distinguer l’heure de l’appareil de l’heure réelle.
Lorsque vous créez une application qui nécessite une date, je recommande de toujours de passer par une date-heure distante et non celle de l’appareil de l’utilisateur.
En effet, voici 3 bonnes raisons de le faire :
Dans PosgreSQL, il y a déjà la fonction native now() qui renvoie la date et l’heure à UTC+00. Il suffit de préciser qu’on la renvoie avec le TIMEZONE, comme l’indique ce code :
CREATE OR REPLACE FUNCTION public.maintenant() RETURNS timestamp WITH TIME ZONE
LANGUAGE 'plpgsql'
AS
$BODY$
BEGIN
RETURN now()::TIMESTAMP WITH TIME ZONE ;
END;
$BODY$;
Maintenant, dans votre application il suffira d’appeler la fonction maintenant()
pour connaître l’heure réelle, et de faire le traitement nécessaire pour l’afficher avec fuseau horaire local. Par exemple en Javascript, on affiche une date contenant la TIMEZONE en utilisant new Date
.
N’oubliez pas de remettre la date-heure en automatique sur votre appareil !