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

Langage PHP Discussion :

[Dates] Changer l'affichage de la date


Sujet :

Langage PHP

  1. #1
    Membre averti
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Points : 442
    Points
    442
    Par défaut [Dates] Changer l'affichage de la date
    Bonjour.

    Je veux afficher la date en français lorsqu'on clique sur les sous-menus du menu "français" et l'afficher en anglais lorsqu'on clique sur les sous-menus "english" seulement ça marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    <script type="text/javascript">
    function chlang(id){
    	document.lang.lg.value = id;
    	document.lang.submit();
    }
    </script>
     
    <?php
     
    if (isset($_POST['lg']))	$langue=$_POST['lg'];
    else $langue="";
     
    if (($langue=='') || ($langue=='fr')){
    	function date_lang() { 
    	$mois = array("janvier", "fevrier", "mars", "avril", "mai", "juin", "juillet", "ao&ucirc;t", "septembre", "octobre", "novembre", "decembre"); 
    	$jours = array("Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"); 
    	return $jours[date("w")]." ".date("d").(date("d") == 1 ? "er" : " "). $mois[date("n")-1]." ".date("Y")." - ".date("H")."h".date("i"); 
    	}
    }
    elseif ($langue=='gb') {
    	function date_lang() { 
    	$mois = array("Jannuary", "February", "March", "April", "May", "June", "Juilly", "Agust", "September", "October", "November", "December"); 
    	$jours = array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"); 
    	return $jours[date("w")]." ".date("d")." ".$mois[date("n")-1]." ".date("Y")." - ".date("h").":".date("i"); 
    	}
    }
    ?>
     
    <form name="lang" method="post" class="hidden">
    <input type="text" name="lg" value="">
    </form>
          <dl onmouseover="montre('smenu2');" onmouseout="javascript:montre('');">
            <dt>
              <a href="#">Français</a>
            </dt>
            <dd id="smenu2">
              <ul>
                <li>
                <a href="index.php?page=expert" onclick="javascript:chlang('fr');">Compétences</a></li>
                <li>
                <a href="#">Tarifs</a></li>
                <li>
                <a href="#">Devis</a></li>
              </ul>
            </dd>
          </dl>
          <dl onmouseover="montre('smenu3');" onmouseout="javascript:montre('');">
            <dt>
              <a href="#">English</a>
            </dt>
            <dd id="smenu3">
              <ul>
                <li>
                <a href="index.php?page=expert_en" onclick="javascript:chlang('gb');">Competences</a></li>
                <li>
                <a href="#">Sous-Menu 3.2</a></li>
                <li>
                <a href="#">Sous-Menu 3.3</a></li>
              </ul>
            </dd>
          </dl>
    La date reste toujours en français

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 28
    Points : 27
    Points
    27
    Par défaut
    A mon avis, $_POST['lg'] reste toujours vide. As-tu bien testé ton javascript ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if (isset($_POST['lg']))	$langue=$_POST['lg'];
    else $langue="";
    Remplace cette portion de code par quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $langue = "aucune";
    if(isset($_POST["lg"]))
    {
        $langue = $_POST["lg"];
    }
     
    echo "Langue : ".$langue;
    Si tu obtiens à chaque fois "Langue : aucune", c'est que tu as un soucis avec ton JS

  3. #3
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    tu doit tester si les variables sont crées avant d'executer ton code.
    donc if (isset($_POST['variable'])) sinon ton script gardera tjs la dérniére date que tu as choisi

  4. #4
    Membre averti
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Points : 442
    Points
    442
    Par défaut
    j'ai ajouté un test à la fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <script type="text/javascript">
    function chlang(id){
    	document.langue.lg.value = id;
    	alert ("langue :" + id);
    	document.langue.submit();
    }
    </script>
    quand je clique sur les sous menus français ou anglais, j'ai bien le message avec l'id qui s'affiche mais la ligne où s'affiche la date reste toujours la même
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
          <dl style="width:230px; color:white">
    		&nbsp;<?php echo (date_lang()); ?>
          </dl>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. affichage d'une date en fonction d'une autre date
    Par aectie dans le forum Langage
    Réponses: 16
    Dernier message: 17/12/2014, 12h05
  2. Parser une date suivi d'un fuseaux horaire (date+02:00) et conversion en Date.
    Par SpeedOverflow dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 30/06/2013, 13h37
  3. [Dates] Changer le "-" par '/' dans une date
    Par lekunfry dans le forum Langage
    Réponses: 1
    Dernier message: 07/11/2007, 17h57
  4. [Dates] changer le format d'une date.
    Par maraly dans le forum Langage
    Réponses: 3
    Dernier message: 24/01/2007, 16h17

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