Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1710 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Générer des pass type alpha "XXXX" dans une base mysql.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Générer des pass type alpha "XXXX" dans une base mysql.

n°220134
Master_Jul
Posté le 25-09-2002 à 18:01:01  profilanswer
 

J'ai un listing en mysql et je souhaiterai attribuer à chaque entrée un mot de passe basique, genre 4 lettres, est ce possible ?

mood
Publicité
Posté le 25-09-2002 à 18:01:01  profilanswer
 

n°220154
Sh@rdar
Ex-PhPéteur
Posté le 25-09-2002 à 18:21:58  profilanswer
 

tu fais un tableau contenant les 26 lettres de l'alphabet (ou les caractères que tu veux)
 
tu pioche 4 valeurs au hasard avec array_rand() que tu concatènes pour générer ton code.
 
tu mets à jour la table


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°220161
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 25-09-2002 à 18:28:10  profilanswer
 

Code :
  1. /* Cette fonction recois en arguments 1 entier qui est egal a la taille du code a generer  
  2.    Et renvois le password generé */
  3. function gen_password($taille_pwd)
  4. {
  5. $tab_char="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
  6. while($i<$taille_pwd)
  7.  {
  8.  $nombre_aleatoire .= $tab_char[rand(0,strlen($tab_char))];
  9.  $i++;
  10.  }
  11. return $nombre_aleatoire;
  12. }


 
edit: avant d'utilisé cette fonction il faut faire ceci avant :  
 
srand(microtime());
gen_password($nombre);
 


Message édité par Schtroumpheur le 25-09-2002 à 18:29:25

---------------
J'ai une pierre à la place du coeur, et au milieu de cette pierre il y a un coeur.
n°220162
skylight
Made in France.
Posté le 25-09-2002 à 18:28:53  profilanswer
 


         $chaine = "abBDEFcdefghijkmnPQRSTUVWXYpqrst23456789"; //caractères possibles
         srand((double)microtime()*1000000);
         for($i=0; $i<4; $i++)  //mot de passe de 4 caractères
              $pass .= $chaine[rand()%strlen($chaine)];

n°220168
Master_Jul
Posté le 25-09-2002 à 18:35:29  profilanswer
 

merci mais je suis une merde au point pas savoir ce que je fais de ça, pour ajouter un pass automatiquement à chaque entrée déjà créée

n°220183
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 25-09-2002 à 19:15:59  profilanswer
 

Le bout de code que je t'ai mis c'est une fonction tu fou ca au debut de ton script
 
puis par exemple si tu veux afficher un password aleatoire de 10 caracteres tu fais ca :

Code :
  1. <?
  2. /* Cette fonction recois en arguments 1 entier qui est egal a la taille du code a generer   
  3.   Et renvois le password generé */
  4. function gen_password($taille_pwd)
  5. $tab_char="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"; 
  6. while($i<$taille_pwd)
  7. {
  8. $nombre_aleatoire .= $tab_char[rand(0,strlen($tab_char))];
  9. $i++;
  10. }
  11. return $nombre_aleatoire;
  12. }
  13. srand(microtime());
  14. echo gen_password(10);
  15. ?>


---------------
J'ai une pierre à la place du coeur, et au milieu de cette pierre il y a un coeur.
n°220194
Master_Jul
Posté le 25-09-2002 à 20:17:36  profilanswer
 

oui mais en fait, j ai déjà toutes les entrées, je dois rajouter une colonne et générer des pass pour les entrées existantes

n°220236
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 25-09-2002 à 22:20:16  profilanswer
 

Ben ecoute, ma fonction te genere et te retoune un password aleatoire, a partir de la tu en fais ce que tu veux !


---------------
J'ai une pierre à la place du coeur, et au milieu de cette pierre il y a un coeur.
n°220238
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 25-09-2002 à 22:30:50  profilanswer
 

Toutes tes entrees sont dans une DB MySQL C ca?
 
si oui tu fais ca :
 

<?
 
 
$host = "hostname";
$user = "usernamedb";
$pass = "passworddb";
$base = "nomdeladb";
 
$mysql_link = mysql_pconnect($host, $user, $pass);
mysql_select_db($base) or die( "Connexion impossible à la base de donnée !!! " );
 
function gen_password($taille_pwd)
{
  $tab_char="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
 while($i<$taille_pwd)
 {
  $nombre_aleatoire .= $tab_char[rand(0,strlen($tab_char))];
  $i++;
 }
 return $nombre_aleatoire;
}
 
$req="SELECT * FROM ta_table";
$res=mysql_query($req);
 
srand(microtime());
while($result=mysql_fetch_array($res))
{
   
  $gen_pwd=gen_password(10);
 
  $cleprim=$result["ClePrimaireDeTaTable"];
  mysql_query("UPDATE ta_table SET champ_password='$gen_pwd' WHERE ClePrimaireDeTaTable='$cleprim'" );
}
 
?>


Message édité par Schtroumpheur le 25-09-2002 à 22:31:45

---------------
J'ai une pierre à la place du coeur, et au milieu de cette pierre il y a un coeur.
n°221065
Master_Jul
Posté le 26-09-2002 à 23:00:28  profilanswer
 

Warning: srand() expects parameter 1 to be long, string given in /home/xxxxx/public_html/pass.php on line 24

mood
Publicité
Posté le 26-09-2002 à 23:00:28  profilanswer
 

n°221066
Master_Jul
Posté le 26-09-2002 à 23:18:45  profilanswer
 

c est bon ça marche merci bcp  :)

n°221163
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 27-09-2002 à 09:51:52  profilanswer
 

:jap:


---------------
J'ai une pierre à la place du coeur, et au milieu de cette pierre il y a un coeur.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Générer des pass type alpha "XXXX" dans une base mysql.

 

Sujets relatifs
Mysql + ODBCMySQL : activer le mode "debug" sous Linux ?
[PHP][MySQL] Trier un datetime par ordre décroissant[MySQL] Choix entre 2 types de champs
Acceder à la base de registre en C#[MYSQL] Erreur dans PhpMyAdmin
[MySQL] quel outil pour des benchmarks ??Sujet: Est ce qu'on peut mettre des images dans une base mysql? (easyp
problème de connexion base mysql en php (easyphp 6) 
Plus de sujets relatifs à : Générer des pass type alpha "XXXX" dans une base mysql.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR