Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Session beenden mit session destroy() klappt nicht so wirklich

Mitglied: coltseavers

coltseavers (Level 2) - Jetzt verbinden

25.01.2010 um 23:58 Uhr, 6753 Aufrufe, 6 Kommentare

Hallo!

Ich habe folgendes Problem mit Sessions:

Beispielprojekt: Onlineshop.
Sessions werden eingesetzt, der Kunde kauft ein und schliesst die Bestellung ab.

Ich möchte nun erreichen, dass dann die Session komplett "zerstört" wird.
Dazu führe ich den Befehl "session_destroy();" aus.

Das Problem ist nun offenbar, dass die Session-ID in einem Cookie beim Client gespeichert wird.
Wenn man nach Bestellabschluß (also auch nach session_destroy();) dann auf den Button "Warenkorb anzeigen" klickt,
wird der Warenkorb wieder samt Inhalt angezeigt (Dieser orientiert sich nach der Session-ID). Er soll aber nach Bestellabschluss natürlich leer sein.

Was läuft da falsch? Wird bei session_destroy(); nicht automatisch auch das Cookie gelöscht?
Oder muss man das noch explizit nachholen? Falls ja: wie?

Danke & Gruß,
Colt Seavers
Mitglied: dog
26.01.2010 um 00:35 Uhr
Was das Cookie auf dem Client macht ist doch vollkommen unerheblich.

PHPs interne Session-Implementation speichert auf dem Client nur eine Session-ID, alle Dateien dazu liegt auf dem Server in einer Datei mit dem Namen der ID.

session_destroy löscht alle Daten innerhalb einer Session (nicht die Session selber).
Ich würde aber mal sagen, du hast hier ein tiefergreifendes Problem!

Das Cookie kannst du mit
01.
setcookie(session_name(),false);
löschen...
Bitte warten ..
Mitglied: coltseavers
26.01.2010 um 01:01 Uhr
Zitat von dog:

session_destroy löscht alle Daten innerhalb einer Session (nicht die Session selber).


aha?!

Ich find das wird hier anders erklärt:
http://www.selfphp.de/funktionsreferenz/session_funktionen/session_dest ...

Aber egal, was von beiden stimmt:
Wenn alle Daten gelöscht werden, dann ja auch die Session-ID. Der Warenkorb existiert aber weiterhin, und der findet seinen Inhalt über die Session-ID...
verstehe nicht, woher er die dann noch kriegt ?!
Bitte warten ..
Mitglied: dog
26.01.2010 um 01:39 Uhr
Ich find das wird hier anders erklärt:

Darum nimmt man auch immer die offizielle Doku: http://de.php.net/session_destroy

Aber egal, was von beiden stimmt:

Stimmt, du hast ein anderes Problem.
Darum aktivierst du erstmal die Fehleransicht:
01.
ini_set('display_errors','On'); 
02.
error_reporting(E_ALL|E_STRICT);
Bitte warten ..
Mitglied: coltseavers
26.01.2010 um 01:43 Uhr
habe rausgefunden, dass das Problem beim Cookie liegt.
Wenn ich das Cookie manuell (im Browser) lösche, ist auch der Warenkorb leer.

kriegs aber nicht mit setcookie() gelöscht/geändert -> fehlermeldung.
auch regenerate_session_id() bringt ne fehlermeldung.

fehlermeldung:
Warning: Cannot modify header information - headers already sent by (output started at /var/www/xxx.de/yyyy.php:123) in /var/www/xxx.de/yyy.php on line 111
Bitte warten ..
Mitglied: 62929
26.01.2010 um 07:42 Uhr
Hallo,

warum nutzt du nicht den expire Parameter von setcookie?
Wenn dir das zu statisch ist, kannst du auch den Cookie aller paar Seitenklicks neu setzen. So kannst du sicher gehen, dass niemand ausgeloggt wird, der sich schon seit Stunden in deinem System befindet.

Gruß
dante!


PS: Header Manipulationen müssen immer vor dem ersten Output passieren, also möglichst am Code Anfang.
Bitte warten ..
Mitglied: dog
26.01.2010 um 09:32 Uhr
Das Problem kriegen wir leicht in den Griff:

In der php.ini
output_buffering On
eintragen

oder als erstes in dein Programm
ob_start();
einfügen
Bitte warten ..
Ähnliche Inhalte
PHP

Php session nach n Minuten beenden ohne cronjobs ?

Frage von djevil-adPHP11 Kommentare

Hallo, hallo, Ich bin gerade dabei meinen Warenkorb zu entwickeln, und ich finde keine Lösung, wie ich den Warenkorb ...

Batch & Shell

Wenn nur eine oder zwei Dateien geöffnet, dann Sitzung beenden - net-session-Syntax gesucht

gelöst Frage von DerWoWussteBatch & Shell12 Kommentare

Moin Kollegen. Ich rufe ein weiteres Mal die Batch-Skriptinggötter an: Die Ausgabe von net session liefert mir in etwa ...

Windows Server

Citrix-Session auf RDS-Session-Host

Frage von BirdyBWindows Server3 Kommentare

Hallo zusammen, ich habe da gerade ein recht komisches Setup und bräuchte mal Meinungen und Ratschläge Bei uns arbeiten ...

Hyper-V

Hyper V 2012 R2 - Enhanced Session Mode klappt nicht

Frage von bytetixHyper-V7 Kommentare

Hallo, Ziel ist es von meinem Laptop via RDP auf eine VM (Windows Server 2012R2) zu gehen und in ...

Neue Wissensbeiträge
Humor (lol)
IoT-Gefahr: Smartes Aquarium leckt!
Information von Lochkartenstanzer vor 57 MinutenHumor (lol)1 Kommentar

Moin, Die IoT-Manie hat weitere Opfer gefunden. Ein Casino-Leck durch ein smartes Aquarium: Allerdings haben sie kein Wasser, sondern ...

Router & Routing

Olle Fritzbox 7270 mit VPN und SIP-Telefonie hinter O2 Homebox 6641 als "Modem"

Erfahrungsbericht von the-buccaneer vor 9 StundenRouter & Routing3 Kommentare

Nun war es soweit: Auch O2 hat mich mit VOIP zwangsbeglückt. Heute am Privatanschluss, in 2 Wochen ist das ...

Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 22 StundenSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 1 TagWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
Server SSD: NVMe PCIe 3.0 RAID?
Frage von bouneeFestplatten, SSD, Raid15 Kommentare

Hallo liebe Admins, mir stellt sich gerade die Frage, ob ein neuer Server mit SSD NVMe PCIe 3.0 Sinn ...

Sonstige Systeme
Wie Normenkataloge im Unternehmen bereit stellen?
Frage von MuzzepuckelSonstige Systeme14 Kommentare

Hallo Kollegen, ich lese schon lange hier mit, nun mein ersrer Beitrag, bzw. Frage. :-) Wir benötigen für unsere ...

Sicherheit
Verbindliche Zustellung per E-Mail?
Frage von ahussainSicherheit14 Kommentare

Hallo allerseits, ein Kunde von mir nutzt intensiv Fax. Hauptgrund: zusammen mit einer Empfangsbestätigung ist eine verbindliche Zustellung gewährleistet. ...

LAN, WAN, Wireless
OpenVPN Client Fehlermeldungen
Frage von chris84LAN, WAN, Wireless14 Kommentare

Hallo Zusammen, wir nutzen seit kurzem einen neuen Router und den OpenVPN Client. Die VPN Verbindung klappt; allerdings kommen ...