Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 25-08-2010 10:57:36

maryooman
Membre
Date d'inscription: 15-02-2010
Messages: 106

Validation d'un float dans un formulaire.

Bonjour,

Dans Zend_Form il existe :

Code:

$text = new Zend_Form_Element_Text();
$text->addValidator('float')

Le problème c'est la virgule ',' est accepté au lieu du point '.'

Exemple : 12,5 fonctionne mais pas 12.5

Avec MySQL il faut utiliser le point !


J'ai cherché, je suis tombé sur ça, mais rien ne change

Code:

$ValidateFloat = new Zend_Validate_Float();
$ValidateFloat->setLocale(new Zend_Locale('de_AT'));
$text->addValidator($ValidateFloat)

Savez-vous comment lui faire comprendre qu'il faut utiliser le point?
Si non je ferais mon validateur, mais j'ai envie d'utiliser zend si la solution existe.

Hors ligne

 

#2 26-08-2010 06:30:54

Dede
Membre
Date d'inscription: 26-06-2009
Messages: 99

Re: Validation d'un float dans un formulaire.

Bonjour,
J'ai eu ce problème il y a peu, cela dépend de la locale du navigateur :
Pour la France c'est bien la ',' le séparateur.
Il faut donc changer la locale au moins pour le validateur en paramètre.

J'ai donc procède comme ceci :

Code:

$text = new Zend_Form_Element_Text();
$text->addValidator(new Zend_Validate_Float('en_US'))

« Il ne faut pas lier un navire à une seule ancre, ni une vie à un seul espoir. »
Epictète
http://www.noumcreation.com

Hors ligne

 

#3 27-08-2010 10:12:59

maryooman
Membre
Date d'inscription: 15-02-2010
Messages: 106

Re: Validation d'un float dans un formulaire.

C'est parfais, merci beaucoup Dede !!

Hors ligne

 

#4 09-09-2010 15:33:58

jean
Membre
Date d'inscription: 25-08-2008
Messages: 107

Re: Validation d'un float dans un formulaire.

J'ai une question supplémentaire :

Dans un formulaire Zend_

Code:

$taux = new Zend_Dojo_Form_Element_TextBox('taux', array(
             'required'=>true,
             'validators'=>array(
                  'NotEmpty'
                  'Float'  // la locale fr intervient : 
                            //vérifie la VIRGULE : 1,23 OK  1.23 PAS OK
                  ), 
              'label' => 'Taux (pourcentage)' ));

L'affichage, la saisie et le validator sont au format français. OK, c'est ce que je veut.

Comment transformer 1,23 en 1.23 pour l'insérer dans une colonne MySQL  ?

MySQL : la colonne doit-elle être en DECIMAL ou FLOAT ? Que conseillez-vous et pourquoi ?


Merci par avance,

jean

Dernière modification par jean (09-09-2010 15:37:49)

Hors ligne

 

#5 09-09-2010 16:06:44

Manax
Nouveau membre
Date d'inscription: 24-08-2010
Messages: 4

Re: Validation d'un float dans un formulaire.

Pour l'insertion dans ta base de donnée il existe un filtre :

Code:

$filtre    = new Zend_Filter_LocalizedToNormalized();
$valeur  = $filtre->filter($valeur);

Puis pour l'affichage il existe le filtre inverse :

Code:

$filtre    = new Zend_Filter_NormalizedToLocalized();
$valeur  = $filtre->filter($valeur);

Hors ligne

 

#6 09-09-2010 16:09:03

jean
Membre
Date d'inscription: 25-08-2008
Messages: 107

Re: Validation d'un float dans un formulaire.

Grand merci, j'avais loupé ce filtre....

Jean

Dernière modification par jean (09-09-2010 16:09:25)

Hors ligne

 

#7 17-04-2012 14:58:36

Angilbeau
Membre
Date d'inscription: 27-02-2012
Messages: 26

Re: Validation d'un float dans un formulaire.

Bonjour!

je rencontre le même souci que j'ai pu resoudre sous window

$text = new Zend_Form_Element_Text();
$text->addValidator(new Zend_Validate_Float('en_US'))

Mais je viens d'heberger mon site chez OVH, qui est sous linux et cette
le même code produit une erreur : Error application

comment pourrais je faire valider cette commande sous linux

Merci

Hors ligne

 

#8 17-04-2012 20:39:29

tdutrion
Administrateur
Lieu: Dijon, Paris, Edinburgh
Date d'inscription: 23-12-2009
Messages: 614
Site web

Re: Validation d'un float dans un formulaire.

Bonjour Angilbeau,

Vérifie la casse de tes noms de fichiers et noms de classe, en général ça vient de là.

Sinon sur OVH tu as des logs via le manager V3, tu auras dedans des messages d'erreur.

Hors ligne

 

#9 18-04-2012 16:24:49

Angilbeau
Membre
Date d'inscription: 27-02-2012
Messages: 26

Re: Validation d'un float dans un formulaire.

Bonjour Théocrite!

malheureusement, j'ai verifier la casse des nom de mes fichier. lorsque je met en commentaire. la saisie est valider mais ne retiens que la partie entière hors j'amerais biens recuperer un flottant avec des point de separation

merci

Hors ligne

 

#10 18-04-2012 18:37:13

Angilbeau
Membre
Date d'inscription: 27-02-2012
Messages: 26

Re: Validation d'un float dans un formulaire.

Mon souci viens  de la gestion de mes validateurs d'un flottant, d'une date de mes  formulaire sous linux et pourtant fonctionne bien sous window

$text->addValidator(new Zend_Validate_Float('en_US'))

           //->addValidator(new Zend_Validate_Date('dd/MM/yyyy'))
                ->addValidator('StringLength', false, array(10,10))


Tous genère des erreures

Hors ligne

 

#11 19-04-2012 17:46:21

Angilbeau
Membre
Date d'inscription: 27-02-2012
Messages: 26

Re: Validation d'un float dans un formulaire.

Bonjour!

Mon souci n'est pas toujours résolu. Apres plusieur Test et recherche de methode j'y arrive pas toujours.
j'espère que cet indice permettra à l'un de vous de me debloquer.

Certains mes composant de base zendFramework n'est pas active sous linux
principalement Zend_valide_Date, Zend_valide_Float.....
Ma question est la suivante comment faire valider mon formulaire sous linux en utilisant tous mes composant de validation et filtrage de données

Hors ligne

 

#12 19-04-2012 17:56:22

shadypierre
Membre
Date d'inscription: 24-03-2010
Messages: 617

Re: Validation d'un float dans un formulaire.

Si tu donnais les erreurs retournés ça pourrait nous aider hmm

Hors ligne

 

#13 19-04-2012 21:38:49

tdutrion
Administrateur
Lieu: Dijon, Paris, Edinburgh
Date d'inscription: 23-12-2009
Messages: 614
Site web

Re: Validation d'un float dans un formulaire.

Angilbeau a écrit:

Certains mes composant de base zendFramework n'est pas active sous linux
principalement Zend_valide_Date, Zend_valide_Float.....

Pourquoi tes Zend_valide... ne sont pas des Zend_Valide...

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages