MySQL Datenbank abfrage mit C++

rebuan

Grünschnabel
Hallöchen
Hab folgendes Problemchen:
Ich lese über eine in C++geschriebene CGI (Konsolenanwendung), meine Datenbank aus. Es sollen Benutzername und Passwort überprüft werden. Bei korrekter Eingabe über den Browser und anschließendem Test in der Datenbank, geht auch alles klar und der Login ist erfolgreich.
Das Problem ist jetzt aber, dass bei falscher Eingabe ( Benutzername oder Passwort falsch oder nicht vorhanden) und nachschauen in der Datenbank, die CGi abstürzt obwohl ich das eigentlich abgefangen haben sollte, wenn kein Wert zurückgeliefert wird.

Hier mal der Quellcode:

/******************************************************************************
Prüft Benutzername und Passwort und gibt Namen und UserID zurück
*******************************************************************************/
int User::loginCheck(string usname, string paword)
{
try
{
Connection con(use_exceptions);
con.connect("cockpitdb","localhost","","");
Query query1 = con.query();
query1 << "select name,user_ID from cockpitdb.User where username
= '"+usname+"'and password='"+paword+"'";
Result res = query1.store();
Row row;
Result::iterator i;
i=res.begin();
row=i[0];
Name+=row[0]; //speichert 1.Parameter in Name
UserID+=row[1]; //speichert 2.Parameter in UserID
return 1; //Abfrage erfolgreich

}
catch(BadQuery f)
{
return 0;
}
catch(BadConversion f)
{
return 0;
}
}

Gibt es noch eine andere Möglichkeit dies abzufangen?
Danke für eure Hilfe
 

Neue Beiträge

Zurück