Bonjour,
Je travail sur une fonction pour but de mettre des mots de pass pour tous les utilisateurs.
Si je travaille sur un grand base de donnes ou j'ai plus que 500 users, alors j'ai besoin de mettre 500 mot de pass, alors j'ai créé cette fonction et le problème avec c'est de mettre le même mot de pass pour tous.
Voici mon code :
A l'exécution de ce code, il m'a donne le même mot pour tous les users....
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59 <?PHP function generatePassword($length=9, $strength=0) { // Fonction pour creer des mot de pass $vowels = 'aeuy'; $consonants = 'bdghjmnpqrstvz'; if ($strength & 1) { $consonants .= 'BDGHJLMNPQRSTVWXZ'; } if ($strength & 2) { $vowels .= "AEUY"; } if ($strength & 4) { $consonants .= '123456789'; } if ($strength & 8) { $consonants .= '@#$%'; } $password = ''; $alt = time() % 2; for ($i = 0; $i < $length; $i++) { if ($alt == 1) { $password .= $consonants[(rand() % strlen($consonants))]; $alt = 0; } else { $password .= $vowels[(rand() % strlen($vowels))]; $alt = 1; } } return $password; } require("conn.php"); // sending query $result = mysql_query("SELECT * FROM users"); if (!$result) { die("Query to show fields from table failed"); } $fields_num = mysql_num_fields($result); echo "<table border='1' width='30%' align='center' bordercolor='#FF9900'>"; while($row = mysql_fetch_assoc($result)) { echo "<tr>"; echo "<td align='center'>".$row['ID_user']."</td>"; // ID de users echo "<td align='center'>".$row['username']."</td>"; echo "<td align='center'>".$row['password']."</td>"; // echo "<td align='center'>".$row['type_pass']."</td>"; // type :etudiant, enseignent, admin ... $sql_insert = ("UPDATE users SET password = '".generatePassword()."'"); // generation des mots de pass pour tous les utilisateurs $result_insert = mysql_query($sql_insert); echo "</tr>\n"; } mysql_free_result($result); ?>
Comment je peux mettre un mot de pass différent pour chaque utilisateur ?
Merci d'avance
Partager