@Meskhii

Проблема с проверкой хешированного пароля (c++ mysql) как исправить?

делаю программу регистрация/вход на qt framework все сделал всё работает кроме, проверки хешированного пароля,
в mysql записывается нормально hash md5 пробовал sha256 нормально все при регистрации, а когда сравниваю пароли то пишет что не правильно, без hasha все работает даже если скопировать с mysql захешированный пароль и ввести тоже работает, но если переписать на проверку хеша то всегда ошибка.

if(db.open())
    {

      QString email = ui->email->text();
      QString password = QString("%1").arg(
             QString(QCryptographicHash::hash(ui->password->text().toUtf8(),
             QCryptographicHash::Md5).toHex()));

        QSqlQuery query(QSqlDatabase::database("MyConnection"));
        query.prepare("SELECT * FROM users WHERE email = :email AND password = :password");
        query.bindValue(":email", email);
        query.bindValue(":password", password);

        if(!query.exec())
        {
         QMessageBox::information(this,"Failed","Error please try again");
        }
        else
        {
            QString emailLog = query.value(1).toString();
            QString passwordLog = query.value(4).toString();
                    if (query.next()) {
                       QMessageBox::information(this,"SUCCESS","SUCCESS");
                       db.close();
                   } else {
                        QMessageBox::information(this,"Wrong","Wrong Password try again");
                       db.close();
                   }
        }
    }
   else
    {
       QMessageBox::information(this, "Database Error", "Can't Connect To Database");
    }
  • Вопрос задан
  • 206 просмотров
Решения вопроса 1
@Meskhii Автор вопроса
проблем была в mysql перевел на sqlite все работает
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы