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

JavaScript Discussion :

Masque saisie php date


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 93
    Par défaut Masque saisie php date
    Bonjour,
    Je cherche a faire un masque de saisie, en php, pour une date dans une textbox.
    Merci d'avance!

  2. #2
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut
    Salut,

    Un masque de saisie se fait généralement en JavaScript. Sinon coté PHP, il s'agit plus de validation des données.

    Resterait à savoir quel type de données, et quel type de masque tu veux appliquer..

    A+

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 93
    Par défaut
    Ca serait juste pour : quand la personne va saisir, elle est dans la textbox un truc du style : jj/mm/aaaa et que quand le curseur est sur la textbox date, elle est juste a tapé les chiffres de la date sans qu'elle est à taper les " / " ni meme à enlever les jj ,mm, aaaa.
    ou bien un masque où il y a que : // et qu'elle est que les chiffre a rentrer.

    Voila, je sais pas si tu vois ce que je veux dire lol ???

  4. #4
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut
    Oui je vois tout à fait

    Mais le mieux pour les dates ce sont les combobox, c'est plus convivial !

    Tu peux faire ça en JavaScript...

    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
    <script language="JavaScript">
    	function onFocusDate(leChampDate) {
    		if(this.value == "jj/mm/yyyy")
    			this.value = "";
    	}
    	function onBlurDate(leChampDate) {
    		if(this.value == "")
    			this.value = "jj/mm/yyyy";
    	}
    	function onKeyUpDate(leChampDate) {
    		// Ici tester à chaque fois si le chiffre entrée est valable pour la position en cours.
    	}
    </script>
     
    <form name="nomForm" action="unepage.php" method="POST">
    	<input type="text" name="dateForm" value="jj/mm/yyyy" onFocus="onFocusDate(this);" onBlur="onBlurDate(this);" onKeyUp="onKeyUpDate(this);">
    </form>
    Désolé j'ai pas le temps de faire le code pour toi Bonne chance !

  5. #5
    Membre Expert
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Par défaut
    Bonjour,

    tu fais 3 textbox (2 de size=2 et une de size=4), tu teste par javascript que tes textbox sont bien remplies puis tu envoie par post ou get. Tu test avec php tes valeurs, tu les recuperes et apres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $date = $valeur_jour."/".$valeur_mois."/".$valeur_annee;

  6. #6
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 93
    Par défaut
    Merci bcp, pas grave ten fait pas, je vais pas tout te demander non plu, c gentil de m'avoir aidé déjà lol
    a bientot

  7. #7
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut
    PS : sur le forum il a déjà été traité le problème de la validation de Date en Javascript, et des méthodes interessantes ont étés évoquées : tu pourras t'en servir pour tester ta date, une d'entre elle par exemple consiste à créer un objet Date à chaque fois, pour vérifier que la date entrée est correcte

    A+

  8. #8
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 93
    Par défaut
    dsl mais j'ai a peine manipulé du javascript et donc je capte pas tout lol
    je sais pas si tu es encore là, sinon c'est pas grave, ca peut attendre demain.tu pe m'expliquer vite fait le code que tu as marqué (onblur onfocus) et je capte pas le onKeyUp !
    ?? Merci

  9. #9
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 93
    Par défaut
    J'ai bien vu ton message Yiannis, mais ce n'est pas exactement ce que j'ai demandé, ca je les fai pour autre chose lol
    ce que j'ai demandé, c'est quand l'utilisateur va vouloir saisir sa date, je voudrai qu'il n'est pas a marqué les / /, je voudrais qu'il rentre juste les chiffres, et que les / / ne disparaisse pas ou ne se décale pas !!

  10. #10
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut
    Le onKeyUp est un évènement déclenché quand une personne appuie sur une touche ( une lettre par exemple ) et relache la touche.

    Ca te permet d'intercepter l'entrée d'un chiffre.
    Tu testes donc dans la fonction onKeyUpDate qu'il s'agit bien d'un chiffre. Puis que c'est un chiffre possible ( par exemple, pour jj dans jj/mm/aaaa le premier chiffre doit être entre 0 et 3 inclu.. ) puis une fois que tu as validé que le chiffre est correcte, tu réécris le champ donc tu fais quelque chose comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function onKeyUpDate(leChampDate) {
    		var thisValue = leChampDate.value; // On récupère la valeur du champ
     
    		// On test si le dernier champ entré est bien un chiffre.
    		if( thisValue.charAt(thisValue.length - 1) * 1 != NaN) {
    			// Le champ est bien un chiffre
    			[...]
    		}
    		else {
    			// Le champ n'est pas un chiffre
    			[...]
    		}
    	}
    Je n'écris pas le contenu, j'ai pas le temps;

    Ensuite, tu testes si le chiffre est dans la bonne fourchette pour la position, et si c'est le cas, tu réécris le champs, en ajoutant un / si nécessaire.

    Cas idéal :

    La personne écrit "4"
    Ce n'est pas valide pour le premier j de jj/mm/aaaa : on vide le champ.
    La personne écrit "3"
    Ca marche, on garde le 3
    La personne écrit "5"
    Ce n'est pas valide pour le deuxieme j de jj/mm/aaaa : on garde le 3 mais on enlève le 5.
    La personne écrit "1"
    c'est ok : on écrit donc "31/" et la personne continue à taper après

    Et voila.

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

Discussions similaires

  1. [AC-2007] pb avec mon masque de saisie de date
    Par tibofo dans le forum IHM
    Réponses: 2
    Dernier message: 04/03/2010, 14h44
  2. masque de saisie de Date pour TextBox
    Par ygeeg dans le forum Windows Forms
    Réponses: 5
    Dernier message: 03/03/2010, 22h52
  3. Masque de saisie pour date au format Y-M-D
    Par Claude Poulin dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 02/03/2009, 13h52
  4. Masque de saisie de date
    Par minihart dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 26/11/2007, 01h42
  5. Masque de saisie texte+date
    Par Thibaut_Dupont dans le forum Access
    Réponses: 6
    Dernier message: 02/08/2006, 14h39

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