session breekt af

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Fjodor Klondyke

Fjodor Klondyke

07/07/2009 13:38:00
Quote Anchor link
met een session variable stuur ik info van pagina naar pagina. om te controleren of iemand wel toegangsrechten heeft.

Nu wordt ik op een gegeven moment steeds naar de inlogpagina gestuurd. (dit gebeurt steeds bij dezelfde pagina's).

als ik de waarde van de session variable echo blijkt dat die veranderd is:
het was iets als $_SESSION['iets'] = '12wscde4rfvbgt567yhnbgt5rf' en op de pagina waar ie er uit vliegt geeft ie dan :
$_SESSION['iets'] = Object id #1

Weet iemand wat dit betekent? Waar kan dit door veroorzaakt worden?Waarom geeft ie niet de waarde weer?

Vast bedankt,

Fjodor
 
PHP hulp

PHP hulp

03/01/2025 21:03:54
 
Midas

Midas

07/07/2009 13:54:00
Quote Anchor link
Zo hoort het eruit te zien. Als het bij jou anders is dan moet je het oplossen of hier code laten zien.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
session_start();
$_SESSION['iets'] = 'waarde';
var_dump($_SESSION);
?>
 
Fjodor Klondyke

Fjodor Klondyke

07/07/2009 14:04:00
Quote Anchor link
iedere pagina begint met session_start().

de code die ik gebruik is:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
session_start();

$her                       = $_SERVER['REMOTE_ADDR'];
$ses                       = session_id();
$_SESSION['iets']    = sha1(md5($her . $ses));
?>

Deze code wordt bij het inloggen gemaakt.

Dan wordt op ieder pagina deze code weer gemaakt, maar dan met andere namen en die twee worden vergeleken.

Zijn de twee session variables niet gelijk dan gaat ie terug naar de inlogpagina:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
session_start();

$her  = $_SERVER['REMOTE_ADDR'];
$ses  = session_id();
$_SESSION['nogiets']    = sha1(md5($van . $sid));

if($_SESSION['iets'] != $_SESSION['nogiets'] ){
    header("Location:" .  $loginpagina  ,false);
    exit;
}


?>
Gewijzigd op 01/01/1970 01:00:00 door Fjodor Klondyke
 
TJVB tvb

TJVB tvb

07/07/2009 14:40:00
Quote Anchor link
Volgens mij is dit niet je daadwerkelijke code. Anders moet je een stel fouten krijgen.
Post eens de daadwerkelijke relevante code
 
Fjodor Klondyke

Fjodor Klondyke

07/07/2009 14:55:00
Quote Anchor link
Ik heb het begin van de code overgetypt en de namen van de variables veranderd, en er staan, inderdaad een paar typefouten in.

Maar het gaat niet om de typefouten. Met andere pagina's werkt het script wel goed.

Op een gegeven moment wordt de waarde van de variable vervangen door een object, en ik snap niet hoe dat kan.

Je zou verwachten dat er dan ergens iets staat als $_SESSION['iets'] = new eenObject();
Maar zoiets staat nergens. Er is nergens een class/object of wat dan ook met de naam 'iets'.
 
Afra ca

Afra ca

07/07/2009 15:07:00
Quote Anchor link
En je maakt geen gebruik vvan externe classes die toevallig je session overschrijven o.id.?
 
Fjodor Klondyke

Fjodor Klondyke

07/07/2009 15:47:00
Quote Anchor link
Ach, helemaal niet aangedacht. Ik gebruik op die pagina gd-library. Het zou inderdaad kunnen dat daar dezelfde naam voorkomt.

Bedankt, ik zal de namen eens aanpassen en kijken hoe ie dan reageert.
 
Fjodor Klondyke

Fjodor Klondyke

07/07/2009 16:23:00
Quote Anchor link
ik heb de namen aangepast en alles werkt nu perfect.

Bedankt.
 



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.