[PHP] session variabele krijgen geen waarde

Pagina: 1
Acties:
  • 160 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
omdat ik een beheer script moet maken voor een aantal sites leek het mij handig om dat te doen met een login die werken met session. lijkt mij namelijk een stuk veiliger als werken met cookies nu werken sessions alleen niet bij mij en ik weet maar niet waarom

session start doet het prima. alleen als ik de sessions een waarde wil geven slaat hij deze gewoon niet op. ik heb al verschillende tutorials gelezen, mensen gevraagd en de PHP handleiding gedownload. allemaal zeggen ze wat anders. wat ik tot nu toe heb geprobeerd en bij mij niet werkt:

PHP:
1
2
3
session_register ("varnaam zonder $");
$_SESSION["var naam zonder $"];
$_SESSION["de naam van de session"]["var naam zonder $"];


de eerste zie ik in elke tutorial staan en staat ook in de PHP handleiding. bij de handleiding staat echter dat je vanaf PHP 4.1 beter de 2de optie kunt doen, en ik heb PHP 4.3.1. van een vriend van mij kreeg ik de opmerking dat je de session ook een naam moest geven. om zo alle bij elkaar horende sessions te bundelen. ook dit werkt niet. als ik met print de inhoud van de session wil laten zien geeft hij gewoon niks weer. hier zijn de methode hoe ik ze heb geprobeerd op het scherm te krijgen

PHP:
1
2
3
print $varnaam
print $_SESSION["var naam zonder $"];
print $_SESSION["de naam van de session"]["var naam zonder $"];


ook heb ik geprobeerd eerst de waarde van de session in een normale variabele te zetten en die dan te printen. ook hier geen resultaat. Ik draai Apache 2.4.5 onder windows XP en heb php.ini aangepast (de temp folder voor sessions staat standaard op /tmp, een linux map dus)

Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
Waarom doe je niet gewoon:

PHP:
1
2
3
<?php
$_SESSION["naamvansession"] = "inhoud";
?>

Dan werkt het...

|>


Acties:
  • 0 Henk 'm!

  • GlowMouse
  • Registratie: November 2002
  • Niet online
Worden er in /tmp wel bestanden aangemaakt? Zoja wat staat erin? Zonee, staan de permissies wel goed?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
dat doet het dus ook niet

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik heb de directory verandert in d:\server\php\temp deze map staat nu ondertussen vol met sesions bestanden die leeg zijn van inhoud (als ik ze met notepad open)

Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
en dit:

PHP:
1
2
3
4
5
<?php
   session_start();
   $_SESSION["test"] = "testje";
   echo $_SESSION["test"];
?>
Verwijderd schreef op 06 oktober 2003 @ 20:46:
ik heb de directory verandert in d:\server\php\temp deze map staat nu ondertussen vol met sesions bestanden die leeg zijn van inhoud (als ik ze met notepad open)
Dat betekent dat die sessie dus niet gevuld wordt..

[ Voor 44% gewijzigd door simon op 06-10-2003 20:47 ]

|>


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
op de zelfde pagina doet hij het. maar op de andere pagina niet meer. terwijl dat tog de bedoeling is lijkt mij. mij script:

PHP:
1
2
3
4
<?php session_start();
$_SESSION["test"] = "test";
print "<a href=\"test2.php\">pagina2</a>";
?>


2de pagina

PHP:
1
2
3
<?php session_start(); 
echo $_SESSION["test"];
?>

[ Voor 35% gewijzigd door Verwijderd op 06-10-2003 22:03 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik heb hem inmiddels bij iemand anders op de server gezet en daar doet hij het ook niet

Acties:
  • 0 Henk 'm!

Verwijderd

Werkt jouw php versie wel met de variabele $_SESSION ? Er staat me iets bij dat oudere versies van PHP met een andere variabele werken... Maar welke dat was, weet ik niet. Dan zou het idd geen wonder zijn dat dit niet werkt.

Zet eens bovenaan je script:
PHP:
1
error_reporting(E_ALL);


dan krijg je alle eventuele meldingen en waarschuwingen op je scherm te zien, misschien wordt je daar wijzer van!

Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 16:12

crisp

Devver

Pixelated

Verwijderd schreef op 06 October 2003 @ 20:51:
op de zelfde pagina doet hij het. maar op de andere pagina niet meer. terwijl dat tog de bedoeling is lijkt mij. mij script:

PHP:
1
2
3
4
<?php session_start();
$_session["test"] = "test";
print "<a href=\"test2.php\">pagina2</a>";
?>


2de pagina

PHP:
1
2
3
<?php session_start(); 
echo $_SESSION["test"];
?>
$_session != $_SESSION ;)

