Hallo!
Mein Problem: Ich übergebe eineaktuelle Session ID per mit einem Hidden Feld aus einem Formular.
Nach dem Submit wird die zweite Seite korrekt geöffnet, auch die Kontrollausgaben zeigen mir die Richtige Session ID. Alledings wird mit start_session($sid) eine neue Session ID erzeug und meine übergebenen Daten sind "verloren".
index.php
Die Bildschirmausgabe der index.php:
Session Text: Test Inhalt!
Session ID: 944f3bf9d8795295404c5e2573de4570
Variable sid: 944f3bf9d8795295404c5e2573de4570
: und das Formularfeld...
show.php
Das Ergebnis von show.php:
Posted SID: 944f3bf9d8795295404c5e2573de4570
Aktuelle SID:47e377194e4e7b08aa822800270eaec8
Session Inh.:
Habe ich da nen Verständnissproblem? Es sollte doch bei Übergabe der Session ID auch selbige wieder gestartet werden? Bin für jede Hilfe dankbar. Im übrigen habe ich auch versucht die sid mit
zu übergeben. Das selbe Problem.
Das Session File auf dem Server ist vorhanden und enthält auch meine Variable, von daher schließe ich Berechtigungsprobleme aus.
Das ganze läuft auf einem Apache2 / PHP4 und Suse 9.0... auf einem anderen Server (ebenfalls Apache2 / PHP4 und Suse 9.0) läuft das ganze problemlos.
Eine auffällige Sache noch. Auf meinem "bösen" Server geben ich im IE 6 als Adresse ein: http://server/sess (sess ist das verzeichnis mit den Dateien), nach dem <Submit> steht in der Adressleiste immernoch die selbe Adresse, aber es ist die Seite show.php aufgerufen und vom Inhalt angezeigt.
Auf dem "guten" Server ändert sich der Eintrag in der Adressleiste auf http://server/sess/shop.php.
So, nun soll es gut sein... Nicht das ich hier als "Krimiauthor" abgestempelt werde
Ich bin für alle Hilfen und Lösungen dankbar...
Gruß
Sascha
Mein Problem: Ich übergebe eineaktuelle Session ID per mit einem Hidden Feld aus einem Formular.
Nach dem Submit wird die zweite Seite korrekt geöffnet, auch die Kontrollausgaben zeigen mir die Richtige Session ID. Alledings wird mit start_session($sid) eine neue Session ID erzeug und meine übergebenen Daten sind "verloren".
index.php
PHP:
<?PHP
session_start();
$_SESSION['text'] = "Test Inhalt!";
$sid = session_id();
echo "Session Text: " . $_SESSION['text'] . "<br>";
echo "Session ID: " . session_id() . "<br>";
echo "Variable sid: " . $sid . "<br>";
?>
<FORM METHOD=post ACTION="show.php">
<INPUT TYPE=text NAME="name" value="Unknown">
<INPUT TYPE=hidden NAME="sid" value="<?echo $sid ?>">
<INPUT TYPE=submit VALUE="Login">
</FORM>
Session Text: Test Inhalt!
Session ID: 944f3bf9d8795295404c5e2573de4570
Variable sid: 944f3bf9d8795295404c5e2573de4570
: und das Formularfeld...
show.php
PHP:
<?PHP
$sid = $_POST["sid"];
session_start($sid);
echo "Posted SID: " . $sid . "<br>";
echo "Aktuelle SID:" . session_id() . "<br>";
echo "Session Inh.:" . $_SESSION["text"];
?>
Posted SID: 944f3bf9d8795295404c5e2573de4570
Aktuelle SID:47e377194e4e7b08aa822800270eaec8
Session Inh.:
Habe ich da nen Verständnissproblem? Es sollte doch bei Übergabe der Session ID auch selbige wieder gestartet werden? Bin für jede Hilfe dankbar. Im übrigen habe ich auch versucht die sid mit
PHP:
<FORM METHOD=post ACTION="show.php?sid=<?echo $sid?>">
Das Session File auf dem Server ist vorhanden und enthält auch meine Variable, von daher schließe ich Berechtigungsprobleme aus.
Das ganze läuft auf einem Apache2 / PHP4 und Suse 9.0... auf einem anderen Server (ebenfalls Apache2 / PHP4 und Suse 9.0) läuft das ganze problemlos.
Eine auffällige Sache noch. Auf meinem "bösen" Server geben ich im IE 6 als Adresse ein: http://server/sess (sess ist das verzeichnis mit den Dateien), nach dem <Submit> steht in der Adressleiste immernoch die selbe Adresse, aber es ist die Seite show.php aufgerufen und vom Inhalt angezeigt.
Auf dem "guten" Server ändert sich der Eintrag in der Adressleiste auf http://server/sess/shop.php.
So, nun soll es gut sein... Nicht das ich hier als "Krimiauthor" abgestempelt werde
Ich bin für alle Hilfen und Lösungen dankbar...
Gruß
Sascha