SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Websites optimieren für Google & Co.

Websites optimieren für Google & Co. zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 09.08.2017, 19:03:17
Kukulkan Kukulkan ist offline
Anfänger
 
Registriert seit: Nov 2007
Beiträge: 35
Neue Session erzeugen ohne die aktuelle zu zerstören?

Hallo,

ich habe eine Client-Anwendung die ein eigenes Protokoll auf meinem Server bedient. Jetzt soll über dieses Protokoll eine Web-Session erzeugt werden, die dann in einem Webbrowser geöffnet werden soll. Ziel ist, dass ich einen gültigen Session-identifier zurück liefere.

Das Problem ist, dass die ursprüngliche Session aus dem Protokoll nicht angefasst werden soll. Ich möchte also, im Prinzip, die Session auf eine neue wechseln, dort verschiedene Werte in $_SESSION speichern und dann zur originalen Session zurückkehren. Dann den Session-Identifier (Session-ID) aus der neuen zurückliefern, damit man diese per Webbrowser nutzen kann.

Kann ich aus einer bestehenden Session eine neue erzeugen, diese Füllen und dann zur vorigen zurückkehren? So das die neue Nutzbar bleibt?

Ich denke es läuft auf session_encode() und session_decode() raus, aber irgendwie fehlt mir der beste Ansatz. Ich würde gerne vermeiden, auf dem Laufwerk direkt lesend/schreibend auf die Session-Dateien zuzugreifen (session_save_path()).

Wie mache ich das am besten?

Danke!
Mit Zitat antworten
  #2  
Alt 10.08.2017, 12:29:08
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Neue Session erzeugen ohne die aktuelle zu zerstören?

Lies Du zum Beispiel hier.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #3  
Alt 10.08.2017, 13:04:41
Kukulkan Kukulkan ist offline
Anfänger
 
Registriert seit: Nov 2007
Beiträge: 35
AW: Neue Session erzeugen ohne die aktuelle zu zerstören?

Danke, aber das ist nicht mein Fall. Ich will nicht Variablen hin und her oder sonstiges. Ich will aus meiner bestehenden Session heraus eine zweite generieren, die ich mit Werten befüllen und dann an einen Nutzer übergeben kann. Der kann die dann im Webbrowser öffnen und nutzen.

Meine erste Session soll danach für mich weiter bestehen bleiben.
Mit Zitat antworten
  #4  
Alt 10.08.2017, 13:50:06
chorn chorn ist offline
Junior Member
 
Registriert seit: Apr 2016
Alter: 44
Beiträge: 171
AW: Neue Session erzeugen ohne die aktuelle zu zerstören?

dann leg den Kram in einer Datenbank unter zwei Schlüsseln ab.
Mit Zitat antworten
  #5  
Alt 11.08.2017, 12:32:55
Kukulkan Kukulkan ist offline
Anfänger
 
Registriert seit: Nov 2007
Beiträge: 35
AW: Neue Session erzeugen ohne die aktuelle zu zerstören?

Danke für den Tipp, aber ich habe die Sessions nicht in der Datenbank und ich will den Inhalt von $_SESSION haben nachdem der Nutzer einen Link im Browser aufruft den ich Ihm mitteile. Was soll ich da in die Datenbank tun?

Oder meinst Du bei jedem Aufruf in der DB gucken ob ich eine spezielle Session für den call habe um dann aus der DB die $_SESSION wieder herzustellen? Das würde aber eine Menge dauerhaften Overhead erzeugen für den eher seltenen Fall dass jemand auf diese Art kommt...
Mit Zitat antworten
  #6  
Alt 11.08.2017, 13:25:30
chorn chorn ist offline
Junior Member
 
Registriert seit: Apr 2016
Alter: 44
Beiträge: 171
AW: Neue Session erzeugen ohne die aktuelle zu zerstören?

Wenn du die ID public machst, also an die URL anhängst, kannst du versuchen die Session mit session_id() nochmal zu starten, dann die Daten abzugrabbeln, dann mit session_abort() zu stoppen ohne zu löschen, und mit session_start() eine neue zu starten, wo du die Daten wieder reinpumpst.
Mit Zitat antworten
  #7  
