mysql Daten in Borland C++ Builder verwenden


maexle1894

Mitglied
Hi,
ich steh mal wieder aufm Schlauch, und da ihr mir das letzte mal super geholfen habt, hoffe ich, dass ihr mir auch dieses Mal helfen könnt :

C++Builder 6, myDAC installiert, eingebunden, Connect hergestellt, Query gemacht, hat alles funktioniert.

Ich will lediglich ein Anmeldeformular schreiben. Wie bekomme ich den eingegebenen UserName-String in ein Query und dann das dazugehörige Password zurück?

Zweites Problem : Das Passwort ist MD5 verschlüsselt, gibts diese Verschlüsselungsmethode auch im Borland?

Wie immer vielen Dank schon im Vorraus...

Grüße
 

MBDealer

Mitglied
Hallo,

such mal bei Google nach TMD5 da bekommste einige Links wo du diese Komponente downloaden kannst diese lässt sich in den Builder einbinden und dann kann man sehr leicht einen MD5 Hash erstellen und in deiner Anwendung benutzen.
 

maexle1894

Mitglied
Vielen Dank für die schnelle Antwort... Bin gerade am ausprobieren und es scheint zu funktionieren. Jetzt muss ich nurnoch das MD5-Passwort aus der Datenbank bekommen und verwenden können.

Das kann doch nicht so schwer sein, oder?
 

MBDealer

Mitglied
Hallo,

ich denke nicht das du das Passwort aus der Datenbank zurück bekommst da MD5 keine Verschlüsselung ist sondern nur ein Hash.
 

maexle1894

Mitglied
gg, nein, ich will schon den MD5-Hash aus der DB, um ihn mit meinem "gemd5tem" Passwort zu vergleichen...

Hashs gehen ja gewöhnlich nur in eine Richtung... (sonst wäre das ganze ja sinnlos)
 

MBDealer

Mitglied
Hallo,

ja das sollte kein Problem sein einfach das aus der DB in einen String das eigene in einen zweiten String vergleichen und fertig ...
 

maexle1894

Mitglied
jo genau. nur ich weiß nicht, wie ich einen String aus der DB rausbekomme... Genau da liegt mein Problem...

Gibt es im TMyQuery eine Funktion, die die aktuelle Reihe in einem String-Array zurückgibt oder so?
 

maexle1894

Mitglied
Habe es rausgefunden, war mal wieder einfacher als ich gedacht habe....

Code:
  connection->Connect();
  anmeldequery->Close();
  anmeldequery->SQL->Clear();
  anmeldequery->SQL->Add("SELECT PasswordMD5 FROM users WHERE UserName='" + txtusername->Text + "';");
  anmeldequery->Open();
  
  //anmeldequery->FieldByName("PasswordMD5")->AsString; <= Das ist das, was ich brauche
 

MBDealer

Mitglied
Hallo,

eigentlich ist das alles nicht so schwer nur man muss wissen wie man es angeht und wo man Informationen dazu findet ... die Hife vom Borland C++ Builder ist eine grosse Hilfe aber da steht auch nicht alles drin. Ich suche auch öfter im Delphi Forum da die Komponenten sich kaum zu denen vom C++ Builder unterscheiden.
 

maexle1894

Mitglied
Ich habe leider immernoch Probleme mit dem MD5. TMD5 habe ich eingebunden bekommen, sobald ich allerdings versuche, es zu benutzen, stürzt das Programm ab.

Viel einfacher müsste es eigentlich mit dem Indy IdCoder5 gehen, der ja schon mit dabei ist.

Unter PHP ergibt md5("hallo"); den folgenden Hash : 598d4c200461b81522a3328565c25f7c

Im Borland kommt, egal welche Funktion ich benutze, entweder garnichts oder sowas wie das hier : 0;"ü Õ¥ÌÓ 9Iª

Welche Funktionen benutzt man beim IdCoder zum eingeben des Strings? setKey? und zum ausgeben einfach Key? oder braucht man noch CodeString und CompletedInput?