register_globals=off / $_SESSION

DjGorilla

Grünschnabel
huhu !

irgendwie wird bei mir die Session nicht übertragen!

script1:

session_start();
$_SESSION["xlogin"]='true';
$_SESSION["xuname"]=$data[username];
$_SESSION["xuid"]=$data[id];
$_SESSION["xr"]=$data[status];

dann folgt ein frameset wo die sid angehängt wird mit

<?=session_name();?>=<?=session_id();?>

script2:

session_start();
echo$_SESSION[login];
echo$_SESSION[uname];
echo $_GET[PHPSESSID];

keine daten in session / sessionid wurde aber übermittelt

globals = off

php 5.0.3
apache 1.3.3

ini =
session.save_handler = files
session.save_path = /tmp
session.use_cookies = 0
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 100
session.gc_maxlifetime = 1440
session.bug_compat_42 = 1
session.bug_compat_warn = 1
session.referer_check = 0
session.entropy_length = 0
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
 
Wenn Du so schreibst:
DjGorilla hat gesagt.:
$_SESSION["xlogin"]='true';
$_SESSION["xuname"]=$data[username];
$_SESSION["xuid"]=$data[id];
$_SESSION["xr"]=$data[status];
dann kannst Du nicht so lesen:
DjGorilla hat gesagt.:
echo$_SESSION[login];
echo$_SESSION[uname];

Ist doch logisch, oder nicht? Wenn Du in $_SESSION["xlogin"] schreibst, dann musst Du auch $_SESSION["xlogin"] auslesen.
 
ich hab das hier nur nochmal nachgetippt gehabt und deswegen falsch geschrieben das ist alles schon richtig geschrieben im script ! sorry
 
nein funktioniert nicht ;) habe nur hier falsch geschriben im script is alles richtig !


habe eben auch nomma ein extra test gebaut:

1.php
<?
session_start();
$_SESSION['1'] = '1';

echo$_SESSION['1'];
?>
<a href="2.php?<?=session_name();?>=<?=session_id();?>">next</a>

2.php

URL Im bowser = 2.php?PHPSESSID=cb10f631ed73e9c9d7530fc1a3b09d95

<?
session_start();

echo$_SESSION['1'];

?>


funktioniert nicht !
 
Also Sessions funktionieren auch mit register_globals=off, hab ich ja auch laufen.
Hast Du vielleicht in Deinem Browser die Cookies deaktiviert? Die werden von Sessions naemlich genutzt.
Ansonsten faellt mir auf, dass kein Whitespace zwischen echo und $_SESSION ist, aber ich denke, dass ist durch's einfuegen hier.
Was ich mich auch immer wieder frage ist, warum immer alle die SessionID in der URL mit uebertragen. Das hat nicht wirklich viel Naehrwert.
 
habe cookies in der ini extra deaktiviert !

das problem ist was mache ich mit usern die keine cookies haben ! die sollen sich auch einlogen können ! aber das ist wohl anderes thema !

ich habe die session übergeben und script 2 kann aber anscheinend nicht auslesen ;/
 
mir fällt gerade auf wenn ich die sessionid in der URL verändere juckt ihn das wenig sprich er greift garnicht erst auf die session datei zu ! normal wenn ich die session id modifiziere würde er ja ein error melden das er keine session findet mit dem dateinamen ! :(
 
habe nun mal den session save path geändert ! mir extra ordner nur für die 2 hier angelegt !


lustig ist:

wenn ich 1.php aufrufe wird eine session datei erstellt mit 0 byte !

bei der 2.php wird nochmal eine erstellt mit 0 byte !

sprich wird garnicht erst reingeschrieben und auch nicht ausgelesen + nicht übertragen

ist die frage ob das problem noch größer werden kann ? *LOL*
 
Naja, nur weil Du 'ne Variable uebergibst heisst das ja nicht, dass Dein Script diese gleich nutzt um anhand dieser die Session zu checken.
 
Zurück