Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > Zend_Form
Zend_Form Forum d'entraide pour le composant Zend_Form du Zend Framework (création de formulaires, helpers, AJAX etc.). Avant de poster -> FAQ Zend_Form.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/12/2010, 11h33   #1
Invité de passage
 
Inscription : décembre 2010
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 6
Points : 0
Points : 0
Par défaut Messages d'erreurs + caractères accentués

bonjour à vous

je cherche à traduire un message d'erreur destiné à un champs de ma form
.... en fait il ne s'affiche pas s'il y a présence d'accents.
seulement je ne sais pas comment faire.
utf8_encode et url_encode ne fonctionnent pas ici.

voici ma classe :
Code :
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
<?php
require_once 'Zend/Validate/Abstract.php';
 
class Validate_NameMatch extends Zend_Validate_Abstract
{
    const NAME_MISMATCH = 'titre accepté';
    protected $_compare;
 
    public function __construct($compare)
    {
        $this->_compare = $compare;
    }
 
    protected $_messageTemplates = array(
       self::NAME_MISMATCH => utf8_encode('Le nom du disque n est pas accepté')
      // self::NAME_MISMATCH => 'titre non accepté'
    );
 
    public function isValid($value)
    {
        $this->_setValue((string) $value);
        if ($value !== $this->_compare)  {
       	$this->_error(self::NAME_MISMATCH);
          return false;
       }
        return true;
    }
 
}
 ?>
grand merci pour votre aide
bamak est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2010, 14h06   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 015
Points : 5 015
Hello

et si tu remplaçait les caractères accentués par des codes HTML ?

Ex:
Code php :
1
2
3
 
$message = "Je suis accentu&eacute;";
echo "<input type=\"text\" value=\"$message\" />";
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2011, 17h15   #3
Membre à l'essai
 
Inscription : mars 2010
Messages : 66
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 66
Points : 23
Points : 23
tu peux utiliser htmlentities() qui te retourne le string passé en paramètre avec les caractères html correspondant

exemple:

Code :
echo htmlentities('Héllo'); // retourne 'H&aecute;llo'
KDZCrew est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2011, 17h55   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 101
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 101
Points : 8 466
Points : 8 466
non, c'est lui de corrigé l'erreur d'encodage, c'est pas une bonne méthode que de vouloir cacher une erreur
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h15.


 
 
 
 
Partenaires

Hébergement Web