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
Zoals daar boven gepost ik heb bv een pagina met:

<?

$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.
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:
<?
// POST
if ($HTTP_POST_VARS["p"])
{
echo "\$p is gezet naar: $HTTP_POST_VARS[p]";
}
?>

En dit met GET dus (precies hetzelfde eigenlijk)
<?
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.
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!
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!
Ik geloof dat alles het nu doet, eindelijk... nu nog een keertje Mysql erop ofzow, en dan ook dat nog leren...

Reageren