Sven Rautenberg: Sessionproblem PHP 4.0.6

Beitrag lesen

Moin!

So mache ich es...
Ausgabe in Datei 2: Sessionproblem
Warum??
Und Danke

Datei 1

if (!isset($_GET['nick'])) {

Hier geht das Problem los, schätze ich. PHP 4.0.6 kennt $_GET nicht, sondern nur $HTTP_GET_VARS.

Du solltest vorzugsweise die PHP-Version mal auf einen aktuellen Stand bringen (4.3.1 ist aktuell), oder aber die Variablenschreibweise vereinheitlichen auf $HTTP_*_VARS.

Das Problem geht weiter, weil du bei der Datenbankabfrage offenbar auch noch von register_globals=on ausgehst, also einfach auf $nick zugreifst und hoffst, diese Variable würde auf magische Weise von $HTTP_GET_VARS['nick'] abgefärbt sein.

session_start();
//session_register("nick");
$HTTP_SESSION_VARS ['nick'] =$nick ;
header("location: indexold.php");
//echo $nick ; echo "Jetzt eingetragen";

Wie kriegt das Skript indexold.php eigentlich die Session-ID mit? Wenn du keine Cookies erlaubst, muß die ID in der URL weitergegeben werden. PHP macht das aber nur bei im Quelltext enthaltenen Links (<a href>) und Formularen, aber nicht bei Weiterleitungen.

header("Location: http://".$HTTP_SERVER_VARS['HTTP_HOST']."/Pfad/zur/indexold.php?".SID); sollte helfen (ja, die URL hinter Location MUSS absolut sein).

- Sven Rautenberg

--
Signatur oder nicht Signatur - das ist hier die Frage!