IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

[1.0.12]Gestion des dates dans un environnement international


Sujet :

Symfony PHP

  1. #1
    Expert éminent
    Avatar de pmithrandir
    Homme Profil pro
    Responsable d'équipe développement
    Inscrit en
    Mai 2004
    Messages
    2 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Responsable d'équipe développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 418
    Points : 7 295
    Points
    7 295
    Par défaut [1.0.12]Gestion des dates dans un environnement international
    Bonjour

    Sur notre application, nous avions pour l'instant un seul client sur une seule zone horaire.

    Nos futurs clients pouvant être placés de part et d'autre du monde, nous avons mis en place un système de sauvegarde des dates en BDD à l'heure GMT, et nous traduisons a l'aide des fonctions PHP toutes les dates vers la zone définie dans les paramètres de nos utilisateurs. (c'est un choix fonctionnel d'avoir toujours la date en heure locale de l'utilisateur)
    Pour l'instant la traduction se fait dans les templates faute de mieux je dirais, mais on se rend compte que ca nous fait un max de boulot, et de possibilité de bug.

    Plusieurs questions tout d'abord :
    - Est il possible de récupérer la zone horaire du PC client quelque part(javascript, dom, entete HTTP) pour éviter de demander aux utilisateurs de configurer ca a la main.
    - Est il possible de gérer les différents formats de dates(JJ/MM/AAAA ou MM/JJ/AAAA en fonction des pays et de la langue) de facon automatique avec symfony.

    Mon idée était de rajouter dans les classes Peer un get et un set pour chaque dates. getDateToUserTimezone(), setDateFromUserTimezone(date)
    Si possible je voulais empêcher de récupérer la date GMT pour éviter les bugs.Peut être est ce possible de redéfinir la méthode pour lui faire retourner une valeur erreur, ou même directement la valeur avec l'utilisation du timezone.

    Qu'en pensez vous, comment avez vous résolu ce problème dans votre application ? Est ce qu'il existe une solution dans symfony pour ca.

    Merci

    Pierre

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    tu peux recupéré la timezone de ton client en javascript :
    date.getTimezoneOffset()
    en PHP tu peut le déduire a partir de l'ip et d'autre paramètre.
    c'est plus fiable mais mais plus compliqué. il y a des bibliothèques déjà prête à intégrer.

    Pour le format des dates regard du coté de :
    l'internationalisation

    Je ne suis pas confronté a ce genre de problème pour le moment j'espère que ceci constitue déjà un élément de réponse pour toi

Discussions similaires

  1. Gestion des dates dans un data source
    Par blasil64 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 15/05/2010, 16h30
  2. Gestion des fenetres dans un environnement MDI
    Par jcb47 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 16/06/2008, 12h31
  3. gestion des dates dans formulaires
    Par ln0331 dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 06/12/2007, 12h18
  4. gestion des dates dans un formulaire
    Par clement42 dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 18/05/2006, 11h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo