Je suis confronter à un truc qui me questionne.
C'est le principe de l'attribution d'un code promo unique.
Je le génère.
Je teste ma base pour savoir s'il n'existe pas.
Je l'insert.
Vient le cas ou le code existe déjà, donc :
Je le regénère.
Je reteste pour savoir s'il le nouveau n'existe pas.
Je l'insert.
Comment gérer cela au mieux via php/mysql ?
Si je fais une boucle comme si dessous, ça fonctionne, mais est-ce la seule solution ?
Code : Tout sélectionner
$test = 1;
while ($test > 0) {
$var = genererCode();
$sql = 'SELECT id
FROM ma_table
WHERE mon_champ_unique =$var ;
$res = mysqli_query($connect, $sql);
$test = mysqli_affected_rows($connect);
}
... en dessous ma requête d'insertion.