Session zet niet door..

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jerry php

Jerry php

30/09/2012 11:39:46
Quote Anchor link
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?
\
 
PHP hulp

PHP hulp

06/05/2021 08:38:08
 
Frank Nietbelangrijk

Frank Nietbelangrijk

30/09/2012 11:49:17
Quote Anchor link
als je cookies niet accepteert dan werkt sessions niet.
 
Jerry php

Jerry php

30/09/2012 11:50:09
Quote Anchor link
Maar waarom werkt het dan wel op dezelfde pagina?

En hoe zou ik dat kunnen veranderen dan?
 
Frank Nietbelangrijk

Frank Nietbelangrijk

30/09/2012 11:55:55
Quote Anchor link
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();
 
Tobias Tobias

Tobias Tobias

30/09/2012 12:04:25
Quote Anchor link
staat er session_start(); aan het begin van de pagina?
 
Jerry php

Jerry php

30/09/2012 12:05:42
Quote Anchor link
De coockies staan aan in mijn browser.

Ik maak in de inlog pagina een sessie aan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$_SESSION['username'] = $userdb;
//die $userdb heb ik eerder gemaakt in de pagina.


En dan haal ik in een andere pagina de sessie weer op:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
echo "Welkom terug ".$_SESSION['username'];


In beide pagina's staat session_start();

dus hij zou moeten werken toch?
 
Frank Nietbelangrijk

Frank Nietbelangrijk

30/09/2012 12:18:49
Quote Anchor link
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.
 
Jerry php

Jerry php

30/09/2012 12:22:49
Quote Anchor link
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?
 
Frank Nietbelangrijk

Frank Nietbelangrijk

30/09/2012 12:35:10
Quote Anchor link
probeer eens:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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.";

?>
Gewijzigd op 30/09/2012 12:36:16 door Frank Nietbelangrijk
 
Jerry php

Jerry php

30/09/2012 12:39:37
Quote Anchor link
maar session_status(); bestaat niet zegt hij

Fatal error: Call to undefined function session_status()
 
Koen Vlaswinkel

Koen Vlaswinkel

30/09/2012 12:56:03
Quote Anchor link
Heb je wel PHP 5.4?
Quote:
session_status

(PHP >=5.4.0)

session_status — Returns the current session status
 
Jerry php

Jerry php

30/09/2012 12:57:27
Quote Anchor link
hoe kan ik controleren of ik 5.4.0 heb?
 
Koen Vlaswinkel

Koen Vlaswinkel

30/09/2012 13:00:34
Quote Anchor link
Probeer:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo 'Current PHP version: ' . phpversion();
?>
 
- SanThe -

- SanThe -

30/09/2012 13:00:35
Quote Anchor link
Zet error_reporting[E_ALL] eens aan.
 
Jerry php

Jerry php

30/09/2012 13:02:05
Quote Anchor link
Current PHP version: 5.2.17

Hmm.. hoe kan ik dit dus upgrade?
 
Koen Vlaswinkel

Koen Vlaswinkel

30/09/2012 13:03:23
Quote Anchor link
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
 
Jerry php

Jerry php

30/09/2012 13:05:48
Quote Anchor link
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?
 
Koen Vlaswinkel

Koen Vlaswinkel

30/09/2012 13:07:50
Quote Anchor link
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.
 
Jerry php

Jerry php

30/09/2012 13:08:38
Quote Anchor link
EDIT: dit is echt bizar.. ik heb niets verandert maar nu doen de sessions het wel? iemand een verklaring?
 



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.