Timestamp très bizarre
Ceetix
Membre
Hello tout le monde
Voilà j'ai un souci avec des timestamp vraiment bizarre ...
J'ai un site web où l'user peut programmer des events (choisir la date, jour, mois, année, heure et minute). Je fous le tout dans ma BDD et ensuite sur le site j'affiche tous les events et leur date.
La date correspond très bien à ce que l'user à enregistré.
Ce timestamp je l'utilise dans mon app iPhone mais là chose bizarre la date est différente (genre 1 jour d'avance). Donc je vais dans ma BDD et je copie un timestamp pour le convertir sur le site http://www.timestamp.fr .
Et là bah il me mets la même date que sur mon app iPhone, c'est à dire la mauvaise.
J'avoue ne pas comprendre du tout ce qui se passe. Le timestamp ne dépendant pas du tout de l'heure du serveur (je suis hébergé au états-unis).
Quelqu'un aurait une idée ? ???
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Les dates générées par le serveur ont la forme:
2001-03-24 10:45:32 +0600
+0600 indique le décalage horaire par rapport au méridien de Greenwich.
Ensuite, +[NSDate dateWithString:].
Ca veut dire que si je fais pareil sur mon serveur, où que mon iphone soit l'user verra toujours la même date ?
Pour ma synchro en tout cas, c'est ce que j'ai fait :
- générer les dates de modifications au format GMT sur l'iPhone
- mettre mon serveur en heure GMT
15h00 +0000 et 13h00 +0200 c'est exactement la même heure, c'est le même moment sur terre, juste à deux endroits géographiques différents, dans deux fuseaux horaires différents.
Si tu n'affiches que l'heure sans la TimeZone, et donc que ton site affiche "15h00" ou "13h00" forcément tu vas avoir l'impression d'avoir des heures différentes. Donc deux solutions :
1) Soit tu affiches aussi la Timezone sur ton site et ton app iPhone, pour que l'utilisateur comprenne que ton "15h00" c'est "Heure de Greenwich" et que le "13h00" c'est heure du fuseau horaire GMT-2 (et donc que c'est la même heure)
2) Soit tu affiches toutes tes heures réévaluées/exprimées en UTC/GMT, c'est à dire ramenées à l'heure de Greenwich, pour qu'elles soient toutes exprimées dans le même fuseau horaire, sur le site et sur l'iPhone.