Salut
Quelqu'un peut me donner un code qui génére aléatoirement un code de dix caractere en php comme pour les cartes de crédit...








Salut
Quelqu'un peut me donner un code qui génére aléatoirement un code de dix caractere en php comme pour les cartes de crédit...
Non mais on peut s'en doute t'aider à en créer un.
Voir la fonction rand() , à associer avec des tableaux de caractères par exemple








comment utilise-t-on cette fonction ?
Bonjour,
en voici une :
Que tu peux appeller comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 // Créer les mots de passe ================================ function Make_Pass(){ $Lettre1 = "ABCDEFGHJKLMNPQRSTUVWXYZ"; $Lettre2 = "ABCDEFGHJKLMNPQRSTUVWXYZ"; $i = 0; $a = rand(0,strlen($Lettre1)); $ThePass = substr($Lettre1, $a, 1); while($i < 9){ $X = rand(0,strlen($Lettre2)); $Xarray = array(2,10,17,20); if(!in_array($X, $Xarray)){ $ThePass.= substr($Lettre2, $X, 1);} else{ $Y = rand(0,9); $ThePass.= $Y;} $i++; } return $ThePass; } //------------------------------------------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 echo Make_Pass();
dans la même logique que N1bus,une autre fonction que j'ai amélioré à mon goût
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <?php function make_password($len) { $consonants = 'bdghjlmnpqrstvwxzBDGHJLMNPQRSTVWXZ@#$%^0123456789'; $vowels = "aeiouyAEIOUY"; $alt = time() % 2; srand(time()); for ($i = 0; $i < $len; $i++) { if ($alt == 1) { $password .= $consonants[(rand() % strlen($consonants))]; $alt = 0; } else { $password .= $vowels[(rand() % strlen($vowels))]; $alt = 1; } } return $password; } //pour générer un mot de passe d'une longueur 8 echo '<h1>'.make_password(8).'</h1>'; ?>

et moi je plante la plus simple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 function generate_password($length = 6) { $password = ""; $possible = "0123456789bcdfghjkmnpqrstvwxyz"; $i = 0; while ($i<$length) { $char = substr($possible, mt_rand(0, strlen($possible)-1), 1); if (!strstr($password, $char)) { $password .= $char; $i++; } } return $password; }
Partager