login  Naam:   Wachtwoord: 
Registreer je!
 Forum

nieuw wachtwoord opvragen

Offline Warbringer - 05/08/2007 20:05
Avatar van WarbringerOnbekend Ik wil graag per email een nieuw wachtwoord sturen wanneer iemand dit vraagd. Kan iemand mij svp uitleggen hoe dit moet?

b.v. password nu is TEST.

hoe maak ik dan een wachtwoord aan (random letters en of cijfers)?
die zet ik dan in de database, en mail hem ze nieuwe wachtwoord toe zeg maar.

rand(10,100)
rand(10,100)
rand(10,100)

volgende vraag, ik heb bovenstaande randoms. welke mij 3 getallen
geeft, hoe kan ik deze aan elkaar plakker en in één variable zetten?

dus bijvoorneeld 80 102 173 wordt dan 80102173 ...

groetjes

6 antwoorden

Gesponsorde links
Offline Ultimatum - 05/08/2007 20:13 (laatste wijziging 05/08/2007 20:13)
Avatar van Ultimatum PHP expert
  1. <?php
  2. echo rand(10, 100) . rand(10, 100) . rand(10, 100);
  3. ?>
Offline Warbringer - 05/08/2007 21:29
Avatar van Warbringer Onbekend gewoon een echo doen met tussen elke commando een punt?...
dat is simpel haha dankjewel 
Offline Ibrahim - 05/08/2007 21:32
Avatar van Ibrahim PHP expert en in een variabele zetten doe je door echo te vervangen met $varnaam =
Offline Warbringer - 05/08/2007 21:35
Avatar van Warbringer Onbekend oke, die rand... kan dat ook met letters? dus dat ik een nieuw password genereer bestaand uit cijfers EN letters?
Offline Dark_Paul - 05/08/2007 21:45 (laatste wijziging 05/08/2007 21:48)
Avatar van Dark_Paul PHP ver gevorderde Maak een array met de letters a-z en de cijfers 0-9. Vraag de lengte van de array. Dan laat je een for-loopje lopen, totdat het aantal tekens van het nieuwe wachtwoord is bereikt. In de for-loop haal je steeds een random getal op tussen 0 en de lengte van de array met tekens -1 (ivm laatste index). Vervolgens zet je dat aan elkaar in een string ($new .= $char) of in een array die je vervolgens implode ($new[] = $char).

Edit:
Als je dit ook nog met hoofdletters wilt, kan dat op 2 manieren.
1: Zet alle hoofdletters erbij in je array met tekens;
2: Zet in de for-loop (waar je het teken kiest) een round(rand(0,1)).
Bij 0 laat je het teken klein, bij 1 haal je er strtoupper() overheen (is in een simpele (verkortte) if-statement te fixen).
Bijvoorbeeld:
  1. <?
  2. $char = (round(rand(0,1)) == 1) ? strtoupper($char) : $char;
Offline Ibrahim - 05/08/2007 21:53 (laatste wijziging 05/08/2007 22:04)
Avatar van Ibrahim PHP expert
  1. <?php
  2.  
  3. function newPass( $iLenght = 12 )
  4. {
  5. $aLetters = range('a', 'z');
  6. $aNumbers = range(0, 10 );
  7.  
  8. $sLetters = implode('', $aLetters );
  9. $sNumbers = implode('', $aNumbers );
  10.  
  11. $sNewPass = str_shuffle( $sLetters . $sNumbers );
  12.  
  13. return substr( $sNewPass, 0, $iLength );
  14. }
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.198s