|
Débuté par Michèle, 11 aoû. 2025 19:26 - 2 réponses |
| |
| | | |
|
| |
Membre enregistré 25 messages |
|
Posté le 11 août 2025 - 19:26 |
Bonjours ; J’ai ce bout de code de vérification d’une clé d’activation crée sous windev 25 j’interroge une BDD distante MYSQL qui se trouve sur mon site il génère l’erreur SQLGetCol' should have returned a value. Alors que j’ai vérifier que SQL.NbLig=1 je ne comprend pas l’origine de cette erreur est que j’ai raté quelque chose dans mon code ou quoi ? voici le code utilisé
ResSQL = SQLExec("SELECT statut FROM fiche_licence WHERE numero_licence = '" + sCleLicence + "'", "REQ1") SI ResSQL = Vrai ALORS SQLPremier("REQ1") Info("La Valeur de SQL.NbLig : ",SQL.NbLig) SI SQL.NbLig = 0 ALORS Info("Clé invalide.") SQLFerme("REQ1") SQLDéconnecte() RETOUR FIN // sStatut est une chaîne = SQLLitCol("REQ1", "statut") sStatut = SQLLitCol("REQ1", "statut") Info("La Valeur Du Statut :",sStatut) SQLFerme("REQ1") // Déjà vendue ? SI sStatut = "vendue" ALORS Info("Clé déjà utilisée.") SQLDéconnecte() RETOUR FIN SINON Info("Erreur SELECT clé : " + ErreurInfo(errComplet)) SQLDéconnecte() RETOUR FIN
// ========================= // 4. Vérifier si PC déjà activé avec autre licence // ========================= ResSQL = SQLExec("SELECT cle_licence FROM licences WHERE id_pc = '" + sID_PC + "' AND cle_licence <> '" + sCleLicence + "'", "REQ2") SI ResSQL = Vrai ALORS SQLPremier("REQ2") SI SQL.NbLig > 0 ALORS Info("Ce PC est déjà activé avec une autre licence.") SQLFerme("REQ2") SQLDéconnecte() RETOUR FIN SQLFerme("REQ2") SINON Info("Erreur SELECT PC : " + ErreurInfo(errComplet)) SQLDéconnecte() RETOUR FIN
// ========================= // 5. Mise à jour clé (UPDATE) // ========================= ResSQL = SQLExec("UPDATE fiche_licence SET statut = 'vendue' WHERE numero_licence = '" + sCleLicence + "'", "REQ3") SI ResSQL = Faux ALORS Info("Erreur mise à jour clé : " + ErreurInfo(errComplet)) SQLDéconnecte() RETOUR FIN
// ========================= // 6. Insertion dans licences (INSERT) // ========================= sInsert est une chaîne ="INSERT INTO licences (cle_licence, nom, adresse_office, telephone, id_pc, active, date_activation, email_client) " +... "VALUES ('" + sCleLicence + "', '" + sNom + "', '" + sAdresse + "', '" + sTelephone + "', '" + sID_PC + "', 1, NOW(), '" + sEmail + "')" ResSQL = SQLExec(sInsert, "REQ4") SI ResSQL = Faux ALORS Info("Erreur insertion licences : " + ErreurInfo(errComplet)) SQLDéconnecte() RETOUR FIN |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 955 messages |
|
Posté le 11 août 2025 - 20:09 |
Bonjour, Le deuxième paramètre de "SQLLitCol" devrait être le Numéro de la colonne (donc 1 dans votre cas), Non ? CdltMessage modifié, 11 août 2025 - 20:10 |
| |
| |
| | | |
|
| | |
| |
Posté le 11 août 2025 - 20:43 |
Cédric_34 a écrit :
Bonjour, Le deuxième paramètre de "SQLLitCol" devrait être le Numéro de la colonne (donc 1 dans votre cas), Non ? Cdlt
Merci pour la réponse, vu que j'ai fait un SELECT sur le champs statut alors la réponse est effectivement 1 |
| |
| |
| | | |
|
| | | | |
| | |
|