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

PHP & Base de données Discussion :

Conception de site web bilingue


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut Conception de site web bilingue
    Bonjour,
    J'ai conçu un site (en français) et je souhaite mettre une deuxième langues (anglais). Les données à afficher sont proviennent d'une BDD MySql.
    Comment procéder ?

    Merci.

  2. #2
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 032
    Points
    34 032
    Billets dans le blog
    14
    Par défaut
    Il y a deux aspects à traiter quand on internationalise un site :
    1) La traduction de la partie statique du site, c'est à dire l'interface applicative avec les titres, les libellés de champs de saisie, les pages fixes genre informations légales...
    2) La traduction éventuelle de la partie dynamique, c'est à dire des données affichées par le site.

    Pour le premier aspect, cela peut se traiter :
    - par des fichiers de traduction ;
    - par une traduction stockée en base de données.

    Pour le second aspect, il faut commencer par déterminer ce que vous voulez traduire et modéliser l'internationalisation de vos tables.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    Merci,
    Pour les données statiques, je prévoir utiliser un tableau associatif avec des id.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    $string_lang = array(
      'HOME' => array(
        'fr-fr' => "accueil",
        'en-En' => "Home"),
         .........................
         .........................
      'COPY' => array(
        'fr-fr' => "Mention légale",
        'en-uk' => "CopyRight")
      );
    ?>
    Quand aux données stockées,
    je suis voudrais ajouter une rubrique langue dans ma table dans ce cas toutes les requête auront une variable $lang (variable session).
    Ce méthode implique forcement que chaque article sera obligatoirement inséré dans la table en français et en anglais.

    exemple de requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM table WHERE lang = $_session['lang']...
    Est une méthode efficace ?

  4. #4
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 032
    Points
    34 032
    Billets dans le blog
    14
    Par défaut
    Ça peut fonctionner ainsi en effet.

    3 remarques :
    Pour les données statiques, je prévoir utiliser un tableau associatif avec des id.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    $string_lang = array(
      'HOME' => array(
        'fr-fr' => "accueil",
        'en-En' => "Home"),
         .........................
         .........................
      'COPY' => array(
        'fr-fr' => "Mention légale",
        'en-uk' => "CopyRight")
      );
    ?>
    Si vous avez beaucoup de libellés, vous allez charger tous les libellés pour les deux langues, ce qui peut être lourd. Et si un jour vous ajoutez d'autres langues, vous augmentez d'autant la taille des informations chargées. Il vaut parfois mieux faire un fichier par langue et ne charger en mémoire que la langue choisie par l'utilisateur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM table WHERE lang = $_session['lang']...
    Attention aux injections SQL ! Utilisez PDO ou mysqli et "bindez" vos variables php.

    Dans votre code PHP, vous utilisez 'fr_FR' et 'en_EN', soit 5 caractères pour une langue. En base de données, faites plutôt une table des langues et utilisez l'identifiant auto-incrémenté de cette table, ça prend moins de place en BDD et c'est plus facilement maintenable en cas d'erreur ou de changement de code.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    Merci pour les conseils. Je m'y et je reviens.

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    Merci CinePhil c'est bon. J'ai crée une table pour les langues et une table pour les données statiques. Et jusque là tous va bien.

  7. #7
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    Bonjour CinePhil, je reviens pour un souci due je pense au mon url.
    Sur ma page, j'ai deux boutons qui me permettent de changer langues. Tous va bien sur la page d'accueil mais quand j’appelle une page interne l'url pose problème.

    Mes url contient des paramètres qui permettent l'affiche des l'article voulu. Comment prendre en compte ces variables passées en paramètres dans l'url ?

    Code de changement de langue

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    if(isset($_SESSION['lang']) or $_SESSION['lang'] == "") {
    	$_SESSION['lang'] == 'fr';
    } 
    if(isset($_GET['lang']) && ($_GET['lang']== 'fr')) {  
    	 $_SESSION['lang'] = $_GET['lang'];
     }
     elseif(isset($_GET['lang']) && ($_GET['lang']== 'en')) {
    	 $_SESSION['lang'] = 'en';
     } 
     else { 
     	$_SESSION['lang'] = 'fr'; 
     }
    lien d'appel du script de changement des langues

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href="?lang=fr"><img src="images/drapeau_francais.png" alt="Français" width="30" height="18" /></a>&nbsp;&nbsp;
    <a href="?lang=en"><img src="images/drapeau-grande-bretagne.png" alt="English" width="30" height="18" /></a>

    Exemple d'url

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a  href="page.php?lang=<?php echo $data->lang; ?>&id=<?php echo $data->id; ?>">article</a>
    NB: les deux fichiers sont intégrés dans chaque page.

  8. #8
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 032
    Points
    34 032
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par karamaster Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if(isset($_SESSION['lang']) or $_SESSION['lang'] == "") {
    		$_SESSION['lang'] == 'fr';
    	}
    Traduction :
    Si la variable $_SESSION['lang'] existe ou est égale à une chaîne vide, alors $_SESSION['lang'] == 'fr'.

    Je pense que tu veux plutôt dire ceci :
    Si la variable $_SESSION['lang'] n'existe pas ou est égale à une chaîne vide.
    Ce qui donne ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!isset($_SESSION['lang']) or $_SESSION['lang'] == "") {
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    	if(isset($_GET['lang']) && ($_GET['lang']== 'fr')) {  
     
    		 $_SESSION['lang'] = $_GET['lang'];
    	 }
    	 elseif(isset($_GET['lang']) && ($_GET['lang']== 'en')) {
    		 $_SESSION['lang'] = 'en';
    	 } 
    	 else { 
    	 	$_SESSION['lang'] = 'fr'; 
    	 }
    Là tu testes deux langues pour l'affecter à $_SESSION['lang'] de manière un peu compliquée.
    Ceci devrait suffire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    if(isset($_GET['lang']) && (($_GET['lang']== 'fr') || ($_GET['lang']== 'en')))  
    {
    	// Si $_GET['lang'] existe et vaut 'fr' ou 'en', on l'affecte à $_SESSION['lang']
    	 $_SESSION['lang'] = $_GET['lang'];
    }
    else 
    { 
    	// Sinon langue par défaut = 'fr'
    	$_SESSION['lang'] = 'fr'; 
    }
    lien d'appel du script de changement des langues

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href="?lang=fr"><img src="images/drapeau_francais.png" alt="Français" width="30" height="18" /></a>&nbsp;&nbsp;
    <a href="?lang=en"><img src="images/drapeau-grande-bretagne.png" alt="English" width="30" height="18" /></a>
    Exemple d'url

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a  href="page.php?lang=<?php echo $data->lang; ?>&id=<?php echo $data->id; ?>">article</a>
    Où et comment est généré l'objet $data ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    1/ autre écriture :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // array des langues du site
    $langs_array = array( 'fr', 'en' ); // permet  d'ajouter facilement d'autres langues
    // N.B. cet array peut être construit via la base de données (table des langues) !
     
    if( !empty($_GET['lang']) && in_array($_GET['lang'],$langs_array) )) // lang reçu via URL
    {
    	 $_SESSION['lang'] = $_GET['lang']; // mise en session
    } else { 
    	$_SESSION['lang'] = 'fr'; // langue par défaut
    }
    2/ A priori, tu n'as pas besoin de transmettre la langue, puisqu'elle est enregistrée en SESSION !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a  href="page.php?id=<?php echo $data->id; ?>">article</a>
    Ce n'est qu'au niveau de la requête qu'il faut utiliser $_SESSION['lang'].

    3/ Traductions statiques
    Plutôt que de les charger à chaque fois (!), je conseille plutôt :
    • un fichier par langue : config_dico_langue_fr.php, config_dico_langue_en.php
    • de les stocker dans des variables de SESSION
    • de charger la langue en cours uniquement, et UNE SEULE FOIS

    Exemple config_dico_langue_fr.php :
    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
    <?php
    // --------------------------------------------------
    // PARAMETRAGE LANGUE : FRANCAIS
    // --------------------------------------------------
    // CONNEXION / AUTHENTIFICATION
    $_SESSION['DICO'][$lgDico]['Vous_avez_deja_compte']					= 'Vous avez déjà un compte';
    $_SESSION['DICO'][$lgDico]['Identification']						= 'Identification';
    $_SESSION['DICO'][$lgDico]['Authentification']						= 'Authentification';
    $_SESSION['DICO'][$lgDico]['Parametres_connexion']					= 'Paramètres de Connexion';
    $_SESSION['DICO'][$lgDico]['Connexion']								= 'Connexion';
    $_SESSION['DICO'][$lgDico]['Deconnexion']							= 'Déconnexion';
    $_SESSION['DICO'][$lgDico]['Connectez_vous']						= 'Connectez-vous';
    // ------------
    // INSCRIPTION
    $_SESSION['DICO'][$lgDico]['Creer_nouveau_compte']					= 'Créer un nouveau Compte';
    $_SESSION['DICO'][$lgDico]['Inscription']							= 'Inscription';
    $_SESSION['DICO'][$lgDico]['S_inscrire']							= 'S\'inscrire';
    $_SESSION['DICO'][$lgDico]['Inscrivez_vous']						= 'Inscrivez-vous';
    $_SESSION['DICO'][$lgDico]['Formulaire_Inscription']				= 'Formulaire d\'Inscription';
    $_SESSION['DICO'][$lgDico]['Remplissez_formulaire_Inscription']		= 'Remplissez le formulaire d\'Inscription';
    Fonction de TRADUCTION en fonction de la langue fct_dico_langue.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    function dico( $mot )
    {
    	// Si la variable a été définie, la retourner...
    	if( !empty($_SESSION['DICO'][$_SESSION['lang']][$mot]) ){
    		$mot_traduit = htmlspecialchars($_SESSION['DICO'][$_SESSION['lang']][$mot]);
    	} else {
    //		$mot_traduit = 'TRANSLATE_ERROR';	// => pour les tests ! (vérification que tous les textes ont été traduits)
    		$mot_traduit = $mot;	// on affiche tel quel
    	}
    	return $mot_traduit;
    };
    charger la langue en cours uniquement, et UNE SEULE FOIS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if( (empty($_SESSION['CONFIG_LANG']['$_SESSION['lang']']) || $_SESSION['CONFIG_LANG']['$_SESSION['lang']']!==true)
    {
    	// on stocke les traductions depuis le DICTIONNAIRE
    	require_once('./config_dico_langue_' . $lgDico . '.php');		// language (indiquer le chemin correct)
    	// config OK
    	$_SESSION['CONFIG_LANG']['$_SESSION['lang']'] = true;
    }
    Exemple d'affichage d'un texte :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php session_start();
    	require_once('./fct_dico_langue.php');	
    ?>
    ....
    <?php echo dico('Remplissez_formulaire_Inscription'); ?>
    Dernière modification par Invité ; 20/02/2015 à 06h33.

  10. #10
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    Bonjour CinePhil,
    l'objet data est le résultat d'une requête.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $q = $connect_db->prepare('SELECT * FROM article WHERE id= :id AND lang = :lang');
    $q->bindValue(':id', $id);
    $q->bindValue(':lang', $lang);
    $q->execute();
    $q->setFetchMode(PDO::FETCH_OBJ);
     
    return $q->fetch();
    les langues sont stockées dans une table (au cas où dans le futur on décide d'ajouter d'autres langues).
    Je me rend compte que ce n'est pas la manière la plus efficace puisque je pouvais faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a  href="page.php?lang=<?php echo $_SESSION['lang']; ?>&id=<?php echo $data->id; ?>">article</a>
    puisque la langue est déjà en session.

    NB:
    Le principe que je veux mettre en place est toutes les informations soient dynamiques stockées dans une BDD en deux langues (pour l'instant). Les stockées dans un fichier statiques équivaudrait à chaque modification réecrire les informations et aussi la quantité d'info à gérer est très importante.

  11. #11
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 385
    Points : 10 413
    Points
    10 413
    Par défaut
    Salut,

    Oui si tu veux un site multi langue réellement pratique et évolutif (totalement administrable depuis le site lui-même sans intervention extérieure), tu as intérêt de mettre à la fois les données statiques et dynamique en bdd. Cela permet à l'utilisateur de traduire les données statiques/libellés dans une autre langue si toutes ne sont pas définies dès le départ.
    Le plus souple est donc de tout mettre en bdd. Cela dit pour exploiter au maximum toutes ces possibilités cela demande plus de travail (formulaires de traductions...).

    Petite remarque, on peut utiliser la syntaxe courte pour faire des echo dans le html :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a  href="page.php?lang=<?= $_SESSION['lang'] ?>&id=<?= $data->id ?>">article</a>

  12. #12
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    C'est exactement ce que je veux faire. J'y arrive presque sauf qu'il y a un souci dans la redirection en revenant sur l'index.
    J'explique :
    les urls sont réécrites dans mon fichier .htaccess
    Code apache : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #Options +FollowSymlinks
    Options -MultiViews
    RewriteEngine on
     
    RewriteRule  ^(fr|en)/index\.html$                                  index.php?lang=$1              [L]
    RewriteRule  ^(fr|en)/page-([0-9\-]+)\.html$                    page.php?lang=$1&id=$2     [L]


    Lorsque je joins la page (page.php), pas de problème la réécriture est parfaite mais quand je change de langue (fr->en ou en->fr) :
    1er problème : les paramètres sont affichés dans la barre d'adresse (ce qui normale avec l'url)

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href="page.php?lang=fr"><img src="images/drapeau_francais.png" alt="Français" width="30" height="18" /></a>&nbsp;&nbsp;
    <a href="page.php?lang=en"><img src="images/drapeau-grande-bretagne.png" alt="English" width="30" height="18" /></a>

    1- Comment faire la réécriture étant donné que en fonction de la page mon url change
    exemple les urls peuvent prendre la valeur:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href="page2.php?lang=fr"><img src="images/drapeau_francais.png" alt="Français" width="30" height="18" /></a>&nbsp;&nbsp;
    <a href="page2.php?lang=en"><img src="images/drapeau-grande-bretagne.png" alt="English" width="30" height="18" /></a>

    Mon deuxième problème c'est au niveau des fichiers inclus (css, js) quand je retourne sur la page index. la réécriture donne l'url : mon_site/en/index.html.
    à l'ouverture du site l'url est : index.html

    Comment faire pour que les chemin vers les fichiers inclus soient correcte que ce soit avec : mon_site/en/index.html ou index.html ?

Discussions similaires

  1. Meilleur outils de conception de site web
    Par nono dans le forum Outils
    Réponses: 4
    Dernier message: 06/04/2007, 09h10
  2. [Architecture/strategie] conception de site web dynamique
    Par epoz dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 28/11/2005, 12h11

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