Partage
  • Partager sur Facebook
  • Partager sur Twitter

formater champ texte PHP

Sujet résolu
    21 août 2011 à 13:54:41

    Bonjour,

    J'ai un champ texte classique que les gens remplissent à la main mais ce que je souhaite c'est que ce champ texte soit de forme 21/01/2011 (avec des SLASH) de tel facon que l'utilisateur ne marque que 21 01 et 2011 mais je sais pas du tout comment faire
    • Partager sur Facebook
    • Partager sur Twitter
      21 août 2011 à 14:08:09

      Je suis pas sur de tout bien saisir, mais si tu peux que les / s'affichent automatiquement lorsque l'utilisateur tape du texte, il faut regarder du coté du JavaScript. Si c'est autre chose, hé bien il faudra préciser :D
      • Partager sur Facebook
      • Partager sur Twitter
        21 août 2011 à 14:15:35

        oui c'est bien ca que je veux : tu peux m'eguiller sur un post ou sur un code javascript deja existant ?
        • Partager sur Facebook
        • Partager sur Twitter
          21 août 2011 à 14:20:04

          Un code existant non, mais je peux te donner une piste. Il faudra executer une fonction JavaScript à chaque fois que l'un des évènements onKey (au choix) sera detecté, onkeyup, onkeypress, onkeydown.

          <input type="text" name="date" onkeydown="javascript:formaterDate('this.value');" />
          


          Et ta fonction JavaScript formaterDate() devra analyser la chaine, faire les traitements nécessaires, et assigner la nouvelle valeur à l'attribut value du champs. Demandes le déplacement de ton sujet vers les forums JavaScript, tu auras plus de support la bas.
          • Partager sur Facebook
          • Partager sur Twitter
            21 août 2011 à 14:25:27

            un exemple à la va vite
            function formaterDate(valeur){
              if (valeur.length == 2){
                valeur = valeur +"/";
              }else if (valeur.length == 5){
                valeur = valeur +"/";
              }
            }
            
            • Partager sur Facebook
            • Partager sur Twitter
              21 août 2011 à 14:27:45

              Attention de bien penser à prendre en compte l'ajout du premier /, donc le second se fera après 5 caractères, et non 4.
              • Partager sur Facebook
              • Partager sur Twitter
                21 août 2011 à 14:28:40

                editer merci j'ai dit que c'etait à la va vite :p
                • Partager sur Facebook
                • Partager sur Twitter
                  21 août 2011 à 14:46:00

                  en php on peu aussi faire
                  function formatageDate($date){
                  	$result=true;
                  	if(substr($date,0,2)>31){
                  		$result=false;
                  	}
                  	if(substr($date,2,2)>12){
                  		$result=false;
                  	}
                  	if($result==true){
                  		return $dateformater=substr($date,0,2)."/".substr($date,2,2)."/".substr($date,4,8);
                  	}else{
                  		echo "erreur dans la date";
                  	}
                  }
                  $date="21012011";
                  
                  echo formatageDate($date);
                  ?>
                  


                  Mais il faudra kan même du javascript pour etre sur qu'il n'y as que des chiffre aux moment de la validation du form

                  est ce que ce ne serait pas plus simle de faire rentrer la date via 3 menu déroulant date, mois et année
                  cela eviterai les date farfelue du style 01/01/0001 ou 33/13/5220
                  • Partager sur Facebook
                  • Partager sur Twitter
                  "Il est hélas devenu évident aujourd’hui que notre technologie a dépassé notre humanité"  A.E.

                  formater champ texte PHP

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown