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 :

Probleme de requete UPDATE pour modifier de champs ds DBGRID


Sujet :

Bases de données Delphi

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut Probleme de requete UPDATE pour modifier de champs ds DBGRID
    Salut merci à l'avance pour votre aide

    Voila mon code mais la requete ne fais rien , elle change rien dans ma DBgrid.

    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
    procedure TGes_Format.BitBtn5Click(Sender: TObject);
    begin
     begin
     
       if  (edit1.Text = '')then
           begin
             messagedlg('Veuillez sélectionner le champs à modifier',mtWarning,[mbok],0);
           end
       else
           begin
           with DataModule2.IBQuery_Format do begin
             SQL.Clear;
             SQL.Add('UPDATE FORMAT set TYPE_FORMAT='''+edit1.Text+'''');
             SQL.Add('WHERE TYPE_FORMAT ='''+edit1.text+'''');
             ExecSQL;
             BitBtn8.Click;
             BitBtn4.Enabled:=true;
             BitBtn6.Enabled:=true;
             edit1.Text := ''
             end;
             end;
     
    end;
    end;

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut :'( :'( :'(
    j'ai essayé autrement mais ca fonctionne pas non plus (((.

    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
    procedure TGes_Format.BitBtn5Click(Sender: TObject);
    begin
     begin
     
       if  (edit1.Text = '')then
           begin
             messagedlg('Veuillez sélectionner le champs à modifier',mtWarning,[mbok],0);
           end
       else
           begin
             with DataModule2.IBQuery_Format do
               begin
                 SQL.Clear;
                 SQL.Add('Update FORMAT');
                 DataModule2.IBQuery_Format.ParamByName('TYPE_FORMAT').AsString:=edit1.text;
                 ExecSQL;
                 BitBtn4.Enabled:=true;
                 BitBtn6.Enabled:=true;
                 edit1.Text := ''
               end;
           end;
     
    end;
    end;

    FRANK

  3. #3
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 418
    Points : 5 816
    Points
    5 816
    Par défaut
    salut

    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
     
    procedure TGes_Format.BitBtn5Click(Sender: TObject);
    var
      st : String;
    begin
    ...
       begin
            with DataModule2.IBQuery_Format do 
            begin
             Close
             SQL.Clear;
             st :=   'UPDATE FORMAT set TYPE_FORMAT="%S" WHERE TYPE_FORMAT ="%S" '
             SQL.Add(format(st,[edit1.Text,edit1.Text]);
       // question la ca marchera jamais c'est la meme valeur 
             ExecSQL;
             BitBtn8.Click;
             BitBtn4.Enabled:=true;
             BitBtn6.Enabled:=true;
             edit1.Text := ''
             end;
             end;
    @+ Phil
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut Re
    Merci encore pour ton aide: je vais commenter le probleme.

    En réalité, j'ai plusieurs bouton: Ajouter, Sélectionner, Modifier, Supprimer.
    Ce que je voudrais réaliser en claire c'est lorsque je pointe le curseur de ma souris sur ma dbgrid pour selectionner le champs dans ma table FORMAT (réaliser en interbase) lorsque ce dernier est pointé, j'appuie sur le bouton Selectionner, ce bouton (Selectionner) m'affiche la donnée de mon champs TYPE_FORMAT de ma dbgrid dans mon Edit1 et de la je change le type de format au lieu de A4 j'ecris A3 et lorsque j'appuie sur le bouton Modifier le champs A4 dans mon dbgrid ce change en A3.

    Merci... j'espere etre plus explicite.

    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
     
    procedure TGes_Format.BitBtn5Click(Sender: TObject); 
    begin 
     begin 
     
       if  (edit1.Text = '')then 
           begin 
             messagedlg('Veuillez sélectionner le champs à modifier',mtWarning,[mbok],0); 
           end 
       else 
           begin 
             with DataModule2.IBQuery_Format do 
               begin 
                 SQL.Clear; 
                 SQL.Add('Update FORMAT'); 
                 DataModule2.IBQuery_Format.ParamByName('TYPE_FORMAT').AsString:=edit1.text; 
                 ExecSQL; 
                 BitBtn4.Enabled:=true; 
                 BitBtn6.Enabled:=true; 
                 edit1.Text := '' 
               end; 
           end; 
     
    end; 
    end;

  5. #5
    Nouveau membre du Club
    Inscrit en
    Juillet 2002
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 40
    Points : 32
    Points
    32
    Par défaut
    procedure TGes_Format.BitBtn5Click(Sender: TObject);
    begin
    begin

    if (edit1.Text = '')then
    begin
    messagedlg('Veuillez sélectionner le champs à modifier',mtWarning,[mbok],0);
    end
    else
    begin
    with DataModule2.IBQuery_Format do
    begin
    SQL.Clear;
    SQL.Add('Update FORMAT set TYPE_FORMAT=:Type_Format');

    DataModule2.IBQuery_Format.Params[0].Asstring; // ici on définit le type du paramètre (string)
    DataModule2.IBQuery_Format.ParamByName('Type_Format').AsString:=edit1.text;


    ExecSQL;
    BitBtn4.Enabled:=true;
    BitBtn6.Enabled:=true;
    edit1.Text := ''
    end;
    end;

    end;
    end;
    bonjour tous le monde,

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut Re
    j'ai bien essayé ton code mais il m'affiche encore une erreur:

    Le projet Project1.exe a provoqué une classe d'exception EIBInterBaseError avec le message 'Dynamic SQL Error SQL eroor code=-104 Token unknown - line2 char -1 Update'
    alors que j'ai bien mis le code :
    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
     
    procedure TGes_Format.BitBtn5Click(Sender: TObject);
     
    begin
     begin
     
       if  (edit1.Text = '')then
           begin
             messagedlg('Veuillez sélectionner le champs à modifier',mtWarning,[mbok],0);
           end
       else
           begin
             with DataModule2.IBQuery_Format do
               begin
                 SQL.Add('Update FORMAT set TYPE_FORMAT=:Type_Format');
                 DataModule2.IBQuery_Format.Params[0].Asstring; // ici on définit le type du paramètre (string)
                 DataModule2.IBQuery_Format.ParamByName('Type_Format').AsString:=edit1.text;
                 ExecSQL;
               end;
           end;
     
           end;
    end;

  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
    Avec la requete update que tu fais, tu vas mettre à jour toute ta base.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    with DataModule2.IBQuery_Format do
    begin
      SQL.Add('Update FORMAT set TYPE_FORMAT=:Type_Format');
      SQL.Add('Where [ID_FORMAT] =:Id_Format');
      ParamCheck := True;
      ParamByName('Type_Format').AsString:=edit1.text;
      PAramByName('Id_Format').Asstring :=   DBGrid1.DataSource.DataSet.FieldByName([ID_FORMAT]).AsString;
                 ExecSQL;
    [ID_FORMAT] = Le nom du champs qui sert de référence
    Modérateur Delphi

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

  8. #8
    rsc
    rsc est déconnecté
    Membre éprouvé
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Côte d'Or (Bourgogne)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Points : 918
    Points
    918
    Par défaut
    Sans remettre en cause la correction de Malatar qui a parfaitement raison, je remarque que le message indique une erreur en ligne 2, alors qu'UPDATE est censé être en ligne 1. N'aurais-tu pas déjà une ligne qui "traîne" dans ta SQL ? Mets donc un avant le 1er
    Roland

  9. #9
    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 rsc
    Sans remettre en cause la correction de Malatar qui a parfaitement raison, je remarque que le message indique une erreur en ligne 2, alors qu'UPDATE est censé être en ligne 1. N'aurais-tu pas déjà une ligne qui "traîne" dans ta SQL ? Mets donc un avant le 1er
    +1, manque un joli petit clear ^^
    Modérateur Delphi

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

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut
    il veut pas se compiler le compilateur me signale : Identificateur non signaler: 'ID_FORMAT'

    ParamByName('Id_Format').Asstring := DBGrid1.DataSource.DataSet.FieldByName([ID_FORMAT]).AsString;

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 79
    Points : 66
    Points
    66
    Par défaut
    Ton champ dans ta requête est ID_FORMAT, essaie avec un paramètre :ID_FORMAT. Le nom du paramètre doit être le même que celui du champ, je pense casse comprise (à vérifier). Interbase et les composant IBX font attention à la casse.

  12. #12
    rsc
    rsc est déconnecté
    Membre éprouvé
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Côte d'Or (Bourgogne)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Points : 918
    Points
    918
    Par défaut
    Si le nom de ton champ est Id_Format, écris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FieldByName('ID_FORMAT').AsString;
    (entre apostrophes et non entre crochets).
    Roland

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut
    re

    En réalité j'ai une table FORMAT et j'ai qu'un seul champs qui est TYPE_FORMAT qui est la clef primaire.

    donc je vois pas pourquoi vous utilisez ID_FORMAT, j'ai pas ca dans ma table..


    Merci pour votre aide

  14. #14
    rsc
    rsc est déconnecté
    Membre éprouvé
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Côte d'Or (Bourgogne)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Points : 918
    Points
    918
    Par défaut
    OK, de remarque en remarque, on s'est un peu égaré
    Synthétisons donc : Essaie :

    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
    procedure TGes_Format.BitBtn5Click(Sender: TObject);
    begin
      if  (edit1.Text = '')then
      begin
        messagedlg('Veuillez sélectionner le champs à modifier', mtWarning,[mbok],0);
      end
      else
      with DataModule2.IBQuery_Format do
      begin
        SQL.Clear;
        SQL.Add('Update FORMAT set TYPE_FORMAT=:Type_Format');
        SQL.Add('WHERE TYPE_FORMAT = :OldType');
        DataModule2.IBQuery_Format.ParamByName('Type_Format').AsString:=edit1.text;
        DataModule2.IBQuery_Format.ParamByName('OldType').AsString:=edit4.text;
        ExecSQL;
      end;
    end;
    Roland

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut
    Mercii encore je te remercierai jamais assez

    Mais pourquoi edit4.text ?

    En faite j'ai qu'un edit et c'est edit1.text

    c'est à dire j'ai un bouton sélectionner qui permet de prendre la valeur de la donnée TYPE_FORMAT dans ma dbgrid et il met la donnée dans mon edit1.text et de la je modifie la donnée du edit1.text et logiquement ce que j'arrive pas c'est quand j'appuies sur le bouton Modifier qui change la donnée dans ma dbgrid dans le champs TYPE_FORMAT ... j'espere avoir été assez explicite

  16. #16
    rsc
    rsc est déconnecté
    Membre éprouvé
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Côte d'Or (Bourgogne)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Points : 918
    Points
    918
    Par défaut
    OK, je pensais que tu avais 2 Edit, parce que si tu dis "Mets le champ à Edit1.Text là où il vaut Edit1.Text", c'est sûr que ça ne va pas changer grand chose . Il faut donc stocker l'ancienne valeur de ton champ dans une variable (par ex. OldType) au moment de la sélection :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OldType := ...FieldByName ('Type_Format') .AsString;
    en mettent devant FieldBName le dataset associé à ton DBGrid.
    Puis la récupérer au moment de la modification :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DataModule2.IBQuery_Format.ParamByName('OldType').AsString:=OldType;
    Mais tu n'as pas pensé à utiliser tout simplement un DBEdit ? A mois que tu n'aies derrière ton DBGrid un Query non modifiable ?
    Roland

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut
    Donc tu dis que je dois faire comme ca ?

    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
    Var
    oOdType : string;    // variable en global
     
    procedure TGes_Format.BitBtn2Click(Sender: TObject);  // Bouton de  "Selectionner"
    begin
      Edit1.Text:=DataModule2.IBQuery_Format.FieldByname('TYPE_FORMAT').AsString;
      OldType := DataModule2.IBQuery_Format.FieldByName ('TYPE_FORMAT') .AsString;
      BitBtn4.Enabled:=false;
     
    end;
     
     
     
    procedure TGes_Format.BitBtn5Click(Sender: TObject);  //Bouton pour "Modifier"
    begin
    begin
      if  (edit1.Text = '')then
      begin
        messagedlg('Veuillez sélectionner le champs à modifier', mtWarning,[mbok],0);
      end
      else
      with DataModule2.IBQuery_Format do
      begin
        SQL.Clear;
        SQL.Add('Update FORMAT set TYPE_FORMAT=:Type_Format');
        SQL.Add('WHERE TYPE_FORMAT = :OldType');
        DataModule2.IBQuery_Format.ParamByName('Type_Format').AsString:=edit1.text;
        DataModule2.IBQuery_Format.ParamByName('OldType').AsString:=OldType;
        ExecSQL;
        BitBtn8.Click; //Bouton qui rafraichi
        edit1.Text:='';
     
      end;
    end;
      end;

  18. #18
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut
    Merciii d'avance ca marche super bien )).

    Probléme résolue

  19. #19
    rsc
    rsc est déconnecté
    Membre éprouvé
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Côte d'Or (Bourgogne)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Points : 918
    Points
    918
    Par défaut
    Roland

  20. #20
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 53
    Points : 28
    Points
    28
    Par défaut
    Je vais te demander la meme chose mais pour supprimer cette fois ci
    dois je faire la meme chose seulement changer le update en delete???


    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
     
    procedure TGes_Format.BitBtn6Click(Sender: TObject);
    begin
    begin
      if  (edit1.Text = '')then
      begin
        messagedlg('Veuillez sélectionner le champs à supprimer', mtWarning,[mbok],0);
      end
      else
      with DataModule2.IBQuery_Format do
      begin
        SQL.Clear;
        SQL.Add('DELETE FORMAT set TYPE_FORMAT=:Type_Format');
        SQL.Add('WHERE TYPE_FORMAT = :OldType');
        DataModule2.IBQuery_Format.ParamByName('Type_Format').AsString:=edit1.text;
        DataModule2.IBQuery_Format.ParamByName('OldType').AsString:=OldType;
        ExecSQL;
        BitBtn8.Click; //Bouton qui rafraichi
        edit1.Text:='';
     
      end;
    end;
      end;

Discussions similaires

  1. [Oracle] Comment utiliser la requête update et modifier les données si les champs sont modifiés
    Par roswina dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 01/06/2015, 10h01
  2. Probleme avec Requete Update
    Par Didier77 dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 24/07/2006, 13h20
  3. [ACCESS] Requete obligatoire pour operations sur champs ?
    Par fredrider dans le forum Requêtes et SQL.
    Réponses: 16
    Dernier message: 18/07/2006, 10h27
  4. [MySQL] Probleme avec requete UPDATE
    Par Chromatic dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 09/02/2006, 13h17
  5. Probleme avec requete UPDATE sur ACCESS
    Par Chromatic dans le forum VBA Access
    Réponses: 2
    Dernier message: 05/01/2006, 10h03

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