[PHP] CookiesysteemPJE --> verkeerde result?

Pagina: 1
Acties:

  • Cheater
  • Registratie: Januari 2001
  • Laatst online: 00:09
Ik heb een klein cookiesysteempje van phpfreaks.nl gerukt.

http://www.phpfreakz.nl/artikelen.php?aid=43

Omdat ik al wat foutmeldingen had bij het inlog scherm, heb ik de search gebruikt en na het lezen van wat posts, heb ik
<?
Setcookie("username", $nick, Time()+3600);
Setcookie("userpass", $pass, Time()+3600);
Setcookie("userhash", $hash, Time()+3600);
?>
helemaal bovenaan de pagina gezet.
(script een beetje veranderd omdat ik geen ID's gebruik.

Dit staat verder op de loginpagina:
PHP:
1
2
3
4
5
6
<?
        // Het geheime woord 
        $secretword = "blaat"; 

        $hash = md5($username.$userpass.$secretword); 
?>

Dit moet de pagina zijn, waar het gecontroleerd wordt. (weliswaar in een ander frame)
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
if (!$submit)
{
$secretword = "blaat"; 

// maakt een hash van de cookie gegevens. 
$hash = md5($HTTP_COOKIE_VARS["username"].$HTTP_COOKIE_VARS["userpass"].$secretword); 

// Oke de hash is gemaakt, nu de nieuwe hash met de hash in de cookie vergelijken. 

if($hash == $userhash) { 
      echo "Oke alles is goed!!!";
} else { 
      echo "Er is met het koekje geknoeid!!!"; 
}
?>

Maar hij geeft steeds aan: Er is met het koekje geknoeid

Wat wil aangeven dat $hash niet overeenkomt met $userhash iemand een idee waarom dit is?

  • bartvb
  • Registratie: Oktober 1999
  • Laatst online: 15-09 12:33
Tja, begin eens met het printen van die $hash en $userhash en kijk wat de verschillen zijn..

  • Grum
  • Registratie: Juni 2001
  • Niet online
my best guess is dat jij nix in $hash hebt zitten op et moment dat je

Setcookie("userhash", $hash, Time()+3600);

doet

  • Cheater
  • Registratie: Januari 2001
  • Laatst online: 00:09
owkee... maar hoe moet je een cookie dan zetten.

Ten eerste. Hij moet helemaal bovenaan.
En ten tweede, een variabel dat eerder komt, dan dat hij benoemt wordt... kan toch niet?

Dus eerst zeggen dan er iets met $test moet gebeuren, en dan pas een waarde in $test zetten. Klinkt onlogisch... is het dat ook? en is het in dit geval ook zo?

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

PF -> WS

  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

Op woensdag 24 oktober 2001 18:08 schreef Cheater het volgende:
owkee... maar hoe moet je een cookie dan zetten.

Ten eerste. Hij moet helemaal bovenaan.
En ten tweede, een variabel dat eerder komt, dan dat hij benoemt wordt... kan toch niet?

Dus eerst zeggen dan er iets met $test moet gebeuren, en dan pas een waarde in $test zetten. Klinkt onlogisch... is het dat ook? en is het in dit geval ook zo?
Het setten van een cookie hoeft niet helemaal bovenaan je script. Het moet alleen gebeurt zijn voordat je tekst naar de browser stuurt, dus je kan best even wat variabelen setten en daarna het cookie plaatsen.

Today's subliminal thought is:

Pagina: 1