mixte de chiffre/lettre randomisé

mixte de chiffre/lettre randomisé - PHP - Programmation

Marsh Posté le 20-03-2006 à 15:57:56    

Salut,
 
Voilà, la question est dans le titre  :D  
 
Comment créer une clé de disons 15 caractères composé aléatoirement de chiffre et de lettres?

Reply

Marsh Posté le 20-03-2006 à 15:57:56   

Reply

Marsh Posté le 20-03-2006 à 16:02:38    

Solution purement algo :

Code :
  1. Créer un tableau contenant les différents éléments possibles pour ma clé
  2. Répèter 15 fois {
  3. choisir un élément du tableau au hasard
  4. }


C'est con hein ? :D

Reply

Marsh Posté le 20-03-2006 à 16:14:10    

héhé ouai mais c'est crado :D
 
avec la fonction rand() j'avais trouvé pour les chiffres..
mais un mixte des 2 :??:

Reply

Marsh Posté le 20-03-2006 à 16:54:17    

la doc ça r0x3
 
exemple en bas:

Citation :


Quit bothering yourselves.
All it takes to create a secure random-generated password is those three lines:
 
<?php
$pass = "";
// Generate a 8 char password
for ($i=0; $i<8; $i++)
  $pass .= chr(mt_rand(35, 126));
?>
 
Note:
In this example, the character's ASCII values range from 35 to 126.
 
For character's ASCII codes please check:
http://www.keller.com/html-quickref/latin1.html

Reply

Marsh Posté le 20-03-2006 à 19:00:43    

Ouais, mais c'est vachement user-friendly des mots de passe style $#@b= :D

Reply

Marsh Posté le 28-03-2006 à 15:36:18    

hm ok merci mais ne serait-il pas possible faire uniquement avec des chiffres et des lettres?
peur de pourrir mon code avec des \\ des ' des " etc... :/


Message édité par _Roland_ le 28-03-2006 à 15:36:37
Reply

Marsh Posté le 28-03-2006 à 15:44:00    

bin tu te fais un tableau avec uniquement les codes ascii qui t'interessent et tu utilises array_rand dans le chr

Reply

Marsh Posté le 28-03-2006 à 15:47:38    

donc faut que je fasse une table juste pour ca alors?

Reply

Marsh Posté le 28-03-2006 à 15:51:32    

j'ai trouvé ce bout de code :
 
<?php
 
// Andy Shellam, andy [at] andycc [dot] net
 
// generate a random string of numbers/letters
 
settype($template, "string" );
 
// you could repeat the alphabet to get more randomness
$template = "1234567890abcdefghijklmnopqrstuvwxyz";
 
function GetRandomString($length) {
 
global $template;
 
settype($length, "integer" );
settype($rndstring, "string" );
settype($a, "integer" );
settype($b, "integer" );
 
for ($a = 0; $a <= $length; $a++) {
$b = rand(0, strlen($template) - 1);
$rndstring .= $template[$b];
}
 
return $rndstring;
 
}
 
echo GetRandomString(30);
 
?>
 
 
comprends pas grand chose mais fonctionne :D

Reply

Marsh Posté le 28-03-2006 à 17:54:39    

C'est pourtant simple. C'est le même principe que de choisir x caarctères dans un tableau, sauf que là, c'est dans une chaîne. Et toi qui voulait pas faire un tableau avec tous les caractères et chiffres, tu le fais avec une chaîne  :sarcastic:


Message édité par rufo le 28-03-2006 à 17:55:04
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed