Functie rand() werkt niet...

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Bo az

Bo az

15/09/2003 19:28:00
Quote Anchor link
Ik gebruik PHPtraid om locaal php te testen...
dat is dus met apache enz.

Als ik hier in bv:

$var[0] = rand (1,20);

doe geeft ie altijd 1 en bij de volgende:

$var[1] = rand (1,20);

altijd 15

enz steeds het zelfde getal hoe vaak ik ook op F5 druk...

Als ik m dan online zet werkt rand() wel gewoon...

hoe kan ik dit oplossen, iemand een idee?

Al vast bedankt,
BoAz
 
PHP hulp

PHP hulp

18/04/2024 16:37:54
 
Miranda Verburg

Miranda Verburg

15/09/2003 19:30:00
Quote Anchor link
haai boaz, misschien is die functie van phptriad een beetje bugie?? ik ga even douchen dus kan niet meteen antwoorden, maar welke versie van php gebruik je??
 
Bo az

Bo az

15/09/2003 23:15:00
Quote Anchor link
Die standaard in dat programma zit ergens begin 4 ofzow, kan het niet echt ergens vinden...
 
B a s
Beheerder

B a s

16/09/2003 08:54:00
Quote Anchor link
Quote:
$var[0] = rand (1,20);

doe geeft ie altijd 1 en bij de volgende:

$var[1] = rand (1,20);

altijd 15
Dit is logies want als je twee waardes aan rand() geeft, geeft hij een willekeurig nummer tussen de 1 en 20.

rand() geeft namelijk een willekeurig nummer tussen de twee waardes (1 en 20) sinds PHP versie 4.2.0.
 
Brian Valenburg

Brian Valenburg

16/09/2003 12:37:00
Quote Anchor link
http://www.phphulp.nl/php/tutorials/?cat=1&id=55

dit zijn keygenerators die rand() gebruiken
Gewijzigd op 16/09/2003 12:37:00 door Brian Valenburg
 
Bo az

Bo az

16/09/2003 17:27:00
Quote Anchor link
Quote:
Quote:
$var[0] = rand (1,20);

doe geeft ie altijd 1 en bij de volgende:

$var[1] = rand (1,20);

altijd 15
Dit is logies want als je twee waardes aan rand() geeft, geeft hij een willekeurig nummer tussen de 1 en 20.

rand() geeft namelijk een willekeurig nummer tussen de twee waardes (1 en 20) sinds PHP versie 4.2.0.


Dat snap ik...

Maar het probeem is dus dat als je de pagina vernieuwd of opnieuw opend er hetzelfde nummer terug komt en das is teeds zo echt al iets van 100 keer geprobeerd... Alleen als ik m op internet bij een host zet dat doet ie het wel dan komt er dus idd iedere keer een ander getal tussen de 1 en de 20 uit of zoals ik m voor kraak de kluis gebruikt heb tussen de 1 en de 26
Gewijzigd op 16/09/2003 17:27:00 door Bo az
 
B a s
Beheerder

B a s

16/09/2003 17:36:00
Quote Anchor link
hmm vaag.. :s
 
Bo az

Bo az

17/09/2003 18:01:00
Quote Anchor link
idd erg vaag...

Is er misschien iemand die een goede manier weet om locaal php (liefst ook mysql) te testen...???
Het moet wel op een sociale manier te installeren zijn, niet dat ik apache helemaal apart moet in stellen enz, ik wil wel (graag) met Apache want dan kan ik m eventueel ook gebruiken op t internet...
Gewijzigd op 17/09/2003 18:02:00 door Bo az
 
Brian Valenburg

Brian Valenburg

17/09/2003 18:14:00
Quote Anchor link
http://www.easyphp.org/telechargements/dn.php?F=easyphp1-6.php3

download link.. dit is een pakket met apache, mysql en php.. heb het zelf nog nooit geprobeerd mara vond dit op internet :) probeer maar ff en laat weten of het werkt
 
Bo az

Bo az

17/09/2003 20:35:00
Quote Anchor link
Die werkte niet, ik kreeg een error en nog in het frans ook...

Ik heb nu phpdev geinstalleerd, ook al niks, nu werkt het volgende niet meer:

pagina.php?p=post

en ook bij buttons als je een hidden maakt:

<input type='hidden' name='p' value='post'>

en als ik het in de url balk intyp werkt het dus ook niet...
 
Brian Valenburg

Brian Valenburg

17/09/2003 21:28:00
Quote Anchor link
Hoe roep je de variabele aan? via $p?
 
Bo az

Bo az

17/09/2003 22:30:00
Quote Anchor link
Zoals daar boven gepost ik heb bv een pagina met:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?

$leeg
= "";

if ($p == $leeg)
{

//laat dit zien
echo "<a href='pagina.php?p=post'>klik hier voor de 2e pagina</a>";
}


elseif ($p == "post")
{

//laat pagina 2 (post) zien.
}

?>


Dan kan je normaal ook in de url balk dit in typen:

pagina.php?p=post

en dan gaat ie meteen naar de 2e pagina maar het werkt niet...

Edit: allebij niet, als je klikt niet en als je het intypt niet.
Gewijzigd op 17/09/2003 22:32:00 door Bo az
 
Brian Valenburg

Brian Valenburg

18/09/2003 08:37:00
Quote Anchor link
ik weet dan al waarom het niet werkt.

met php versie 4.2.3 en hoger (dacht dat het deze versie was tenminste) kun je niet meer $p gebruiken. Je moet nu $HTTP_POST_VARS["$p"] gebruiken (in statements) en $HTTP_POST_VARS[p] wanneer je het echot. $HTTP_POST_VARS[] kun je dus alleen gebruiken wanneer er een formulier verzonden is. (die de action POST gebruikt).

Wanneer je GET gebruikt in een formulier, of gewoon een linkje naar een pagina gebruikt (bijv. www.domein.nl/pagina.php?p=1) dan moet je $HTTP_GET_VARS[] gebruiken.

Voorbeelden:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?
// POST
if ($HTTP_POST_VARS["p"])
{

     echo "\$p is gezet naar: $HTTP_POST_VARS[p]";
}

?>


En dit met GET dus (precies hetzelfde eigenlijk)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?
if ($HTTP_GET_VARS["p"])
{

    echo "\$p is gezet naar: $HTTP_GET_VARS[p]";
}

?>


Let hier dus op de quotes ("). Dezelfde methode moet je gebruiken met cookies ($HTTP_COOKIE_VARS[]) en sessions ($HTTP_SESSION_VARS[]).

Goed onthouden dus, in if, elseif of andere statements de $HTTP var MET quotes gebruiken en anders dus niet. Ben hier zelf achter gekomen en spreek dus uit ervaring. Weet niet hoe het anders moet of kan maar het werkt zo in ieder geval altijd.
 
Bo az

Bo az

18/09/2003 15:06:00
Quote Anchor link
Je zou denken hoe verder PHP ontwikkeld hoe makkelijker het wordt maar NOT!

Dat betekend dus dat ik dan zo'n beetje al mijn pagina (een paar honderd in middels) helmaal moet aanpassen... Ik ga proberen om in het vervolg zo te werken maar ben nog wel opzoek naar een locaal test programma waarbij je gewoon $p kan doen...

Ik ga wel even proberen om een oude versie van phpdev te vinden, als iemand wat anders weet mag die het ook zeggen. Graag zelfs!

In iedergeval bedankt Brian!
 
Bo az

Bo az

18/09/2003 15:49:00
Quote Anchor link
Ik heb nu easyphp versie 1.3 gedownload en die werkt tot nog toe goed!

Bedankt allemaal!

Edit: Werkt al weer niet ******* ******* *****
Ik wordt er ziek van, rand() geeft steeds het zlefde getal!
Gewijzigd op 18/09/2003 15:57:00 door Bo az
 
B a s
Beheerder

B a s

18/09/2003 16:11:00
Quote Anchor link
vaag zeg :s
 
Bo az

Bo az

25/09/2003 19:48:00
Quote Anchor link
Ik geloof dat alles het nu doet, eindelijk... nu nog een keertje Mysql erop ofzow, en dan ook dat nog leren...
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.