Alt 11.08.2017, 13:41:14
Kukulkan Kukulkan ist offline
Anfänger
 
Registriert seit: Nov 2007
Beiträge: 35
AW: Neue Session erzeugen ohne die aktuelle zu zerstören?

Ja, der Aufrufer kann die Session-ID in der URL mitgeben. So kann ich eine bestehende Session nutzen.

Aber das Problem, das ich hab, ist, aus einer anderen laufenden Session diese neue Nutzer-Session zu erstellen und vorab mit Daten zu befüllen. So dass der Nutzer dann später (wenige Sekunden) beim ersten Aufruf seiner URL mit Session-ID gleich eine gültige Session mit Login etc hat.

Ich wünschte sowas:

Ich speicher meine aktuelle Session-Daten aus meiner Session "A" temporär
Ich lösche alles zu meiner Session (unset($_SESSION);)
Ich erstelle eine neue Session mit neuer Session ID "B"
Diese Session fülle ich mit Daten in $_SESSION
Ich wechsle zurück zu meiner Session "A" (mit allen meinen Daten aus "A" in $_SESSION)
Ich geb als Ergebnis die Session-ID "B" in meinem Protokoll zurück

Dann soll ein Nutzer den Browser mit der Session "B" öffnen können und diese hat dann die Daten die ich oben für Session "B" hinterlegt habe.
Mit Zitat antworten
  #8  
Alt 11.08.2017, 14:16:35
chorn chorn ist offline
Junior Member
 
Registriert seit: Apr 2016
Alter: 44
Beiträge: 171
AW: Neue Session erzeugen ohne die aktuelle zu zerstören?

Das kannst du so machen. Du musst dir nur die Daten nur in einer Variable merken, für den Zeitraum in dem du keine Session hast, und dann zwischen den Sessions springen mit session_id(), session_start(), session_abort().
Mit Zitat antworten
  #9  
Alt 11.08.2017, 14:54:46
Kukulkan Kukulkan ist offline
Anfänger
 
Registriert seit: Nov 2007
Beiträge: 35
AW: Neue Session erzeugen ohne die aktuelle zu zerstören?

Genau hier liegt das Problem. Ich habe versucht das so zu tun, aber es wird immer die bestehende Session umbenannt. Weder session_abort, session_commit, session_regenerate_id oder sonstiges haben dazu geführt, dass ich eine neue zweite Session erhalte. Es blieb immer bei einem Session-File, das entweder umbenannt wurde oder nur den Inhalt wechselte. In keinem Fall konnte ich aus meiner Funktion eine zweite Session erzeugen :-(
Mit Zitat antworten
  #10  
Alt 11.08.2017, 15:21:23
chorn chorn ist offline
Junior Member
 
Registriert seit: Apr 2016
Alter: 44
Beiträge: 171
AW: Neue Session erzeugen ohne die aktuelle zu zerstören?

Du musst dir die alte ID+Daten merken, dann eine neue Session-ID generieren, damit eine neue Session starten (session_id(123yxz); session_start()), hier die Daten reinkopieren, und dann wieder zur alten Session wechseln. Und die neue ID dann weiterleiten.
Mit Zitat antworten
Antwort

Stichworte
duplicate, session


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
vorhandes Template kopieren, Daten rein, neue Datei erzeugen massel PHP Grundlagen 3 08.04.2008 23:50:28
Neue Tabellenreihe erzeugen thkmcs PHP für Fortgeschrittene und Experten 8 26.02.2007 01:19:44
bei jedem session_start eine neue session? hubinho PHP Grundlagen 4 13.10.2006 19:27:17
session variblen gehen verlohren - immer neue session ID xeta PHP Grundlagen 9 03.08.2006 01:50:33
SessionID "destroyen" und neue SessionID erzeugen mare26 PHP Grundlagen 5 09.12.2004 00:37:30


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:49:29 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt