ingelogd na uitloggen
Ik kwam vandaag een raar probleempje tegen.
Ik ben bezig met een admin panel voor mijn site.
Probleem:
Nu log ik in op de homepagina. En dan ben ik ingelogd.
Maar dan ga ik naar site.nl/admincp dan ben ik netjes ingelogd.
Maar log ik uit dan blijf ik ingelogd en zijn de session vars weg .
Maar op admincp blijven die session variabelen staan.
Iemand een idee hoe dat komt?
Session_start ontbreekt niet want die staat altijd op index.php waar loguit-module via een switch word geincluded.
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
//loguit-module.php
<?php
session_destroy();
header('Location: /');
//admin-cp/index.php
session_start();
echo $_SESSION; //weergeeft {IP} jordi
?>
<?php
session_destroy();
header('Location: /');
//admin-cp/index.php
session_start();
echo $_SESSION; //weergeeft {IP} jordi
?>
Gewijzigd op 25/04/2011 11:39:32 door Jordi Kroon
Ik denk dat je iets fout doet bij de controle of een gebruiker al dan niet is ingelogd. Kan je dat stukje code even tonen?
Code (php)
Maar als het hieraan ligt dan zou hij het menu die hij op de homepagina weergeeft ook niet werken . Want die werkt met dezelfde controle en die werkt 100%
$_SESSION = array();
Dan moet er wel eerst een session zijn.
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
session_start();
session_destroy();
// nu is de session vernietigd
session_start();
// en u heb je een volledig nieuwe session
?>
session_start();
session_destroy();
// nu is de session vernietigd
session_start();
// en u heb je een volledig nieuwe session
?>
- SanThe - op 25/04/2011 17:14:13:
Jij wilt met session_destroy() een session beëindigen.
Dan moet er wel eerst een session zijn.
Dan moet er wel eerst een session zijn.
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
session_start();
session_destroy();
// nu is de session vernietigd
session_start();
// en u heb je een volledig nieuwe session
?>
session_start();
session_destroy();
// nu is de session vernietigd
session_start();
// en u heb je een volledig nieuwe session
?>
Quote:
Session_start ontbreekt niet want die staat altijd op index.php waar loguit-module via een switch word geincluded.
Overigens, als de TS session_destroy() aanroept zonder dat session_start() is aangeroepen, geeft dit een error. (uiteraard, als PHP errors aanstaan, maar tegenwoordig staat dat standaard aan)
Maar ik vind het raar dat met dezelfde methode het wel op index.php werkt maar niet op admincp/index.php
Jordi kroon op 25/04/2011 11:37:14:
Session_start ontbreekt niet want die staat altijd op index.php
En op admincp/index.php?
Helemaal bovenaan de pagina
Hoe check je of je bent ingelogd?
Jordi kroon op 25/04/2011 11:47:21:
Alles gaat op hetzelfde manier als op andere pagina's het blijft vreemd
Ik ben wel tot de conclusie gekomen dat hij dit alleen in firefox 4 doet en niet in internet explorer.
Ik denk zelf dat het temaken heeft met de cache .
Maar hoe los ik dit op.
Probeer deze code:
Code (php)
Misschien helpt het? ....
Gewijzigd op 06/05/2011 23:15:46 door Danny L