Mark: Passwort generieren

Hallo Ihr,

war eben auf der Suche nach einer gescheiten Lösung, ein Passwort zufällig zu generieren. Habe auch was gefunden was wunderbar funktioniert allerdings ist da eine Zeile drin, die für mich keinen Sinn ergibt...(// Diese hier!!)

<?php

$pool = "qwertzupasdfghkyxcvbnm";
$pool .= "23456789";
$pool .= "WERTZUPLKJHGFDSAYXCVBNM";

srand ((double)microtime()*1000000);  // Diese hier!!
for($index = 0; $index < 5; $index++)
{
    $pass_word .= substr($pool,(rand()%(strlen ($pool))), 1);

}

?>

Habe die Zeile mal gelöscht, und das Script funktioniert auch ohne diese. Ist das irgendwie vielleicht nur ein Überbleibsel?

Gruss, Mark

  1. Das dürfte wohl dazu da sein um die Random-Funktion, die du weiter unten verwendest, wirklich zufallswerte liefern zu lassen.

    Kenn ich auch noch aus Basic-Zeiten :-)

    Vermutung: Ist einfach damit deine Random-Funktion nicht ständig die gleichen Random-Ergebnisse auswirft.

    1. Das dürfte wohl dazu da sein um die Random-Funktion, die du weiter unten verwendest, wirklich zufallswerte liefern zu lassen.

      Kenn ich auch noch aus Basic-Zeiten :-)

      Vermutung: Ist einfach damit deine Random-Funktion nicht ständig die gleichen Random-Ergebnisse auswirft.

      Danke euch Dreien!

      Jetzt weiss ich auch warum es bei mir ohne funktioniert. Werde es dann drin lassen, wer weiss auf welchem Server das noch Verwendung findet?!

      Und wieder ein klein wenig schauer ;-)

      Gruss, Mark

  2. moin,

    liest du mal hier nach:
    http://at.php.net/manual/en/function.srand.php

    generiert ein seed, für den zufallszahlen generator, damit dieser "bessere" zufallszahlen liefert...

    ab php 4.2 musst du es nichtmehr verwenden, vorher solltest du es

    enjoy
    hoagie

  3. Moin Mark,

    srand ((double)microtime()*1000000);  // Diese hier!!

    Schaue mal hier: http://us4.php.net/manual/de/function.srand.php

    srand() legt den Startwert von rand() fest ;-)

    regds
    Mike

  4. Warum schaust du nich einfach ins Manual, statt uns hier zu nerven??? Was mach ich denn, wenn ich ein Prob habe? Poste ich das dann hier sofort? Nein! Ins Manual geschaut > Problem gelöst!