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

Zend_Form PHP Discussion :

Zend Form et caractère spéciaux


Sujet :

Zend_Form PHP

  1. #1
    Membre habitué
    Profil pro
    Chef d’entreprise
    Inscrit en
    Mars 2002
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef d’entreprise

    Informations forums :
    Inscription : Mars 2002
    Messages : 212
    Points : 149
    Points
    149
    Par défaut Zend Form et caractère spéciaux
    Voici le résumé de mon code , un truc très classique


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    if ($this->_request->isPost()) {
                $formdata = $this->_request->getPost ();
                if ($form->isValid($formdata)) {
    // si les données sont valides , j'insère dans ma base de donnée
                    $res = new mRessources();
                    $res->nvRes($form->getValues());
     
     
                }else {
    //sinon, je fais un form populate et j'alerte l'utilisateur
                    $form->populate($formdata);
                    $this->view->message = 'Veuillez vérifier vos données.';
                }
            }
    Dans le cas où les données sont valides, elles sont insérées correctement dans la base, y compris les caractères accentués. C'est la preuve que les caractères sont bien interprétés par mon formulaire et qu'il n'y a pas de distortion lors de la communication entre l'application et la base et que l'UTF 8 est bien configuré au niveau d'apache et de postgresql.

    Par contre, lorsque je fais $form->populate($formdata), c'est juste à ce niveau là que les cacatères acentués sont mal affichés.

  2. #2
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    il faut que tu regarde l'encodage de ta page html
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

  3. #3
    Membre habitué
    Profil pro
    Chef d’entreprise
    Inscrit en
    Mars 2002
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef d’entreprise

    Informations forums :
    Inscription : Mars 2002
    Messages : 212
    Points : 149
    Points
    149
    Par défaut
    En fait j'utilise cette instruction dans mon controleur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->view->setEscape('utf8_encode');
    ceci permet de générer cette ligne au niveau de ma page HTML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

  4. #4
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Dans le cas ou tu creer le form tes donnees ne sont pas en utf-8... Elles ne proviennent pas de ta base.
    Tu dans mettre iso et non utf8 en encodage

    setEscape('je connais pas l'attibut:-(');

  5. #5
    Membre habitué
    Profil pro
    Chef d’entreprise
    Inscrit en
    Mars 2002
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef d’entreprise

    Informations forums :
    Inscription : Mars 2002
    Messages : 212
    Points : 149
    Points
    149
    Par défaut
    J'ai écrit en dur la ligne dans ma vue
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
    et j'ai enlevé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->view->setEscape('utf8_encode');
    Le problème s'est encore agravé : il ne se limite pas aux formulaires, toutes les données affichées dans la page ne sont plus affichées correctement même les titres...

  6. #6
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Normale car le reste de tes donnes sont en utf8 :-)

    Le plus simple est donc d'encoder ta chaine de caractere

    utf8_encode("Mon alerte");

  7. #7
    Membre habitué
    Profil pro
    Chef d’entreprise
    Inscrit en
    Mars 2002
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef d’entreprise

    Informations forums :
    Inscription : Mars 2002
    Messages : 212
    Points : 149
    Points
    149
    Par défaut
    Citation Envoyé par guigo Voir le message
    Normale car le reste de tes donnes sont en utf8 :-)

    Le plus simple est donc d'encoder ta chaine de caractere

    utf8_encode("Mon alerte");
    ce n'est pas du tout gérable car ça veut dire que je dois quasiment utiliser utf8_encode à chaque fois que j'utilise echo!!!

  8. #8
    Membre habitué
    Profil pro
    Chef d’entreprise
    Inscrit en
    Mars 2002
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef d’entreprise

    Informations forums :
    Inscription : Mars 2002
    Messages : 212
    Points : 149
    Points
    149
    Par défaut
    HELP!!!!

  9. #9
    Membre habitué
    Profil pro
    Chef d’entreprise
    Inscrit en
    Mars 2002
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef d’entreprise

    Informations forums :
    Inscription : Mars 2002
    Messages : 212
    Points : 149
    Points
    149
    Par défaut
    J'ai essayé sous différents environnements XAMPP, WampServer, ZendServer CE
    Windows XP SP3 et Vista.

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 178
    Points : 230
    Points
    230
    Par défaut
    Hello,

    J'utilise aussi UTF-8 et les populate des forms ne cassent pas l'encodage.

    Ton soucis vient de ce que tu n'as pas compris ce que fais setEscape().

    setEscape te permet de définir un fonction qui sera sous-appelée par la méthode escape de la vue.

    Dans ton premier code, tu disais à la vue que si on appelle escape() elle devait appeller utf8_encode.

    Lorsque les inputs de formulaires sont rendu les helper de rendu échappent avec escape leurs valeurs, ce qui fait que tu encodais en utf8 des chaines déjà en utf8.

    Enlève simplement ta ligne sertEscape et remet la meta d'encodage utf et ça va marcher tout seul.

    De plus, il faut que tu dise à la réponse de dire que le contenu est aussi utf.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $response->setHeader('Content-Type', 'text/html; charset=utf-8');

  11. #11
    Membre habitué
    Profil pro
    Chef d’entreprise
    Inscrit en
    Mars 2002
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef d’entreprise

    Informations forums :
    Inscription : Mars 2002
    Messages : 212
    Points : 149
    Points
    149
    Par défaut
    1- J'ai enlevé mon $this->view->setEscape('utf8_encode');
    2 - J'ai mis dans mon controleur $this->_response->setHeader('Content-Type', 'text/html; charset=utf-8');
    3- J'a mis dans ma vue <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    Voici le code

    Controleur

    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
    	public function newresAction() {
    		.....	
     
    		$form = new fmNewRes();
     
    		if ($this->_request->isPost()) {
    			$formdata = $this->_request->getPost ();
    			if ($form->isValid($formdata)) {
    				$res = new mRessources();
    				$id = $res->nvRes($form->getValues());
    				if ($id>0) {
    					$this->_redirect('/manage/ressources/resprev/idres/'.strval($id));
    				}else {
    					$this->view->message = 'Impossible d\'intégrer les données dans la base. La ressource existerait déjà.' 
    							. 'Veuillez vérifier vos données.';
    									}
     
    			}else {
    				$form->populate($formdata);
    				$this->view->message = 'Veuillez vérifier vos données.';
    			}
    		}
    		$this->view->form = $form;
    		$this->_response->setHeader('Content-Type', 'text/html; charset=utf-8');
     
    	}
    Vue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    ...
    echo $this->form;
    ...
    Form
    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
    class fmNewRes extends Zend_Form {
    	public function __construct($options=null) {
    		parent::__construct($options);
    		$this->setName('newres');
     
    		$libelle =new Zend_Form_Element_Text('lib');
    		$libelle->setLabel('Libellé')
    				->setRequired(true)
    				->addValidator('StringLength', false, array(5, 30));
     
     
    		$Module =new Zend_Form_Element_Text('mod');
    		$Module->setLabel('Module')
    				->setRequired(true)
    				->addFilters(array('StripTags'))
     
    				->addValidator('StringLength', false, array(5, 30))
    				->addValidator('Alpha');
     
    		$Controleurs =new Zend_Form_Element_Text('cont');
    		$Controleurs->setLabel('Contrôleur')
    				->setRequired(true)
    				->addFilters(array('StripTags','StringTolower'))
     
    				->addValidator('StringLength', false, array(5, 30))
    				->addValidator('Alpha');
     
    		$actions =new Zend_Form_Element_Text('act');
    		$actions->setLabel('Action')
    				->setRequired(true)
    				->addFilters(array('StripTags','StringTolower'))
     
    				->addValidator('StringLength', false, array(5, 30))
    				->addValidator('Alpha');
     
    		$submit = new Zend_Form_Element_Submit('submit');
    		$submit->setLabel('Ajouter Ressource')
    		->setRequired(false)
    		->setIgnore(true);
     
    		$this->addElements(array($libelle,$Module,$Controleurs,$actions,$submit));	;
    	}
    }?>
    Le résultat obtenu est le suivant :
    1- Les libélles avec des caractères spéciaux ne sont pas affichées correctements exp le é de Libellé est remplacé par un carré
    2- Dans la cas d'un f$orm->populate, les éléments qui contiennet un filtre strtolower ne s'affichent pas correctements exp : $controleurs, $actions
    3- Seuls les éléments qui ne contiennet pas le filtre 'StringToLower' s'affichent correctement

  12. #12
    Membre actif
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 178
    Points : 230
    Points
    230
    Par défaut
    Hello,

    Il ne te reste plus qu'à t'assurer que ton éditeur de code source édite les fichiers en UTF-8, si cela n'est pas le cas, ça expliquerait pourquoi les chaînes écrites dans ton code sources sont cassées à l'affichage.

    Ensuite, srttolower de php n'est pas prévu pour des chaines UTF-8.
    Tu dois dire au filter Zend_Filter_StringToLower quel encodage tu utilises avec sa méthode setEncoding().

    Courage, après ça tu devrais en avoir fini

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 12
    Points : 13
    Points
    13
    Par défaut Zend et UTF-8
    Bonjour,

    Voilà plusieurs jours que j'ai passer tous les fichiers du site en UTF-8. Pas de problème de ce côté là, j'enregistre avec DreamWeaver sans BOM. Ma base est en UTF-8 également. Tous les accents s'affichent normalement et s'insèrent correctement dans les tables.
    Le site tourne sur Apache (php 5.2) et MySql, tous deux configurés en UTF-8, "AddDefaultCharset UTF-8" se trouve dans le .htaccess.
    Je rencontre le problème suivant: lors de l'affichage des 'forms', je me retrouve avec des caratères ajoutés dans le code HTML par exemple:

    <div id="header">blablabla (rendu layout default.phtml)</div>
    <div id="exemple">(rendu des vues)...<form>formelements</form>.... </div> </div>.
    Je me retrouve donc avec des '...' qui me décalent toutes mes 'forms' d'une ligne.
    Quelqu'un saurait-il m'éclairer sur ce problème ? J'ai pas mal fouillé les forums, mais personne n'en parle.

    Je vous laisse donc ma config, peut être ai-je oublié quelque chose.
    Ma config.ini :
    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
    [production]
    
    phpSettings.display_startup_errors = 0
    phpSettings.display_errors = 0
    phpSettings.date.timezone = "Europe/Paris"
    
    includePaths.library = LIBRARY_PATH
    
    bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
    bootstrap.class = "Bootstrap"
    
    autoloaderNamespaces[] = "My_"
    
    resources.view.encoding = "UTF-8"  ;; si activé : Plugin baseUrl not found !
    ;resources.layout.encoding = "UTF-8"  ; pour test, change rien
    
    ; initialize database
    resources.db.adapter = "pdo_mysql"
    resources.db.params.host = "localhost"
    resources.db.params.username = "root"
    resources.db.params.password = ""
    resources.db.params.dbname = "xxxxxx"
    resources.db.params.charset = "UTF8"
    #resources.db.params.profiler = true
    resources.db.params.date_format = "YYYY-MM-ddTHH:mm:ss"
    resources.db.isDefaultTableAdapter = true
    
    
    
    ; initialize front controller resource
    
    resources.frontController.defaultModule = "default"
    resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
    resources.frontController.defaultControllerName = "index"
    resources.frontController.defaultAction = "index"
    resources.frontController.moduleControllerDirectoryName = "controllers"
    resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
    
    
    resources.modules[] = ""
    
    ; initialize layout resource
    resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
    resources.layout.layout = "default"
    resources.layout.helperPath = "APPLICATION_PATH "/layouts/helpers"
    
    
    
    # initilisation du log
    resources.log.writer.type = stream
    resources.log.writer.file = APPLICATION_PATH "/logs/application.log"
    
    
    
    [development : production]
    phpSettings.display_startup_errors = 1
    phpSettings.display_errors = 1
    Mon index :
    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
    <?php
    // Set the initial include_path. You may need to change this to ensure that
    // Zend Framework is in the include_path; additionally, for performance
    // reasons, it's best to move this to your web server configuration or php.ini
    // for production.
    
    // encoding //Ne change rien 
    setlocale(LC_CTYPE, 'C');
    mb_internal_encoding("UTF-8");
    mb_regex_encoding("UTF-8");
    
    
    set_include_path(implode(PATH_SEPARATOR, array(
    realpath(dirname(__FILE__) . '/../library'),
    get_include_path(),
    )));
    
    // Define path to application directory
    defined('APPLICATION_PATH')
    || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
    
    // Define application environment
    defined('APPLICATION_ENV')
    || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
    
    
    /** Zend_Application */
    require_once 'Zend/Application.php';
    
    // Create application, bootstrap, and run
    $application = new Zend_Application(
    						APPLICATION_ENV,
    						APPLICATION_PATH . '/configs/app.ini'
    					);
    
    $application->bootstrap();
    $application->run();
    Mon Bootstrap principal :
    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
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    <?php
    /**
     * Application bootstrap
     *
     * @uses    Zend_Application_Bootstrap_Bootstrap
     * @package QuickStart
     */
    class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
    {
    	private $_acl = null;
    	private $_auth = null;
    	private $_role = null;
    
    	public function run()
    	{
    		// Cela permet d'avoir le fichier de configuration disponible depuis n'importe ou dans l'application.
    		Zend_Registry::set('config', new Zend_Config($this->getOptions()));
    		parent::run();
    	}
    
    	protected function _initAutoloader() {
    		$moduleLoader = new Zend_Application_Module_Autoloader(array(
    			'namespace' => 'My_', // pas de namespace
    			'basePath' => APPLICATION_PATH,
    		));
    		return 	$moduleLoader;
    	}
    
    
    
    
    	protected function _initDb()
    	{
    		//on charge notre fichier de configuration
    		$config = new Zend_Config($this->getOptions());
    		//On essaye de faire une connection a la base de donnee.
    		try{
    			$db = Zend_Db::factory($config->resources->db);
    			//on test si la connection se fait
    			$db->getConnection();
    		}catch ( Exception $e ) {
    			exit( $e -> getMessage() );
    		}
    		// on stock notre dbAdapter dans le registre
    		Zend_Registry::set( 'db', $db );
    		Zend_Db_Table::setDefaultAdapter($db);
    		return $db;
    	}
    
    	protected function _initViewHelpers()	{
    
    		$this->_auth = Zend_Auth::getInstance();
    		$this->_acl = new My_Model_Acl2();
    
    		$this->_role = $this->_auth->hasIdentity() ? $this->_auth->getStorage()->read()->usr_role : 'guest';
    		Zend_Registry::set('role', $this->_role);
    		
    		$fc = Zend_Controller_Front::getInstance();
    			// Plugin qui verifie les droits
    			$fc->registerPlugin(new My_Plugin_Auth($this->_auth, $this->_acl));
    			//Plugin qui stock moduleName, controllerName, actionName
    			$fc->registerPlugin(new My_Plugin_LinkRegister());
    
    		// Initialisation de la vue
    		// Recup du Layout
    		$this->bootstrap('layout');
    		$layout = $this->getResource('layout');
    		$view = $layout->getView();
    		
    		$view->setEncoding('UTF-8');
    
    		//Dojo
    		Zend_Dojo::enableView($view);
    		$view->dojo()
    			->addStyleSheetModule('dijit.themes.tundra')
    			->setDjConfigOption('usePlainJson', true)
    			->disable();
    
    		//HTML HEADER						
    		$view->doctype('XHTML1_STRICT');
    		$view->headMeta()->appendHttpEquiv('Content-type','text/html;charset=utf-8')
    			->appendHttpEquiv('X-UA-Compatible','IE=EmulateIE7')
    			->appendName('Description','Epitec');
    		$view->headTitle()->setSeparator(' - ');
    		$view->headTitle('Epitec');
    		$view->headScript()->appendFile('/js/jquery.js');
    		$view->headScript()->appendFile('/js/nav.js');
    
    		// Navigation (menus)
    		$navContainerConfig = new Zend_Config_Xml(APPLICATION_PATH . '/configs/menu.xml', 'nav');
    Zend_Registry::set('test',$navContainerConfig);
    		$navContainer = new Zend_Navigation($navContainerConfig);
    		$view->navigation($navContainer);
    		$view->navigation()->setAcl($this->_acl);
    		$view->navigation()->setRole($this->_role);
    
    		//View renderer //avec ou sans, change rien
    		$viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer');
    		$viewRenderer->setView($view);
    
    		return $view;
    	}
    
    
    	/**
    	 * Initialize Translation
    	 *
    	 * @return Zend_Translate
    	 */
    	public function _initTranslate()
    	{
    		$translate = new Zend_Translate('array', APPLICATION_PATH . '/languages/fr.php', 'fr');
    		$translate->addTranslation(APPLICATION_PATH . '/languages/it.php', 'it');
    		$translate->setLocale('fr');
    		Zend_Form::setDefaultTranslator($translate);
    		Zend_Registry::set('Zend_Translate', $translate);
    		return $translate;
    	}
    
    }
    Merci de l'intérêt que vous porterez à mon sujet.
    Dans l'attente, salutations.

    JBaptiste.

Discussions similaires

  1. Zend form, ajouter un caractère derrière un input text
    Par supertotal dans le forum Zend_Form
    Réponses: 7
    Dernier message: 24/02/2012, 18h00
  2. [ZF 1.11] $form->populate n'affiche pas les libellés avec caractères spéciaux
    Par schwarzy2 dans le forum Zend_Form
    Réponses: 4
    Dernier message: 30/08/2011, 11h10
  3. [Form] Caractères spéciaux dans les noms de champs
    Par Mistic100 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 29/06/2011, 08h16
  4. Caractère spéciaux request.form
    Par freuh94 dans le forum ASP
    Réponses: 2
    Dernier message: 26/10/2010, 15h55
  5. Caractères spéciaux à ne pas passer dans une form
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 02/03/2006, 12h39

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