SessionID Problem
Andü
- php
Hallo!
Ich hab auf meiner Seite so einen Admin-Bereich reingemacht, bei dem man sich einlogen muss!
Nach dem Einlogen prüft der Passwort (usw.) und erstellt eine Session. Funktioniert auch soweit.
Wenn ich nun aber einen Link anklick und dort prüf ob eine Session gestartet wurde, ist sie auf einmal nicht mehr vorhanden. Das heißt der vergisst die!
Zu Problemlösung hab ich mal nachgeschaut was bei session.use_trans_sid steht. Zu meiner Verwunderung steht dort "1". Das heißt ja er sollte die an alle Links anhängen! Tut er aber nicht!
Woran könnte es noch liegen?
Danke schon im Voraus!
Andü
Hat sich geklärt! Habs selbst hinbekommen!
Jetzt hab ich ein anderes Poblem!
Wenn ich versuch die Session wieder zu beenden kommt folgender Fehler:
Warning: session_destroy(): Trying to destroy uninitialized session in ...
Was kann ich dagegen tun?
Hello,
Jetzt hab ich ein anderes Poblem!
Wenn ich versuch die Session wieder zu beenden kommt folgender Fehler:Warning: session_destroy(): Trying to destroy uninitialized session in ...
Die Session vorher auch wirklich beginnen.
BTW: es ist hier nicht erwünscht, erst eine Frage zu stellen und dann nur zu rufen "April April".
Wenn sich eine Problematik erledigt hat, wollen wir (die Mitleser) auch wissen, warum. Denn häufig stecken hinter der vermeintlichen Erledigung durchaus Größere Probleme und/oder Andere haben das gleiche Problem. Da das Archiv dann zur Durchforstung zur Verfügung steht, solltest Du also noch ein paar Worte zur Sache verlieren.
Harzliche Grüße vom Berg
esst mehr http://www.harte-harzer.de
Tom
Also, wahrscheinlich ging das mit dem anmelden doch nicht so richtig!
Ich melde die Session mit session_start() an. Aber dann beim Abmelden kommt der entsprechende Fehler.
Vielleicht liegt das an der doch nicht übergebenen SessionID! Wenn ich die Session starte und gleich wieder beende funktioniert es - aber halt nicht, wenn ich die Seite neu lade bzw. einen Link anklick. Also wird es anscheinend doch nicht richtig übergeben!
versuche mal folgendes:
[php]
ini_set("session.use_only_cookies",1);
if(!session_id()){
session_start();
}
.
.
.
[/php]
Hello,
nur messen heißt wissen...
Also musst Du schon an den geeigneten Stellen mal schauen, was denn überhaupt ankommt.
Beim Browser stellst Du zum Testen ein: Cookies erst nach Aufforderung annehmen
und zwar sowohl für die "Session-Cookies" als auch für die, die permanant gespeichert werden sollen.
Und im PHP-Script schaltetst Du alle Fehlermeldungen ein
error_reporting(E_ALL)
und dann frag doch mal beim Aufruf des Scriptes die Cookies ab.
Sinnvollerweise _nach_ dem Setzen der Header, also z.B. session_start()
echo "<pre>\n";
echo htmlentities(print_r($_COOOKIE,1));
echo "</pre>\n";
Harzliche Grüße vom Berg
esst mehr http://www.harte-harzer.de
Tom
error_reporting(E_ALL)
Zeigte keinen Fehler bei session_start().
echo "<pre>\n";
echo htmlentities(print_r($_COOOKIE,1));
echo "</pre>\n";
Das mit den Cookies brauch ich nicht testen, weil ich weiß, dass Cookies funktionieren! So mach ich das bis jetzt.
Aber es gibt ja nun mal genug Leute, die keine Cookies annehmen, weshalb ich auf die GET-Methode ausweichen wollte! Und genau diese funktioniert nicht wie gewollt...
Aber langsam bin ich soweit, dass die, die keine Cookies annehmen halt Pech haben! Funktioniert es bei ihnen halt nicht! Selber schuld!
Aber mal was anderes:
Reicht es sicherheitstechnisch aus den Cookie mit Benutzername und Passwort als MD5 zu speichern? Oder ist es sinnvoll über eine Datenbank das noch mit IP oder sowas zu verknüpfen?
Hi Andü,
Reicht es sicherheitstechnisch aus den Cookie mit Benutzername und Passwort als MD5 zu speichern?
Den Satz habe ich nicht ganz verstanden - vielleicht solltest du ihn noch mal etwas überarbeiten, aber ...
Oder ist es sinnvoll über eine Datenbank das noch mit IP oder sowas zu verknüpfen?
Es ist grundsätzlich _nicht_ sinnvoll bei einer Zugangskontrolle mit Sessions die IP noch mitzuprüfen. Aus dem einfachen Grund: AOL User kommen bei jedem Seitenaufruf über einen anderen Proxy und kommen somit bei jedem Seitenaufruf auch mit einer anderen IP vorbei.
MfG, Dennis.
Hello,
Es ist grundsätzlich _nicht_ sinnvoll bei einer Zugangskontrolle mit Sessions die IP noch mitzuprüfen. Aus dem einfachen Grund: AOL User kommen bei jedem Seitenaufruf über einen anderen Proxy und kommen somit bei jedem Seitenaufruf auch mit einer anderen IP vorbei.
Aber das Netz bleibt gleich.
Harzliche Grüße vom Berg
esst mehr http://www.harte-harzer.de
Tom
Hi Tom,
AOL User kommen bei jedem Seitenaufruf über einen anderen Proxy und kommen somit bei jedem Seitenaufruf auch mit einer anderen IP vorbei.
Aber das Netz bleibt gleich.
Also 123.456.789.xxx? Aber dann ist doch das schon auf eine recht große Menge von möglichen Besuchern ausgeweitet - lohnt es sich dann noch die Überprüfung vorzunehmen?
MfG, Dennis.