reelsergealain
a posé

Comment automatiser une action avec Laravel ?

Je souhaite créer un système avec Laravel où, lors de l'inscription d'un utilisateur, un numéro/matricule lui est automatiquement attribué selon un format spécifique, commençant par "EFGT-" suivi de six chiffres aléatoires. Je ne sais pas comment procéder pour réaliser cela.

dani03
dani03 621 XP
a répondu
Meilleure réponse

salut vu que tu veux commencer par "EFGT-" tu peux l'ajouter à la main et que tu veux numéro unique aléatoire tu peux utiliser la bibliothèque Str de laravel un truc comme Str::random(6) ou celle de php (random_int(100000, 999999);) si tu regarde la doc tu pourras trouver ou utliser les uuids ( Str::uuid()->toString();) toujours avec la bibliothèque Str mais les chiffres sont plus long , dans ta table user tu peux avoir une colonne "matricule" ou tu mettra la valeur $matricule = "EFGT-". Str::random(6)" et dans ton user tu l'ajoute

$randomNumber = random_int(100000, 999999);
$matricule = "EFGT-". $randomNumber;
 
User::create([
'matricule' => $matricule
]);

après pour qu'il soit unique tu peux vérifier en amont si le matricule existe en faisant user::where('matricule', $matricule)->first(); avant de créer

reelsergealain
a répondu

Lol ouais vraiment souvent les choses sont très simple mais cherches ça tes loin, merci beaucoup

Il faut Se connecter ou Créer un compte pour participer à cette conversation.