Intentionally left blank


Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
Hij heeft versie 4.3.* dus die werkt zeker met $_SESSION (superglobals), dus ik zie daar niet echt een probleem.. Werken andere scripts wel, die sessies gebruiken?

|>


Acties:
  • 0 Henk 'm!

Verwijderd

crisp heeft gelijk... Het moet zijn $_SESSION en niet $_session !

Acties:
  • 0 Henk 'm!

  • Perceptive
  • Registratie: December 2002
  • Laatst online: 14-07-2024
stuur het sessie-id eens mee in de link, bijvoorbeeld met test2.php?PHPSESSID=sdfijhsdjifh 08uhsdufhius

en kijk dan eens of je je test-sessie-variabele nog bestaat.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
dat $_SESSION en $_session is een tik fout van mijn kant. met $_SESSION doet hij het ook niet...

hoe krijg ik die session-id? bij die vriend kwam inderdaad zodra ik op die link klik er een PHPSESSID achter de link te staan. bij mij echter niet

ik heb net phpbb geinstalleerd. die naar mijn weten ook sessions gebruikt. die doet het gewoon goed

[ Voor 18% gewijzigd door Verwijderd op 06-10-2003 22:05 ]


Acties:
  • 0 Henk 'm!

  • Perceptive
  • Registratie: December 2002
  • Laatst online: 14-07-2024
probeer dit eens:

PHP:
1
2
3
4
5
6
 
<?php 
       session_start(); 
       $_session["test"] = "jooo";   
       $sessionlink= session_name()."=".session_id(); 
       echo "<a href=\"test2.php?$sessionlink\">test2</a>";


Nu krijg je al het goed is een sessie id aan je link geplakt. Je test variabele moet nu ook beschikbaar zijn in je test2.php

Acties:
  • 0 Henk 'm!

Verwijderd

Probeer eerst even de commando <? php_info(); ?> dan kun je eerst kijken of er wel sessies worden ondersteund door de server ;)

Acties:
  • 0 Henk 'm!

  • hennink
  • Registratie: Augustus 2000
  • Laatst online: 11-09 16:49
of op de pagina waar je wilt kijken wat er in je session zit
een var_dump($_SESSION);

alles wat aan kan, gaat kapot. De vraag is alleen wanneer.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik krijg met het scriptje van Perceptive een id achter mijn link. maar hij geeft nog steeds niks weer.

als ik een var_dump doe print hij al resultaat NULL hij is dus nog steeds leeg.

effe een printje van mijn phpinfo
session
Session Support enabled
Registered save handlers files user

Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_lifetime 0 0
session.cookie_path d:\server\php\temp\ d:\server\php\temp\
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_dividend 100 100
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path d:\server\php\temp\ d:\server\php\temp\
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid Off Off

Acties:
  • 0 Henk 'm!

  • Perceptive
  • Registratie: December 2002
  • Laatst online: 14-07-2024
oke, dit werkt bij mij wel, ik hoop bij jou ook :)

test.php:
PHP:
1
2
3
4
5
       session_start(); 
       $_SESSION['test'] = "jooo";
       echo  $_SESSION['test'];
       $sessionlink= session_name()."=".session_id(); 
       echo "<br><a href=\"test2.php?$sessionlink\">test2</a>";


test2.php:
PHP:
1
2
       session_start(); 
       echo $_SESSION['test'];

[ Voor 19% gewijzigd door Perceptive op 07-10-2003 18:05 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
HIJ DOET HET :P thnx a lot.

Acties:
  • 0 Henk 'm!

  • Perceptive
  • Registratie: December 2002
  • Laatst online: 14-07-2024
anytime
Pagina: 1