Zufallspasswort erstellen für alle User

weltenbummler
Hallo,

ich habe ein Script gekauft und möchte dieses nun mit einem Login-Bereich versehen.

Dazu bräuchte ich eine Funktion, die erstmal allen Usern ein Zufallspasswort erstellt und dieses in die Datenbank einträgt (unverschlüsselt).

Ich weiß, unverschlüsselt ist nicht sicher, aber ich möchte es halt lernen und verstehen und daher erstmal unverschlüsselt.

Das Passwort soll 8 Zeichen lang sein und halt aus Buchstaben und Zahlen bestehen...

Nur leider hab ich absolut keine Ahnung, wie ich das angehen soll :-)
GluBBel
weltenbummler
ohja, das ist ja schonmal gut...

nur wie bekomme ich es hin, dass für jeden User (es sind an die 4000) ein Passwort erstellt wird und automatisch in die Datenbank eingetragen wird?
GluBBel
php:
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:
<?php

// Zufallspasswort erstellen
  function make_passwort() {
    $ranpass "";
    $alpha = array ('a','b','c','d','e','f','g','h','i','j','k','l','m',
                           'n','o','p','q','r','s','t','u','v','w','x','y','z',
                           '0','1','2','3','4','5','6','7','8','9');
    srand((double)microtime()*1000000);
    shuffle($alpha);
    $rando rand(5,10); // zufällige Stringlänge deffinieren (von 5 bis 10 Zeichen)
    for ($z=0;$z<$rando;$z++) $carrier[$z] = next($alpha);
    for ($z=0;$z<$rando;$z++) $ranpass .= $carrier[$z];
    return $ranpass;
    } 


$userid 1;

$sql2 "Select * from users";
$sql2 mysql_query($sql2);
$sql2 mysql_num_rows($sql2);

while($sql2 $userid) {
$oass make_passwort();
$sql "UPDATE  `users` SET `pass` = '".$pass."' WHERE `userid` = '".$userid."' LIMIT 1 ;";
$sql mysql_query($sql);

if($sql != true) die('Es ist ein Fehler unterlaufen');
$userid++;
}

?>


Unsauber und hässlich aber zur veranschaulichung reichst Zunge raus Muss jetzt zu Spaarkasse und die macht gleich zu deswegen, keine Ahnung obs klappt etc.
weltenbummler
nein, leider funktioniert es nicht :-(

und ich komm da auch nicht mit klar.

Das Feld, wo die Passwörter drinnen sind heißt passwort in der tabelle teilnehmer.

hab versucht, es anzupassen, aber es läuft nicht :-(

trotzdem ganz herzlichen Dank an dich
Marvin0704
Hast du auch die Spaltennamen angepasst? Was kommt denn für eine Fehlermeldung?
weltenbummler
Ja, die hab ich angepasst...

Fehlermeldung:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/www/web250/html/winario/make_pass.php on line 25

Hier mein Code:
php:
1:
$sql2 mysql_num_rows($sql2);
Pilleslife
So wie es aussieht, wurde der SQL-Befehl zuvor nciht richtig ausgeführt. Hast du überhaupt eine Verbindung zur Datenbank hergestellt?
GluBBel
Zitat:
Original von weltenbummler
Ja, die hab ich angepasst...

Fehlermeldung:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/www/web250/html/winario/make_pass.php on line 25

Hier mein Code:
php:
1:
$sql2 mysql_num_rows($sql2);


Ersetz mal das ganze durch

php:
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:

<?php

// Zufallspasswort erstellen
  function make_passwort() {
    $ranpass "";
    $alpha = array ('a','b','c','d','e','f','g','h','i','j','k','l','m',
                           'n','o','p','q','r','s','t','u','v','w','x','y','z',
                           '0','1','2','3','4','5','6','7','8','9');
    srand((double)microtime()*1000000);
    shuffle($alpha);
    $rando rand(5,10); // zufällige Stringlänge deffinieren (von 5 bis 10 Zeichen)
    for ($z=0;$z<$rando;$z++) $carrier[$z] = next($alpha);
    for ($z=0;$z<$rando;$z++) $ranpass .= $carrier[$z];
    return $ranpass;
    } 


$userid 1;

$sql2 "Select * from users";
$sql2 mysql_query($sql2);
$sql2 mysql_num_rows($sql2);

while($sql2 $userid) {
$oass make_passwort();
$sql "UPDATE  `users` SET `pass` = '".$pass."' WHERE `userid` = '".$userid."' LIMIT 1 ;";
$sql mysql_query($sql);

if($sql != true) die('Es ist ein Fehler unterlaufen');
$userid++;
}

?>


Und poste die Fehlermeldung. Und nicht vergessen das ganze anzupassen Zunge raus
weltenbummler
ja, jetzt geht es, Passwörter werden eingetragen...

danke schön für die hilfe