rand funktioniert nich so wies sollte...

.the.fragile.

Grünschnabel
passwort zufallsgenerator...

//edit

hi

also das rand problem is jetzt gelöst... allerdings hab ich ein problem mit einem passwort zufallsgenerator....

der code lautet wie folgt:

PHP:
<?

  $pwarray = array("");
for($x=1;$x<6;$x++) {
 srand((double)microtime()*1000000);
 $pwvar.$x = rand(1,36);
 switch($pwvar.$x) {
  case 1: $pwvar.$x = "a"; break;
  case 2: $pwvar.$x = "b"; break;
  case 3: $pwvar.$x = "c"; break;
  case 4: $pwvar.$x = "d"; break;
  case 5: $pwvar.$x = "e"; break;
  case 6: $pwvar.$x = "f"; break;
  case 7: $pwvar.$x = "g"; break;
  case 8: $pwvar.$x = "h"; break;
  case 9: $pwvar.$x = "i"; break;
  case 10: $pwvar.$x = "j"; break;
  case 11: $pwvar.$x = "k"; break;
  case 12: $pwvar.$x = "l"; break;
  case 13: $pwvar.$x = "m"; break;
  case 14: $pwvar.$x = "n"; break;
  case 15: $pwvar.$x = "o"; break;
  case 16: $pwvar.$x = "p"; break;
  case 17: $pwvar.$x = "q"; break;
  case 18: $pwvar.$x = "r"; break;
  case 19: $pwvar.$x = "s"; break;
  case 20: $pwvar.$x = "t"; break;
  case 21: $pwvar.$x = "u"; break;
  case 22: $pwvar.$x = "v"; break;
  case 23: $pwvar.$x = "w"; break;
  case 24: $pwvar.$x = "x"; break;
  case 25: $pwvar.$x = "y"; break;
  case 26: $pwvar.$x = "z"; break;
  case 27: $pwvar.$x = "1"; break;
  case 28: $pwvar.$x = "2"; break;
  case 29: $pwvar.$x = "3"; break;
  case 30: $pwvar.$x = "4"; break;
  case 31: $pwvar.$x = "5"; break;
  case 32: $pwvar.$x = "6"; break;
  case 33: $pwvar.$x = "7"; break;
  case 34: $pwvar.$x = "8"; break;
  case 35: $pwvar.$x = "9"; break;
  case 36: $pwvar.$x = "0"; break;
  default: $pwvar.$x = "0"; break;
 }
  array_push($pwarray,$pwvar.$x);
}
 for ($x=1;$x<7;$x++) {
  echo $pwarray[$x]."<br>"; // Die Zeilenumbrüche sind nur zu Testzwecken da...
 }
?>

das passwort sollte 6 zeichen lang sein und aus "a"-"z" und "0"-"9" bestehen. tja. manchmal geht das auch, nur ab und zu gibt er kombinationen aus die kürzer sind, zum Beispiel "ll5", "tl7" oder "k5"...

wo liegt das problem?

danke
 
Zuletzt bearbeitet:
Code:
$pwvar.$x = "a";
Ähem... wer hat dich denn auf diese Syntax gebracht? Diese Zeile bewirkt nur, dass $x jetzt "a" ist... $pwvar wird nicht verändert. Außerdem machst du das ganze ziemlich kompliziert... Versuch's mal hiermit:
Code:
<?
$chars = "abcdefghijklmnopqrstuvwxyz1234567890";
$pass = "";
for ($i=0;$i<6;$i++) {
	$char = rand(0, strlen($chars));
	$pass .= $chars[$char];
}
echo $pass;
?>
Oder wenn du mehr auf Arrays stehst:
PHP:
<?
$chars = array_merge(range('a', 'z'), range('0', '9'));
$pass = "";
for ($i=0;$i<6;$i++) {
	$char = rand(0, count($chars));
	$pass .= $chars[$char];
}
echo $pass;
?>
 
danke, dein script funktioniert so wies meins sollte... :rolleyes:

hmm wie ich auf die syntax gekommen bin... keine ahnung... is wohl in den tiefen meines kranken gehirns entstanden... :)

tja dann danke ich mal recht herzlich, machs gut...
 
Zurück