Avatar billede php_wannabe Nybegynder
10. juni 2001 - 12:21 Der er 10 kommentarer og
2 løsninger

Random kode!

Hvordan kan man lave et script som selv sammensætter en lille kode?
eks:
gHdkhUfksjYbfhLK

Den skal hver gang scriptet bliver åbnet lave en ny kode..

help?

Jeg har desværre ikke flere points!
Avatar billede sproket Nybegynder
10. juni 2001 - 12:23 #1
Måske kan dette bruges!

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Function Password_generate(li_PasswordSize)
Dim lf_Random
Dim ls_Password
Dim Li_index

Randomize
For li_index = 1 to li_PasswordSize
lf_Random = Rnd()

IF lf_random < 0.5 then
ls_Password = ls_password & Cint(rnd()*10)
ElseIF lf_random < 0.75 then
ls_Password = ls_Password & Chr(Asc(\"a\") + Cint(rnd()*25))
Else
ls_Password = ls_Password & Chr(Asc(\"A\") + Cint(rnd()*25))
End If
Next
Password_generate = ls_password
END Function
</SCRIPT>

Hentes med:

<%dim password
password = Password_generate(20)%>

Hilsen
Sproket
Avatar billede php_wannabe Nybegynder
10. juni 2001 - 12:26 #2
Yrk.. Det skulle helst være i php *S*
Avatar billede morw Nybegynder
10. juni 2001 - 12:27 #3
Eller følgende som selv giver dig mulighed for at vælge hvilke tegn du vil bruge:

function randomString($len) {

        $allow = \"ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789\";
        srand((double)microtime()*1000000);
        for($i=0; $i<$len; $i++) {
                $password .= $allow[rand()%strlen($allow)];
        }
        return $password;

}

$kode = randomString(6);
Avatar billede henrik_ffc Nybegynder
10. juni 2001 - 12:38 #4

$laengde = $mt_rand(10,15);  // eller konstant ???
$antal = 0;
$kode = \"\";

while ($antal < $laengde)
{
  $tilfaeldig = mt_rand(0,25); // tal mellem 0 og 25
  $tilfaeldig = 65 + $tilfaeldig + ( mt_rand(0,1) * 32 ); // tal mellem 65 og 90 ELLER 97 og 122
  $kode .= chr($tilfaeldig);
}
Avatar billede razor Nybegynder
10. juni 2001 - 12:46 #5
morw >
$password .= $allow[rand()%strlen($allow)];
skal nok være
$password .= $allow[rand()%(strlen($allow)-1)];

iøvrigt vil jeg lige benytte chancen til at reklamere lidt for min side :)

http://razor.dk/php/functions/

Her kunne man have fundet:
http://razor.dk/php/functions/#password
Avatar billede limemedia Nybegynder
10. juni 2001 - 13:26 #6
Hvorfor ikke \"blot\" anvende en md5(uniqid(rand())); der genererer en 32bit \"kode\" ?
Avatar billede razor Nybegynder
10. juni 2001 - 14:18 #7
Jeg har i min funktion taget højde for at nogen evt. kan læse I som l og 0 som O
Avatar billede limemedia Nybegynder
10. juni 2001 - 14:22 #8
razor >> lagde jeg ikke mærke til... har ikke engang skænket det en tanke
Avatar billede morw Nybegynder
10. juni 2001 - 15:24 #9
razor >>

Hvorfor minus 1? Så kommer det sidste tegn vel ikke med?
Avatar billede razor Nybegynder
11. september 2002 - 09:16 #10
<?php
function password ($len=8) {
  $chars = "abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ123456789";
  mt_srand( (double) microtime() * 1000000);
  for ($i=1;$i<=$len;$i++) $out .= $chars[mt_rand(0,(strlen($chars)-1))];
  return $out;
}
?>

Den simple grund at den starter fra nul :) - Se fx:

  $foo = array("bar", "baz", "boing");
  print $foo[2]; # printer boing
  print $foo[sizeof($foo)-1]; # den er tre stor, og skal allokere 2'eren :)

Undskyld det "lidt" sene svar :)
Avatar billede Slettet bruger
11. september 2002 - 09:18 #11
Avatar billede mikze Nybegynder
20. september 2005 - 18:32 #12
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester