mysql_real_connect(); schlägt immer fehl

FBIagent

Erfahrenes Mitglied
Moin,

wie ihr aus dem Betreff entnehmen könnt bekomm ich es nicht hin auf einen MySQL
Server zu verbinden. Hab das gemacht was ich sonst auch immer dafür machen
musste. Funktioniert aber irgendwie nie.

Hier erstmal der Code:

dna.cpp
Code:
#include <iostream>
#include <fstream>
#include <vector>
#include <windows.h>
#include <MySQL/mysql.h>
#include "mysqlcon.h"
 
int main()
{
  mConnection mCon;
  bool running = true;
  
  std::cout << "Loading config... ";
  if(mCon.lConfig() == true)
    std::cout << "done.\n";
  else
  {
    std::cout << "failed.\n Error: Can't find config.txt\n\n";
    running = false;
  }
  
  if(running == true)
  {
    std::cout << "Connecting to MySQL server... ";
    if(mCon.connect() == true)
      std::cout << "done.\n";
    else
    {
      std::cout << "failed.\nError: Can't connect to MySQL server. Wrong configs or server down?\n\n";
    }
  }
  
  mCon.close();
  system("Pause");
  return 0;
}

mysqlcon.h
Code:
#ifndef MY_MYSQLCON_H
#define MY_MYSQLCON_H
 
class mConnection
{
private:
  MYSQL mCon;
  std::string mInfo[4];
public:
  bool lConfig();
  bool connect();
  void close();
};
 
bool mConnection::lConfig()
{
  std::string row;
  std::vector<std::string> rows;
  std::ifstream file("config.txt");
  
  if(!file.is_open())
    return false;
  
  while(getline(file,row))
    rows.push_back(row);

  for(int i=0;i<rows.size();i++)
    mInfo[i] = rows[i];

  return true;
}
 
bool mConnection::connect()
{
  mysql_init(&mCon);
  if(mysql_real_connect(&mCon,mInfo[0].c_str(),mInfo[0].c_str(),mInfo[0].c_str(),mInfo[0].c_str(),3306,NULL,0))
    return true;
  else
    return false;
}
 
void mConnection::close()
{
  mysql_close(&mCon);
}
 
#endif
Und so sieht die config.txt aus:
Code:
localhost
test_cpp
test_cpp
test
Natürlich testweise den Benutzer "test_cpp" mit Passwort "test_cpp" erstellt.
"test" steht für die database. "localhost" muss ich wohl ned erklären.

Ja MySQL läuft.. das schonmal vorab :D

Warum funtzt denn das mysql_real_connect(); nicht...
Hm.. habe nun echt keine Ahnung mehr.

THX im Vorraus
MFG FBIagent

EDIT: Oh ganz dummer Fehler von mir... habe bei mysql_real_connect(); bei mInfo[] nicht mit 0 angefangen
sondern mit 1 -.- hat sich also erledigt. (den Code habe ich hier auch ebend korigiert)
 
Zuletzt bearbeitet:
Zurück