Bonjour,
Mon application Web donne un code de promo, par courriel, aux utilisateurs qui remplissent le formulaire.
Ce code est unique, utilisable une seule fois par l'utilisateur. Il est stocké dans une base de données (BDD).
Chaque fois qu'un utilisateur remplit le formulaire au 1er écran, l'application connecte à la bdd, et obtient la valeur du 1er champ, "cd_promo", du PREMIER ENGREGISTREMENT/ PREMIERE LIGNE de la table "client".
Une fois que le code a été envoyé, par courriel, à l'utilisateur, le programme supprime le code dans la BDD, dans le 2e écran.
Code : Sélectionner tout - Visualiser dans une fenêtre à part string mySqlReq = "SELECT cd_promo FROM client LIMIT 1";
Du coup, 2e utilisateur peut obtenir un autre code.
Code : Sélectionner tout - Visualiser dans une fenêtre à part string mySqlReqSupr = "DELETE FROM client WHERE cd_promo=@CodeEnvoye;";
Ça marche très bien. Par contre, j'ai une idée qui peut causer beaucoup de problèmes*:
Mon problème est le suivant*: si par hasard, en même temps, 2 utilisateurs remplissent le formulaire au 1er écran, j'imagine qu'ils vont évidemment obtenir, tous les deux, le même code [QUI SE TROUVE DANS PREMIER ENREGISTREMENT] !!! Il faut éviter cela*:
Autrement dit, il ne faut pas qu'ils reçoivent le même code qui se trouve dans 1er enregistrement.
En plus de cela, j'imagine une autre chose qui irait se produire au 2e écran*: 1er utilisateur clique sur le bouton, l'email part dans sa boite de courriel et ce code est supprimé par la requête. Ensuite, 2er utilisateur clique sur le bouton, l'email part avec le même code de promo dans son boite de courriel et le code n'excite plus (puisque le 1er l'a supprimé avant lui) alors l'application peut afficher un message d'erreur.
Alors que je dois faire pour que ma requête (mySqlReq) ne donne pas la même valeur s'il y a plusieurs utilisateurs remplissent en même temps le formulaire. En plus, ils ont évidemment le droit de remplir le formulaire en même temps, et nous n'avons pas le droit de les empêcher.
Merci et bonne journée![]()
Partager