Session zet niet door..
Beste php'ers,
bij het inloggen maak ik 2 sessies aan, sessie username en sessie login. De sessie username wil ik later ophalen, maar hij geeft de naam niet weer.. Bij het inloggen heb ik nog even getest of hij de sessie aanmaakt met die naam, en dat is het wel het geval. Maar waarom hij de sessie later niet ophaald snap ik niet..
heeft iemand een idee?
\
bij het inloggen maak ik 2 sessies aan, sessie username en sessie login. De sessie username wil ik later ophalen, maar hij geeft de naam niet weer.. Bij het inloggen heb ik nog even getest of hij de sessie aanmaakt met die naam, en dat is het wel het geval. Maar waarom hij de sessie later niet ophaald snap ik niet..
heeft iemand een idee?
\
als je cookies niet accepteert dan werkt sessions niet.
Maar waarom werkt het dan wel op dezelfde pagina?
En hoe zou ik dat kunnen veranderen dan?
En hoe zou ik dat kunnen veranderen dan?
Cookies kunnen in en uitgeschakeld worden in de (beveiligings)instellingen van je browser.
in hetzelfde script gaat je session niet verloren maar bij de volgende pagina die wordt opgehaald zal het session_id eerst uit de cookie opgehaald worden. Deze cookie wordt bij de gebruiker opgeslagen overigens. een tweede voorwaarde is dat je iedere pagina begint met session_start();
in hetzelfde script gaat je session niet verloren maar bij de volgende pagina die wordt opgehaald zal het session_id eerst uit de cookie opgehaald worden. Deze cookie wordt bij de gebruiker opgeslagen overigens. een tweede voorwaarde is dat je iedere pagina begint met session_start();
staat er session_start(); aan het begin van de pagina?
De coockies staan aan in mijn browser.
Ik maak in de inlog pagina een sessie aan:
En dan haal ik in een andere pagina de sessie weer op:
In beide pagina's staat session_start();
dus hij zou moeten werken toch?
Ik maak in de inlog pagina een sessie aan:
En dan haal ik in een andere pagina de sessie weer op:
In beide pagina's staat session_start();
dus hij zou moeten werken toch?
ja zou moeten werken, het enigste dat ik nog kan bedenken is dat $userdb leeg is of een array is of iets dergelijks. je kan natuurlijk testen door er even
$_SESSION['username'] = "testnaam";
van te maken..
anders zou ik het niet weten. session_start(); moet voor elke vorm van output aangeroepen worden, maar anders krijg je er ook een foutmelding van dacht ik.
$_SESSION['username'] = "testnaam";
van te maken..
anders zou ik het niet weten. session_start(); moet voor elke vorm van output aangeroepen worden, maar anders krijg je er ook een foutmelding van dacht ik.
Als ik inderdaad: $_SESSION['username'] = "test";
doe, dan leest hij alsnog de naam niet uit..
Toevoeging op 30/09/2012 12:29:26:
Dus hij voert de de sessie op de volgende pagina niet uit, hoe kan dit?
doe, dan leest hij alsnog de naam niet uit..
Toevoeging op 30/09/2012 12:29:26:
Dus hij voert de de sessie op de volgende pagina niet uit, hoe kan dit?
probeer eens:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
session_start();
$_SESSION['username'] = "testnaam";
$status = session_status();
if($status == PHP_SESSION_DISABLE)
echo "sessions are disabled.";
if($status == PHP_SESSION_NONE)
echo "sessions are enabled, but none exists.";
if($status == PHP_SESSION_ACTIVE)
echo "sessions are enabled, and one exists.";
?>
session_start();
$_SESSION['username'] = "testnaam";
$status = session_status();
if($status == PHP_SESSION_DISABLE)
echo "sessions are disabled.";
if($status == PHP_SESSION_NONE)
echo "sessions are enabled, but none exists.";
if($status == PHP_SESSION_ACTIVE)
echo "sessions are enabled, and one exists.";
?>
Gewijzigd op 30/09/2012 12:36:16 door Frank Nietbelangrijk
maar session_status(); bestaat niet zegt hij
Fatal error: Call to undefined function session_status()
Fatal error: Call to undefined function session_status()
Heb je wel PHP 5.4?
Quote:
session_status
(PHP >=5.4.0)
session_status — Returns the current session status
(PHP >=5.4.0)
session_status — Returns the current session status
hoe kan ik controleren of ik 5.4.0 heb?
Probeer:
Zet error_reporting[E_ALL] eens aan.
Current PHP version: 5.2.17
Hmm.. hoe kan ik dit dus upgrade?
Hmm.. hoe kan ik dit dus upgrade?
Dat ligt eraan of je bij een hostingprovider zit, een pakket zoals XAMPP gebruikt of dat je het zelf hebt ingesteld. Bij een hostingprovider zal je het moeten vragen, voor XAMPP moet je denk ik een nieuwe versie downloaden en als je het zelf hebt ingesteld zul je een nieuwe versie moeten downloaden vanaf php.net
Nouja ik zit bij een hostingprovider.
Maar kan het ook de fout zijn van de session? want ik neem aan
dat het versie van php niet de fout is van de session toch?
Maar kan het ook de fout zijn van de session? want ik neem aan
dat het versie van php niet de fout is van de session toch?
Als ik even terugkom op je probleem, dan is waarschijnlijk $userdb geen string of int, wat het wel moet zijn. Als het een array, resource of object is zal je het er anders in moet zetten.
EDIT: dit is echt bizar.. ik heb niets verandert maar nu doen de sessions het wel? iemand een verklaring?




