Avatar billede dank Nybegynder
03. maj 2003 - 18:56 Der er 9 kommentarer og
1 løsning

PHP4 sessions

Jeg sidder og roder med sessions. Jeg har noget a'la

session_register("pass");
session_register("user");

Og en session_start i mine dokumenter.

Det der undrer mig nu er at jeg synes man er logget ind hele tiden, selvom jeg åbner en ny browser eller rebooter computeren?

Jeg mener at normalt, så gælder session vel kun for den ene browser? Eller?
Avatar billede dank Nybegynder
03. maj 2003 - 19:05 #1
(jeg tænker på om det er normalt.. eller jeg gør noget forkert)
Avatar billede Slettet bruger
03. maj 2003 - 19:26 #2
Normalt er det browserens levetid. Når sidste instans af din browser lukkes slettes evt. cookies.

Med mindre cookien (der holder session ID'et) er sat med en levetid > 0.
Se session.cookie_lifetime i php.ini (phpinfo()).
Er denne større end 0, giver det du skriver mening.
Avatar billede dank Nybegynder
03. maj 2003 - 19:32 #3
Nææee.. Det lader til at de er som de skal være -  Yderst underligt. Jeg undrede mig også meget over det, fordi sådan har det ikke hele tiden været, men så lavede jeg en masse om i login systemet.. og vupti.. Mine sessions lever deres eget liv :o)

Aner ikke hvad jeg skal stille op, må jeg indrømme.

Herinde et cut fra php.ini


[Session]
; Handler used to store/retrieve data.
session.save_handler = files
; Argument passed to save_handler.  In the case of files, this is the path
; where data files are stored. Note: Windows users have to change this
; variable in order to use PHP's session functions.
session.save_path = /tmp
; Whether to use cookies.
session.use_cookies = 1
; Name of the session (used as cookie name).
session.name = PHPSESSID
; Initialize session on request startup.
session.auto_start = 0
; Lifetime in seconds of cookie or, if 0, until browser is restarted.
session.cookie_lifetime = 0
; The path for which the cookie is valid.
session.cookie_path = /
; The domain for which the cookie is valid.
session.cookie_domain =
Avatar billede Slettet bruger
03. maj 2003 - 19:38 #4
Lav en simpel test, hvor du på én side registrerer en session variabel, og på en anden side læser værdien af denne session variabel.
Avatar billede dank Nybegynder
03. maj 2003 - 19:47 #5
ja den er god nok..

sestest1.php=
<? $pass="abc";
session_start();
session_register("pass"); ?>

sestest2.php=
<? session_start();
echo "$pass"; ?>

Hvis jeg kører det første i én browser og derefter åbner en anden browser, så udskriver den fint $pass

hmmm... hvad i alverden skal jeg dog gøre.. dette er ikke godt.. jeg har mistet kontrollen med min maskine :=))
Avatar billede erikjacobsen Ekspert
03. maj 2003 - 19:50 #6
har du et link til din side - så kan vi se hvad der sker
Avatar billede Slettet bruger
03. maj 2003 - 19:55 #7
dansk: Du skal lukke alle instanser af browseren.

1) Luk alle browsere.
2) Start én browser, og gå ind på sestest1.php
3) Luk denne.
4) Start én browser, og gå ind på sestest2.php

(Og prøv så lige med et andet navn end 'pass')
Avatar billede dank Nybegynder
03. maj 2003 - 20:19 #8
hmm... nu satte jeg lige min reserver workstation op :o) På den maskine er der ingen problemer.. Den virker perfekt. Altså¨er det noget client-side XP problemer. (guderne må vide hvad)

Erikj> Jeg kan desværre ikke poste ip/url da serveren er en del af en testsuite bag firewall

Det var jeres hjælp der ledte mig på sporet. Læg et svar til point, og mange tak for hæjlpen.
Avatar billede erikjacobsen Ekspert
03. maj 2003 - 20:42 #9
du fik vist ingen hjælp fra mig ;) Jeg frafalder
Avatar billede Slettet bruger
03. maj 2003 - 22:16 #10
Ok.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester