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

C++Builder Discussion :

recupération parametre fichier ini pour fonction mysql


Sujet :

C++Builder

  1. #1
    Membre confirmé
    Inscrit en
    Août 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 79
    Par défaut recupération parametre fichier ini pour fonction mysql
    Bonjour,

    je souhaite recupérer les valeur d'un fichier ini et que ceux ci soit envoyer a la foncion -> mysql_real_connect();

    voici ce que je fais :
    je déclare server et bdd
    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
     
    	AnsiString Server;
    	AnsiString Bdd;
     
    TIniFile *conf;
      conf = new TIniFile(".\\config.ini");
      conf->ReadSectionValues("Connexion server", Server);
      conf->ReadSectionValues("Base de donner", Bdd);
     
    root = Edit1->Text;      // l'utilisateur entre son login
    password = Edit2->Text;  // l'utilisateur ente son password
     
     
    // initialisation pour utiliser mysql
     
     MYSQL *mySQL;
     mySQL = mysql_init(NULL);
     
    if (!mysql_real_connect(mySQL, Server, root.c_str(), password.c_str(), bdd, 0, NULL, 0))
     {
           Application->MessageBox("Erreur de Login ou Password...","", MB_OK);
     }
     else
     {
    	  StatusBar1->SimpleText = "Connexion Serveur réussi ...";
     }
    aprés avoir fais cela voilà l'erreur :

    [C++ Erreur] Unit6.cpp(40): E2034 Impossible de convertir 'AnsiString' en 'TStrings *'


    alors que si dans la fonction mysql_real_connect(); j'entre les paramétre en dur sa fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mysql_real_connect(mySQL, "127.0.0.1", root.c_str(), password.c_str(), "test", 0, NULL, 0)
    comment faire pour convertir un ansistring en tstring ou existe t'il une autre solution..

  2. #2
    Membre confirmé
    Inscrit en
    Août 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 79
    Par défaut
    Alors voilà les nouvelle du code, la seul chose que je dois faire, ces que les deux valeur lu dans le fichier *.ini doivent etre intégrer dans la fonction mysql_real_connect(), le soucie et qu'il m'affiche se message d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [C++ Erreur] Unit6.cpp(53): E2034 Impossible de convertir 'TStringList *' en 'const char *'

    voici 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
    24
    25
     
    TStringList * Server = new TStringList();  // initialisation variable de Server
    TStringList * Bdd = new TStringList();     // initialisation variable de BDD
     
     TIniFile *conf;
      conf = new TIniFile(".\\config.ini");
      conf->ReadSectionValues("Connexion server", Server); // lis la valeur dans la section Connexio server
      conf->ReadSectionValues("Base de donner", Bdd); // lis la valeur dans la section base de donner
    //***************************************************************************//
    root = Edit1->Text;      // l'utilisateur entre son login
    password = Edit2->Text;  // l'utilisateur ente son password
     
     
     MYSQL *mySQL;
     mySQL = mysql_init(NULL);
     
    if (!mysql_real_connect(mySQL, Server, root.c_str(), password.c_str(), Bdd, 0, NULL, 0))
     {
    Application->MessageBox("Erreur de Login ou Password...","", MB_OK);
     }
     else
     {
    	  Form1->StatusBar1->SimpleText = "Connexion Serveur réussi ...";
     
     }
    quelqu'un aurait t'il une solution pour la convertion d'un TStringList en const char...



    merci

  3. #3
    Membre confirmé
    Inscrit en
    Août 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 79
    Par défaut
    C bon j'ai trouver, voici la solution si sa peut aidez une autre personne ...

    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
     
    AnsiString ADDR;    // déclaration variables
     AnsiString BDD;
     
    // initialisation du fichier ini
     TIniFile *config = new TIniFile(".\\config.ini");
     ADDR = config->ReadString("Connexion server", "Adresse_IP", ""); // lecture dans la section connexion serveur de l'adresse ip
     BDD = config->ReadString("Base de donner", "BDD", "");// lecture dans la section base de donner de la base de donner
     delete config;
     
    //***************************************************************************//
    root = Edit1->Text;      // l'utilisateur entre son login
    password = Edit2->Text;  // l'utilisateur ente son password
    //---------------------------------------------------------------------------//
     MYSQL *mySQL;
     mySQL = mysql_init(NULL);
     
     
    if (!mysql_real_connect(mySQL, ADDR.c_str(), root.c_str(), password.c_str(), BDD.c_str(), 0, NULL, 0))
     {
    	//StatusBar1->SimpleText = "Connexion Serveur échoué ...";
    Application->MessageBox("Erreur de Login ou Password...","", MB_OK);
     }
     else
     {
    	  Form1->StatusBar1->SimpleText = "Connexion Serveur réussi ...";
     }
    on oubie pas de rajouter a la variable ADDR & BDD .c_str() dans la fonction mysql_real_connect, sinon on a une erreur impossible de convertir ....*, et le tour et jouer....


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/01/2014, 15h19
  2. Réponses: 3
    Dernier message: 31/03/2011, 21h28
  3. Ecriture/ lecture fichier INI pour connexion base de données
    Par lyraaa dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 08/06/2007, 20h37
  4. configurer php.ini pour fonction mail
    Par michka999 dans le forum Apache
    Réponses: 4
    Dernier message: 06/09/2006, 14h13
  5. Parametre dans fichier ini pour base fractionnée
    Par sunvialley dans le forum Access
    Réponses: 5
    Dernier message: 28/07/2006, 14h38

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