Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- QStringList temp = str.split(">");
- QString intKey = temp.at(1);
- QString nom = temp.at(2);
- QString prenom = temp.at(3);
- QString adress = temp.at(4);
- QString cp = temp.at(5);
- QString ville = temp.at(6);
- QString tel = temp.at(7);
- QString mail = temp.at(8);
- QString nation = temp.at(9);
- QString dnaiss = temp.at(10);
- QString keyRef = temp.at(11);
- QString id = temp.at(12);
- QString pw = temp.at(13);
- QString question = temp.at(14);
- QString answer = temp.at(15);
- QSqlDatabase DataBase = QSqlDatabase::addDatabase("QMYSQL");
- DataBase.setDatabaseName("my_dev_db");
- DataBase.setHostName("127.0.0.1");
- if(!DataBase.open("root","XXXXXXX"))
- {
- qDebug() << "Connection Database error";
- return "ERROR";
- }
- QSqlQuery q(tr("SELECT * FROM `keys` WHERE iSerial = '%1' AND `key` = '%2'").arg(intKey).arg(keyRef),DataBase);
- if(q.size() != 1){
- qDebug() << "SID non trouvé ou doublon";
- return "ERROR";
- }
- int fieldIdUser = q.record().indexOf("id_user");
- int fieldConnected = q.record().indexOf("connected");
- int fieldKey = q.record().indexOf("key");
- bool *ok;
- QString connectedInt;
- while (q.next()){
- userId = q.value(fieldIdUser).toString();
- connectedInt = q.value(fieldConnected).toString();
- key = q.value(fieldKey).toString();
- qDebug() << tr("%1 state is : %2").arg(key).arg(connectedInt);
- }
- q.clear();
- bool freeKey;
- (userId.toInt() == 0) ? freeKey = true : freeKey = false;
- bool connectedKey;
- (connectedInt.toInt() == 1) ? connectedKey = true : connectedKey = false;
- bool validKey = !key.isEmpty();
- if(freeKey && !connectedKey && validKey){
- //ACTIVATION DE LA CLEF
- QString queryActUser = "UPDATE `keys` SET `nom` = :nom ,`prenom` = :prenom ,`adress` = :adress ,`cp` = :cp ,`city` = :city ,`tel` = :tel ,"
- "`mail` = :mail ,`nation` = :nation ,`birth` = :birth ,`login` = :login ,`pass` = :pass ,`secretQuestion` = :secretQuestion ,"
- "`secretAnswer` = :secretAnswer"
- " WHERE `keys`.`iSerial` = '%1' AND `keys`.`key` = '%2'";
- QSqlQuery *query = new QSqlQuery(DataBase);
- if(!query->prepare(queryActUser.arg(intKey).arg(keyRef))){
- qDebug() << "Activation Query failed to prepare";
- }
- qDebug() << "prepare";
- query->bindValue(":nom", nom, QSql::In);
- query->bindValue(":prenom", prenom, QSql::In);
- query->bindValue(":adress", adress, QSql::In);
- query->bindValue(":cp", cp.toInt(), QSql::In);
- query->bindValue(":city", ville, QSql::In);
- query->bindValue(":tel", tel, QSql::In);
- query->bindValue(":mail", mail, QSql::In);
- query->bindValue(":birth", dnaiss, QSql::In);
- query->bindValue(":nation", nation, QSql::In);
- query->bindValue(":login", id, QSql::In);
- query->bindValue(":pass", pw, QSql::In);
- query->bindValue(":secretQuestion", question, QSql::In);
- query->bindValue(":secretAnswer", answer, QSql::In);
- qDebug() << query->lastQuery();
- if(query->exec() == false){
- qDebug() << "Activation query failed";
- qDebug() << query->lastQuery().toUtf8();
- qDebug() << query->lastError().databaseText();
- return "";
- }
- }else{
- return "";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement