/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
srand()
Fra : Axel Bohler


Dato : 22-08-02 23:21

Hej,

jag använder följande script för att få ett slumpmässigt tal. Men varje gång
jag kör skriptet får jag samma tal. För att få ett nytt tall måste jag spara
php-filen igen (det behövs ingen ändring av filen). Skulle vara mycket
tacksam om nån kunde hjälpa mig med detta problem!

<html>
<body>

<?php
srand ((double)microtime()*1000000);
$randval = rand();
echo $randval;
?>

</body>
</html>

Webserver: Xitami
OS: W2K

Axel




 
 
Morten Krogh Sørense~ (23-08-2002)
Kommentar
Fra : Morten Krogh Sørense~


Dato : 23-08-02 11:23

Hej Axel,

Du skal definere min og max på rand() = rand(min,max) Eks: $randval =
rand(1,10); -> vil give tilfældigt (slumpmässigt) tal mellem 1 og 10.

Venlig hilsen
Morten Krogh Sørensen
www.morten-krogh.dk

"Axel Bohler" <axel.bohler@swipnet.se> wrote in message
news:zqd99.26872$t4.19785@nntpserver.swip.net...
> Hej,
>
> jag använder följande script för att få ett slumpmässigt tal. Men varje
gång
> jag kör skriptet får jag samma tal. För att få ett nytt tall måste jag
spara
> php-filen igen (det behövs ingen ändring av filen). Skulle vara mycket
> tacksam om nån kunde hjälpa mig med detta problem!
>
> <html>
> <body>
>
> <?php
> srand ((double)microtime()*1000000);
> $randval = rand();
> echo $randval;
> ?>
>
> </body>
> </html>
>
> Webserver: Xitami
> OS: W2K
>
> Axel
>
>
>



Johan Holst Nielsen (23-08-2002)
Kommentar
Fra : Johan Holst Nielsen


Dato : 23-08-02 11:58



Morten Krogh Sørensen wrote:
> Hej Axel,
>
> Du skal definere min og max på rand() = rand(min,max) Eks: $randval =
> rand(1,10); -> vil give tilfældigt (slumpmässigt) tal mellem 1 og 10.
>

Nej disse er ikke nødvendige...
Læs dokumentationen..

http://dk.php.net/rand

mvh
Johan


Morten Krogh Sørense~ (23-08-2002)
Kommentar
Fra : Morten Krogh Sørense~


Dato : 23-08-02 12:09

Hej Johan,

Når jeg læser på http://dk.php.net/rand og
http://dk.php.net/manual/en/function.getrandmax.php er en af kommentarene:

"Surprisingly enough, rand(1,getrandmax()) doesn't work on some machines."

Så er det måske ikke så dum en idé at definere rand(), hvis nu maskinen ikke
kan løse opgaven med at finde RAND_MAX?

Mvh Morten

>Johan Holst Nielsen" <johan@weknowthewayout.com> wrote in message
news:3D66153F.7020902@weknowthewayout.com...
>
>
> Morten Krogh Sørensen wrote:
> > Hej Axel,
> >
> > Du skal definere min og max på rand() = rand(min,max) Eks: $randval =
> > rand(1,10); -> vil give tilfældigt (slumpmässigt) tal mellem 1 og 10.
> >
>
> Nej disse er ikke nødvendige...
> Læs dokumentationen..
>
> http://dk.php.net/rand
>
> mvh
> Johan
>



Johan Holst Nielsen (23-08-2002)
Kommentar
Fra : Johan Holst Nielsen


Dato : 23-08-02 12:22


> Når jeg læser på http://dk.php.net/rand og
> http://dk.php.net/manual/en/function.getrandmax.php er en af kommentarene:
>
> "Surprisingly enough, rand(1,getrandmax()) doesn't work on some machines."
>
> Så er det måske ikke så dum en idé at definere rand(), hvis nu maskinen ikke
> kan løse opgaven med at finde RAND_MAX?

Ja, men har aldrig oplevet det, dermed påstår jeg ikke at det ikke findes.
Men spørgsmålet er så:

1. Kommentaeren er skrevet i år 2000? Gad vide om det ikke er rettet?
2. At GetRandMax() funktionen ikke virker, er ikke ens betydende med at
man behøves at definere range i rand() (tror jeg ikke på) med mindre der
er en major bug.

Problemet kan måske opstå hvis man kører det på Windows maskiner hvor
RAND_MAX muligvis kan være for høj? (rent gæt... men på Windows er der
en limit range i modsætning til Linux/Unix (af hvad jeg ved af))...

Så rand() burde virke uden at angive parametre, ellers burde kommentaren
OGSÅ være skrevet under rand() funktionen? Hvilket den ikke er...

mvh
Johan


Morten Krogh Sørense~ (23-08-2002)
Kommentar
Fra : Morten Krogh Sørense~


Dato : 23-08-02 12:35

Hej Johan,

Jeg testede lige funktionen på min server, og der virkede den også fint uden
min og max. Men så kan jeg ikke svare på, hvorfor funktionen ikke virker for
Axel.

Mvh Morten

"Johan Holst Nielsen" <johan@weknowthewayout.com> wrote in message
news:3D661AF3.3040006@weknowthewayout.com...
>
> > Når jeg læser på http://dk.php.net/rand og
> > http://dk.php.net/manual/en/function.getrandmax.php er en af
kommentarene:
> >
> > "Surprisingly enough, rand(1,getrandmax()) doesn't work on some
machines."
> >
> > Så er det måske ikke så dum en idé at definere rand(), hvis nu maskinen
ikke
> > kan løse opgaven med at finde RAND_MAX?
>
> Ja, men har aldrig oplevet det, dermed påstår jeg ikke at det ikke findes.
> Men spørgsmålet er så:
>
> 1. Kommentaeren er skrevet i år 2000? Gad vide om det ikke er rettet?
> 2. At GetRandMax() funktionen ikke virker, er ikke ens betydende med at
> man behøves at definere range i rand() (tror jeg ikke på) med mindre der
> er en major bug.
>
> Problemet kan måske opstå hvis man kører det på Windows maskiner hvor
> RAND_MAX muligvis kan være for høj? (rent gæt... men på Windows er der
> en limit range i modsætning til Linux/Unix (af hvad jeg ved af))...
>
> Så rand() burde virke uden at angive parametre, ellers burde kommentaren
> OGSÅ være skrevet under rand() funktionen? Hvilket den ikke er...
>
> mvh
> Johan
>



Johan Holst Nielsen (23-08-2002)
Kommentar
Fra : Johan Holst Nielsen


Dato : 23-08-02 12:47



Morten Krogh Sørensen wrote:
> Hej Johan,
>
> Jeg testede lige funktionen på min server, og der virkede den også fint uden
> min og max. Men så kan jeg ikke svare på, hvorfor funktionen ikke virker for
> Axel.

Ja, hvis han kører over 4.2+ er det ikke engang nødvendig at seede rand()

mvh
Johan


Søg
Reklame
Statistik
Spørgsmål : 177520
Tips : 31968
Nyheder : 719565
Indlæg : 6408659
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste