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

Bases de données Delphi Discussion :

Requête SQL qui fonctionne de manière aléatoire


Sujet :

Bases de données Delphi

  1. #1
    Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 74
    Points : 50
    Points
    50
    Par défaut Requête SQL qui fonctionne de manière aléatoire
    Bonjour à vous,

    Je travaille actuellement sur un outil de gestion pour une assoce caritative.
    Delphi version 2002 avec Mysql
    Plate forme de dév : XP Pro sous virtualbox (je suis sous linux)
    Plate forme serveur mysql un XP pro dédié à la fonction serveur tout fonctionne correctement depuis plus de deux ans
    Plate forme des postes clients XP pro avec le connecteur mysql installé
    Bref normalement tout fonctionne mais
    la requête suivante me pose souci
    j'ai identifié le problème qui vient d'un nombre décimal '0,3' si je remplace la virgule par un point tout fonctionne. Je sais remplacer la virgule par le point mais je cherche avant tout à comprendre pourquoi ça marche d'un côté et pas de l'autre.
    Merci de votre aide.
    Eric

    Le code qui fabrique la requête :
    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
        DecodeDate(d_m.db_sessionses_date.Value,annee,mois,jour);
        {Construction du query d'insertion }
        text_query:='INSERT INTO `bd_asso`.`db_ligne_session` ( ' +
        '`ses_recid`,`lig_bnf_recid`,`lig_date_session`,`lig_num_carte`,'+
        '`lig_bnf_nom`,`lig_nbre_pers`,`lig_mt_total`,`lig_mt_paye`,`lig_mt_du`,'+
        '`lig_colis_alim`,`lig_nbre_colis`,`lig_mt_colis`,'+
        '`lig_bon_bebe`,`lig_nbre_bon_bebe`,`lig_mt_bon_bebe`,'+
        '`lig_bon_piscine`,`lig_nbre_piscine`,`lig_mt_bon_piscine`,'+
        '`lig_bon_cine`,`lig_nbre_cine`,`lig_mt_bon_cine`,'+
        '`lig_bon_gaz`,`lig_nbre_blle_gaz`,`lig_mt_bon_gaz`,'+
        '`lig_colis_urgence`,`lig_nbre_urgence`,`lig_mt_colis_urgence`,'+
        '`lig_vetement`,`lig_mt_vetement`,'+
        '`lig_divers`,`lig_nbre_divers`,`lig_mt_divers`) '+
        ' VALUES ('' ' +
        IntToStr(d_m.db_sessionses_recid.Value)+
        ''',''' +
        IntToStr(d_m.db_benefrecid.Value)+
        ''',''' +
        IntToStr(annee)+'-'+IntToStr(mois)+'-'+IntToStr(jour)+
        ''',''' +
        IntToStr(d_m.db_benefrecid.Value)+
        ''',''' +
        d_m.db_benefbnf_nom.Value+
        ''',''' +
        IntToStr(v_nbre_pers) +
        ''',''' +
        FloatToStr(tot_grd_total_jour.Value) +
        ''',''' +
        FloatToStr(tot_paye_jour.Value) +
        ''',''' +
        FloatToStr(tot_nouveau_solde.Value) +
        ''',''' ;
        if qt_colis_alim.Value<>0 Then text_query:=text_query + '1'  + ''','''
        Else text_query:=text_query + '0' +  ''',''' ;
        if qt_colis_alim.Value<>0 Then text_query:=text_query + FloatToStr(qt_colis_alim.Value) + ''','''
        Else text_query:=text_query + '0' +  ''',''' ;
        if qt_colis_alim.Value<>0 Then text_query:=text_query + FloatToStr(prix_colis.Value) + ''','''
        ELse text_query:=text_query + '0' +  ''',''' ;
        if qt_bon_bebe.Value<>0 Then text_query:=text_query +'1' + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_bon_bebe.Value<>0 Then text_query:=text_query + FloatToStr(qt_bon_bebe.Value) + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_bon_bebe.Value<>0 Then text_query:=text_query +FloatToStr(prix_bon_bebe.Value) + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_piscine.Value<>0 Then text_query:=text_query +'1' + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_piscine.Value<>0 Then text_query:=text_query +FloatToStr(qt_piscine.Value) + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_piscine.Value<>0 Then text_query:=text_query +FloatToStr(prix_piscine.Value) + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_cinema.Value<>0 Then text_query:=text_query +'1' + ''','''
        ELse text_query:=text_query +'0' +  ''',''' ;
        if qt_cinema.Value<>0 Then text_query:=text_query +FloatToStr(qt_cinema.Value) + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_cinema.Value<>0 Then text_query:=text_query +FloatToStr(prix_cinema.Value) + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_blle_gaz.Value<>0 Then text_query:=text_query +'1' + ''','''
        ELse text_query:=text_query +'0' +  ''',''' ;
        if qt_blle_gaz.Value<>0 Then text_query:=text_query + FloatToStr(qt_blle_gaz.Value) + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_blle_gaz.Value<>0 Then text_query:=text_query +FloatToStr(prix_gaz.Value) + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if qt_colis_urgence.Value<>0 Then text_query:=text_query +'1' + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        text_query:=text_query +FloatToStr(qt_colis_urgence.Value) + ''',''';
        if qt_colis_urgence.Value<>0 Then text_query:=text_query +FloatToStr(tot_colis_urgence.Value) + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if tot_vetements.Value<>0 Then text_query:=text_query + '1'  + ''','''
        ELse text_query:=text_query +'0'  + ''',''';
        if tot_vetements.Value<>0 Then text_query:=text_query +FloatToStr(tot_vetements.Value) + ''','''
        ELse text_query:=text_query + '0' + ''',''' ;
        if tot_autres.Value<>0 Then text_query:=text_query +'1' + ''','''
        ELse  text_query:=text_query +'0' + ''',''' ;
        if tot_autres.Value<>0 Then text_query:=text_query +'1' + ''','''
        ELse text_query:=text_query +'0' + ''',''' ;
        if tot_autres.Value<>0 Then text_query:=text_query +FloatToStr(tot_autres.Value)+ ''')'
        ELse text_query:=text_query +'0' + ''')' ;
        With D_m.sql_requeteur Do
        Begin
            SQL.Clear;
            SQL.Add(text_query);
            Try
              ExecSQL;
            Except
              Showmessage('problème sur la création d''une ligne session'+ #13 + text_query);
            End;
        End;
    La requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO `bd_asso`.`db_ligne_session` ( `ses_recid`,`lig_bnf_recid`,`lig_date_session`,`lig_num_carte`,`lig_bnf_nom`,`lig_nbre_pers`,`lig_mt_total`,`lig_mt_paye`,`lig_mt_du`,`lig_colis_alim`,`lig_nbre_colis`,`lig_mt_colis`,`lig_bon_bebe`,`lig_nbre_bon_bebe`,`lig_mt_bon_bebe`,`lig_bon_piscine`,`lig_nbre_piscine`,`lig_mt_bon_piscine`,`lig_bon_cine`,`lig_nbre_cine`,`lig_mt_bon_cine`,`lig_bon_gaz`,`lig_nbre_blle_gaz`,`lig_mt_bon_gaz`,`lig_colis_urgence`,`lig_nbre_urgence`,`lig_mt_colis_urgence`,`lig_vetement`,`lig_mt_vetement`,`lig_divers`,`lig_nbre_divers`,`lig_mt_divers`)  VALUES (' 244','13','2010-12-20','13','DA COSTA','3','0,3','0,3','0','0','0','0','0','0','0','1','1','0,3','0','0','0','0','0','0','0','0','0','0','0','0','0','0')

  2. #2
    Membre chevronné Avatar de chaplin
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 215
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 215
    Points : 1 819
    Points
    1 819
    Par défaut
    Tu fairais mieux d'utiliser une requête paramètrée et passer les valeurs sous forme de paramètre, ça évite de se poser des questions existentielles ?

  3. #3
    Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 74
    Points : 50
    Points
    50
    Par défaut
    Bonjour,

    Une requête paramétrée ??? je ne sais pas
    ce qui m'agace c'est que le code de la requête sql passe sur 2 postes et pas mon poste de dév.
    Je m'interroge plus sur le paramétrage de XP (séparateur décimal , type clavier etc etc )

    Requête paramétrée ça se présente comment ? je vais chercher si je trouve des infos.

    Eric

  4. #4
    Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 74
    Points : 50
    Points
    50
    Par défaut
    Bonjour

    Je ne pense pas que mon problème vienne du fait que ce soit une requête paramétrée ou non mais plus du fait d'un paramétrage delphi ou xp ou mysql concernant le séparateur décimal

    Eric

  5. #5
    Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 74
    Points : 50
    Points
    50
    Par défaut Résolu
    Problème résolu merci XP
    en fait il faut aller dans les paramètres et changer le séparateur décimal et relancer la machine

    Merci à vous de m'avoir apporté votre soutien.

    Eric

  6. #6
    Membre averti Avatar de archonte
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    341
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 341
    Points : 392
    Points
    392
    Par défaut
    Citation Envoyé par weberick Voir le message
    Problème résolu merci XP
    en fait il faut aller dans les paramètres et changer le séparateur décimal et relancer la machine

    Merci à vous de m'avoir apporté votre soutien.

    Eric
    Avez-vous essayé l'utilisation de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DecimalSeparator := '.';
    plutôt que de modifier les paramètres et relancer la machine ?
    "Je n'ai jamais rencontré d'homme si ignorant qu'il n'eut quelque chose à m'apprendre."
    Galilée

  7. #7
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Citation Envoyé par weberick Voir le message
    Problème résolu merci XP
    en fait il faut aller dans les paramètres et changer le séparateur décimal et relancer la machine

    Merci à vous de m'avoir apporté votre soutien.

    Eric
    Ce n'est pas à la machine de s'adapter au programme mais au programme de s'adapter à la machine.
    En gros si on doit utiliser ton programme, il faut a chaque fois changer les paramètres de bases de l'ordinateur ...
    Imagines si tous les programmes faisaient comme le tien :
    - Reboot de la machine pour utiliser Word
    - Reboot pour utiliser thunderbird
    - etc ...
    C'est quand même un peu lourd non ?
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  8. #8
    Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 74
    Points : 50
    Points
    50
    Par défaut
    Bonjour à tous,

    En effet je suis d'accord avec vous : la modification du paramètre régional peut être pénalisant.
    J'ai donc ajouté le code DecimalSeparator := '.'; au début de la procédure de construction du query et apparemment tout fonctionne correctement.

    Merci à vous.

    Eric

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    707
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 707
    Points : 777
    Points
    777
    Par défaut
    Et donc en utilisant les requêtes paramétrées, comme te l'a proposé chaplin, tu n'aurais pas à t'embêter avec des conversions qui vont forcément poser problème à un moment où à un autre.

  10. #10
    Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 74
    Points : 50
    Points
    50
    Par défaut
    c'est sans doute vrai mais il faut que j'apprenne à les utiliser et je ne vous cache pas que le développement n'est pas mon passe temps favori.
    J'essaye de réaliser un travail correct pour l'assoce dans laquelle je suis bénévole mais entre nous je n'utilise que ce que je maîtrise ; je viens du monde Unix et je travaillais avec Progress ceux qui connaisse comprendront.

    Il me reste moins d'un mois pour finir ce logiciel je pare donc au plus urgent et je m'efforce d'utiliser ce que je maîtrise d'autant que j'ai d'autres soucis aléatoires non plus au niveau des requêtes SQL (merci "Archonte") mais au niveau de la modification d'un enregistrement mais ce sera l'objet d'un autre post si je ne trouve pas.
    Bonne journée à vous.
    Eric

  11. #11
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 449
    Points : 24 856
    Points
    24 856
    Par défaut
    Sinon, il y a une solution intermédiaire !
    Modifier DecimalSeparator pour l'ensemble du programme est une mauvaise idée !
    Ensuite, la virgule ne sera plus reconnu ! tes utilisateurs seront pénalisés dans leur utilisation dans ton programme

    FloatToStr accepte un paramètre TFormatSettings qui est justement conçu pour des changements ponctuels du paramètrage !
    Sinon tu n'as pas une version assez récente pour gérer TFormatSettings comme 2002 ça doit être Delphi 7, tu peux le faire à la main

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function FloatToStrMySQL(Value: Extended): string;
    var
      OldDecimalSeparator: Char;
    begin
      OldDecimalSeparator := DecimalSeparator;
      DecimalSeparator := '.';
      try
        Result := FloatToStr(Value);
      finally
        DecimalSeparator := OldDecimalSeparator;
      end;
    end;
    Idem pour les Date, cela te servira, en MySQL, c'est 'yyyy-mm-dd' par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function DateToStrMySQL(Value: TDateTime): string;
    begin
      Result := FormatDateTime('yyyy-mm-dd', Value);
    end;

    je ne vous cache pas que le développement n'est pas mon passe temps favori.
    Pour certains, c'est leur métier, heureusement que c'est ne pas le passe temps favori de trop de monde, ça nous permet d'être payer pour le faire
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  12. #12
    Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 74
    Points : 50
    Points
    50
    Par défaut
    Après avoir pris connaissance de ta réponse, j'ai fait un test et l'utilisation de la virgule n'est pas affectée.

    Autre question je cherche une personne utilisant D7 et mysql pour jeter un coup d'oeil surtout sur la partie SGBD
    est ce que j'utilise bien les bonnes options pour mon ADOConnection et pour les ADOTables car je m’aperçois que dans un cas de figure particulier j'ai un message d'erreur "La ligne n'a pas pu être trouvée pour la mise à jour ; certaines valeurs ont peut être changé etc etc "
    J'ai pris connaissance de nombreux posts traitant de ce problème et je ne parviens pas à comprendre ce qui se passe
    sur la première ligne de ma table si je modifie n'importe quelle valeur sauf les dates tout est ok par contre si je modifie la date ça plante.
    Aucun index n'utilise la date bref je cherche
    Bonne journée à vous.

  13. #13
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 449
    Points : 24 856
    Points
    24 856
    Par défaut
    Citation Envoyé par weberick Voir le message
    Après avoir pris connaissance de ta réponse, j'ai fait un test et l'utilisation de la virgule n'est pas affectée.
    Tu avais donc pris la précaution de remettre ',' dans DecimalSeparator à la fin de ta fonction ?
    Car si tu affectes '.' dans DecimalSeparator, sans nettoyage après ta fonction tous les FloatToStr ou StrToFloat sont affectés !
    C'est bien cela que tu as testés ?

    Tes tables ont toutes les PrimaryKey ?
    Personnellement, j'utilise UPDATE, j'évite le Edit\Post du TADOTable !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  14. #14
    Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 74
    Points : 50
    Points
    50
    Par défaut
    Yes Sir
    j'avais pris la précaution de repasser le séparateur décimal à ','.

    Pour l'utilisation de Update en lieu et place des edit/post cela remet tout mon travail en cause. Toutes mes tables ont des primarykey
    Je ne sais plus trop quoi faire un bon p'tit repas va sans doute me remettre les idées en place .

    Bon app donc.

    Eric

Discussions similaires

  1. Requête SQL qui ne fonctionne pas
    Par Soulama dans le forum Groovy
    Réponses: 1
    Dernier message: 25/04/2016, 03h49
  2. Class C# avec requéte SQL qui fonctionne pas
    Par nasimpat7 dans le forum ASP.NET
    Réponses: 13
    Dernier message: 01/04/2009, 23h58
  3. Interbase requête SQL qui ne fonctionne pas
    Par colorid dans le forum InterBase
    Réponses: 6
    Dernier message: 20/11/2007, 17h36
  4. Réponses: 2
    Dernier message: 06/06/2005, 15h13
  5. Requête SQL qui me bloque
    Par David Guillouet dans le forum Langage SQL
    Réponses: 5
    Dernier message: 27/04/2004, 14h52

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