&& (LOKAL) Apache will keine Session unterstützen
Phil
- webserver
0 Ingo0 Phil
0 Wilhelm Turtschan0 MudGuard0 Phil
0 Ingo0 Christian Seiler
Hi!
Kleine Frage: Mein Lokalserver (Apache 1.3(?), die vor der 2.0, PHP 4.1.3) will keine Sessions unterstützen. Ich starte die Session mit session_start() und jage dann die Variablen mit $_SESSION["variable"]=="bla" rein.
Aber mein Server spielt da nicht mit. Zwar startet er die Session ohne eine Fehlermeldung, speichert aber nicht die Sessionvariablen. Sobald ich eine neue Seite aufrufe (in der natürlich auch session_start() steht), sind die Variablen weg.
Habe ich vergessen, irgendwo (php.ini oder httpd.conf) was einzustellen? Ich habe im Grunde alles in der Einstallung so gelassen, wie es war. Das zwingt mich, schon lokal "richtiges" PHP zu schreiben (z.B. mit register_globals ausgestellt).
Und wenn wir schon dabei sind: Ich habe ganz manuell PHP installiert. Wie update ich nun PHP? Nur runterladen und alle Dateien überschreiben? Oder soll ich voher was löschen bzw. in einer datei was ändern?
CU
http://www.yubb.de
Hallo Phil
Versuch mal in der php.ini einen vernünftigen
session.save_path
zu setzen.
Hi!
Der ist eigentlich ok... und der order existiert auch...
CU
http://www.yubb.de
Moin
Kleine Frage: Mein Lokalserver (Apache 1.3(?), die vor der 2.0, PHP 4.1.3) will keine Sessions unterstützen. Ich starte die Session mit session_start() und jage dann die Variablen mit $_SESSION["variable"]=="bla" rein.
Du hast die Variable mit session_register ("variable") deklariert?
Gruesse
Wilhelm
Hi!
Nein, habe ich nicht... Schlimm?
CU
http://www.yubb.de
Moin
Hi!
Nein, habe ich nicht... Schlimm?
Warum koennt Ihr nicht selber in der Doku nachsehen.
http://www.php.net/manual/it/ref.session.php
http://www.php.net/manual/it/function.session-register.php
Gruesse
Wilhelm
Ciao Wilhelm,
Warum koennt Ihr nicht selber in der Doku nachsehen.
Questo si potrebbe anche dire da te.
| Se viene usata $_SESSION (o $HTTP_SESSION_VARS per PHP 4.0.6 or inferiore), assegna la variabile a $_SESSION. i.e. $_SESSION['var'] = 'ABC';
E Phil fa esattamente questo.
Christian
Moin
Se viene usata $_SESSION (o $HTTP_SESSION_VARS per PHP 4.0.6 or inferiore), assegna la variabile a $_SESSION. i.e. $_SESSION['var'] = 'ABC';
Das Einzige was ich noch kann: il conto perfavore (oder so) *g*
Ich hatte da auch mal Probleme, seit register nicht mehr. Liegt vielleicht an der Version, keine AHnung
Gruesse
Wilhelm
Hallo Wilhelm,
Das Einzige was ich noch kann: il conto perfavore (oder so) *g*
_Du_ hast mit dem Italienisch angefangen. Hier noch mal der entsprechende Ausschnitt aus der deutschen Doku:
http://de3.php.net/manual/de/function.session-register.php
| Bei Verwendung von $_SESSION (oder $HTTP_SESSION_VARS bei PHP 4.0.6 oder niedriger) weisen Sie $_SESSION eine Variable zu, also $_SESSION['var'] = 'ABC';
(Und mein Kommentar dazu: Und genau das hat Phil gemacht)
Ich hatte da auch mal Probleme, seit register nicht mehr. Liegt vielleicht an der Version, keine AHnung
Also ich habe seit PHP 4.1 immer $_SESSION verwendet und hatte nur bei unregister Probleme. (Wenn register_globals an ist, dann muss man erst session_unregister ('var'); machen und danach unset ($_SESSION['var']); - bei register_globals off reicht das unset alleine)
Christian
Moin
Hallo Wilhelm,
Das Einzige was ich noch kann: il conto perfavore (oder so) *g*
_Du_ hast mit dem Italienisch angefangen. Hier noch mal der entsprechende Ausschnitt aus der deutschen Doku:
Ich wollte mal sehen, ob er den deutschen Link findet. :-)
(Und mein Kommentar dazu: Und genau das hat Phil gemacht)
Auch ich bin meiner Muttersprache maechtig und vor allem: ich kann klicken. :-)
Also ich habe seit PHP 4.1 immer $_SESSION verwendet und hatte nur bei unregister Probleme. (Wenn register_globals an ist, dann muss man erst session_unregister ('var'); machen und danach unset ($_SESSION['var']); - bei register_globals off reicht das unset alleine)
<schaem> Ich verwende noch die 4.0.6 </schaem> (oder auch nicht. *g*)
Tja, wer weiss, was in seiner .ini steht. Ich nicht.
Gruesse
Wilhelm
Hallo Wilhelm,
Ich wollte mal sehen, ob er den deutschen Link findet. :-)
Du solltest bei solchen Experimenten immer auf eine Retourkutsche gefasst sein und von daher nur Links auf Seiten in einer Sprache posten, die Du zumindest gut lesen kannst. (Ich würde nie mit einem russischen Link kommen, davon verstehe ich nämlich gar nichts ;-))
Auch ich bin meiner Muttersprache maechtig
Schon klar - ich wollte nur mein voriges Posting komplett »übersetzen«.
<schaem> Ich verwende noch die 4.0.6 </schaem>
Ja dann mal schnell schnell schnell updaten. Du bist Dir ja sicherlich bewußt, dass diese PHP-Version voll mit Sicherheitslöchern ist.
Tja, wer weiss, was in seiner .ini steht. Ich nicht.
Ich könnte mir höchstens noch etwas anderes vorstellen: Die Session-ID wird nicht richtig übertragen. Dann kanns ja nicht klappen. So - jetzt habe ich aber genug in meine Glaskugel geschaut. ;-)
Christian
Hi,
Ich starte die Session mit session_start() und jage dann die Variablen mit $_SESSION["variable"]=="bla" rein.
Damit jagst Du gar nichts irgendwo rein. Damit vergleichst Du.
cu,
Andreas
Hi!
Ich meine aber schon zuweise, also einfaches =-Zeichen, sorry
CU
http://www.yubb.de
hm also ferndiagnose is immer schlecht
haste lifetime superkurz ???
oder versuch ma so nach session start und füllen der variablen mit werten
session_register ('user_name');
Hallo Phil,
Kleine Frage: Mein Lokalserver (Apache 1.3(?), die vor der 2.0, PHP 4.1.3) will keine Sessions unterstützen. Ich starte die Session mit session_start() und jage dann die Variablen mit $_SESSION["variable"]=="bla" rein.
Aber mein Server spielt da nicht mit. Zwar startet er die Session ohne eine Fehlermeldung, speichert aber nicht die Sessionvariablen. Sobald ich eine neue Seite aufrufe (in der natürlich auch session_start() steht), sind die Variablen weg.
Werden denn die Sitzungsdateien erzeugt? Hat der Webserver Schreibrechte auf das Verzeichnis, in dem die Sitzungsdateien gespeichert werden? (sofern Du einen WinNT-Abkömling (NT4, 2000, XP) verwendest) Steht etwas im Apache error-log?
Zum Updaten:
1. Webserver mit PHP runterfahren.
2. Im windows/system bzw. winnt/system32-Verzeichnis die Datei php4ts.dll löschen.
3. Das alte PHP-Verzeichnis löschen.
4. Die gewünschte PHP-Version in das Verzeichnis entpacken, wo vorher die alte war.
5. Die neue php4ts.dll ins windows/system bzw. winnt/system32-Verzeichnis packen.
6. Eventuell die php.ini-dist neu ins windows-Verzeichnis kopieren und wieder anpassen. (nicht unbedingt notwendig, ich empfehle es aber)
7. Apache starten und hoffen, dass Du nichts falsch gemacht hast.
Christian