ich hoffe, dass ihr mir mit meinem Problem helfen könnt.
Ich habe bereits mit dem Qt-Creator ein Login erstellt und möchte die Daten aus dem Formular mit Daten aus einer MySQL Datenbank vergleichen.
Das auslesen der Daten funktioniert und ich möchte wissen, wie ich das eingegebene Passwort mit dem gehaschten Passwort aus der Datenbank vergleichen kann.
Hier ist der Code vom Login:
Code: Alles auswählen
#include "login.h"
#include "ui_login.h"
#include "QtSql/QtSql"
#include "string"
login::login(QWidget *parent) :
QWidget(parent),
ui(new Ui::login)
{
ui->setupUi(this);
//--Verbindung zur Datenbank
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("uebungen-till.lima-db.de");
db.setDatabaseName("db_356572_5");
db.setUserName("USER356572");
db.setPassword("passwort");
bool ok = db.open();
//--Prüfung der Verbindung
if(ok){
ui->textEdit->setText("Verbindung hergestellt");
} else {
ui->textEdit->setText("Verbindung fehlgeschlagen");
}
}
login::~login()
{
delete ui;
}
void login::on_pushButton_clicked()
{
//--Daten aus Formular
QString username = ui->username->text();
QString passwort = ui->passwort->text();
//--SQL Abfrage
QSqlQuery string("SELECT * FROM user WHERE `username` = '" + username + "'");
while (string.next()) {
QString pass = string.value(6).toString();
//------Passwort ueberpruefen
//Passwort aus dem Formular (passwort) soll mit dem gehashtem Passwort aus der Datenbank (pass) verglichen werden
}
}