php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.08.2007, 07:47  
Erfahrener Benutzer
 
Registriert seit: 16.08.2007
Beiträge: 702
PHP-Kenntnisse:
Anfänger
Igäl befindet sich auf einem aufstrebenden Ast
Standard Daten in Session - Wie sinnvoll ist das?

Hi Leute

Ich bin gerade dabei, meine Scripte zu optimieren und habe bezüglich Sinn und Unsinn eine Frage:

Ist es hinsichtlich Performance, Übersicht, Sicherheit und schönem Programmierstil sinnvoll, wenn man möglichst viele Daten in die Session speichert, damit sie bei Klassen-/Funktionsaufrufen nicht umständlich übergeben werden müssen?

Bei jedem Seitenaufruf wird bei mir eine Modul-ID an der URL angehängt, über welche mir ein Switch dann die gwünschte Klasse lädt. Der Grund meiner Frage hängt mit der Überlegung zusammen, ob ich diese Modul-ID in die Session schreiben und am benötigten Ort von da ausgeben soll, oder ob mir die Konfigurationsklasse eine Methode bereitstellen soll, mit welcher ich die Modul-ID im index.php abrufen kann. Das nur so zur Hintergrundinformation, warum ich die Frage hier stelle.

Gruss Igäl
__________________
Das Recht auf Dummheit gehört zur Garantie der freien Entfaltung der Persönlichkeit.
Mark Twain
Igäl ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.08.2007, 09:42  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Nur die nötigsten Informationen in die Session. Der Rest kommt aus der Datenbank.
imported_Ben ist offline  
Alt 30.08.2007, 10:22  
Erfahrener Benutzer
 
Registriert seit: 16.08.2007
Beiträge: 702
PHP-Kenntnisse:
Anfänger
Igäl befindet sich auf einem aufstrebenden Ast
Standard

Bei jedem Seitenaufruf einen DB-Query abzusetzen, der mir die selben Daten immer und immer wieder holt, halte ich aber für einen Overkill. Usernamen, Passwörter und so speicher ich sicher in die Session. Bin mir grad nur mit der Seiten-ID unsicher.
__________________
Das Recht auf Dummheit gehört zur Garantie der freien Entfaltung der Persönlichkeit.
Mark Twain
Igäl ist offline  
Alt 30.08.2007, 11:41  
Erfahrener Benutzer
 
Registriert seit: 17.01.2006
Beiträge: 468
Slava
Standard

was meinst du mit der Seiten-ID?
willst du die besuchte Seiten im session protokollieren?
__________________
Slava
http://bituniverse.com
Slava ist offline  
Alt 30.08.2007, 12:48  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von Igäl
Bei jedem Seitenaufruf einen DB-Query abzusetzen, der mir die selben Daten immer und immer wieder holt, halte ich aber für einen Overkill. Usernamen, Passwörter und so speicher ich sicher in die Session. Bin mir grad nur mit der Seiten-ID unsicher.
Und Du bist Dir ganz sicher, dass die Daten in der Session nicht einfach in einer DB landen, Du also sowieso mindestens eine DB-Abfrage automatisch hast?
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 30.08.2007, 13:08  
Erfahrener Benutzer
 
Registriert seit: 16.08.2007
Beiträge: 702
PHP-Kenntnisse:
Anfänger
Igäl befindet sich auf einem aufstrebenden Ast
Standard

Ich habe einige automatische DB-Abfragen. Allerdings nicht für die Session-Daten. In der Session speicher ich User-Informationen, mit welchen ich zur Laufzeit prüfe, ob ein User wirklich der ist, für den er sich ausgibt oder um zu sehen, ob der User die Berechtigungen für irgendwas hat, usw.

Hab mich aber mittlerweile entschieden, dass ich die Seiten-ID nicht in die Session schreiben. Hab ein adäquates Workaround gefunden
__________________
Das Recht auf Dummheit gehört zur Garantie der freien Entfaltung der Persönlichkeit.
Mark Twain
Igäl ist offline  
Alt 30.08.2007, 13:32  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.657
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Zitat:
Bei jedem Seitenaufruf einen DB-Query abzusetzen, der mir die selben Daten immer und immer wieder holt, halte ich aber für einen Overkill.
Es gibt sicher Anwendungsfälle, in denen Man Datenbank-Ergebnisse in der Session speichern kann / sollte. Einer davon ist Paging. Beim ersten Aufruf ziehst du dir alle Ergebnisse (IDs) der Suche und speicherst diese in der Session. Beim Pagen (hier z.B. beim Wechsel auf die nächste Seite) musst du dir auf der zweiten Seite nicht wieder alle IDs selektieren, sondern kannst diese einfach aus der Session lesen und die entsprechende Seite anzeigen. Für diesen Awendungsfall kann man sehr generisch einen Pager schreiben, der einen Fallback hat, falls die Informationen in der Session verloren gehen.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Alt 31.08.2007, 01:08  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Passwort gehört allerdings nicht zu den Sachen, die in eine Session sollten.
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 31.08.2007, 09:09  
Erfahrener Benutzer
 
Registriert seit: 16.08.2007
Beiträge: 702
PHP-Kenntnisse:
Anfänger
Igäl befindet sich auf einem aufstrebenden Ast
Standard

In der Session ist natürlich nur ein md5-Hash des Passwortes. So wie es auch in der Datenbank steht.
__________________
Das Recht auf Dummheit gehört zur Garantie der freien Entfaltung der Persönlichkeit.
Mark Twain
Igäl ist offline  
Alt 01.09.2007, 21:13  
Erfahrener Benutzer
 
Registriert seit: 16.07.2005
Beiträge: 1.007
PHP-Kenntnisse:
Fortgeschritten
brian johnson befindet sich auf einem aufstrebenden Ast
Standard

du solltest bei sessions darauf achten, dass php diese daten temporär in einer datei speichert und, glücklicherweise, nicht im ram behält. wenn du nun also viel in $_SESSION speicherst, muss auch viel von der platte gelesen werden.
__________________
PHP4?!?>>>Aktuelle PHP Version: 5.2.11 || 5.3.0
Suse 11.2 *vorfreude*
brian johnson ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Session Variablen als Referenz!? O_o Sam781 PHP-Fortgeschrittene 4 01.10.2007 11:19
Session Daten gehen verloren rabatz PHP Tipps 2007 17 11.02.2007 16:19
session nach seitenwechsel leer... GELight PHP Tipps 2006 8 17.09.2006 15:17
Session Daten werden beim IE verschluckt. pherfinion PHP Tipps 2006 17 23.05.2006 17:41
daten an session anfügen PHP Tipps 2006 13 16.05.2006 07:47
Daten aus Datenbank sinnvoll speichern PHP Tipps 2006 15 02.02.2006 19:54
Session Frage - gleiches Formular 2 mal alle Daten behalten NetLook PHP Tipps 2007 1 21.11.2005 18:42
Daten eintragen und auslesen Rettungsdackel Datenbanken 0 14.09.2005 16:29
Session Daten in gehen in Function verloren pherfinion PHP Tipps 2005-2 5 19.08.2005 16:04
[Erledigt] schreiben der ausgelesenen daten in ein array sinnvoll? PHP-Fortgeschrittene 1 02.05.2005 11:42
Session gibt keine Daten aus PHP Tipps 2005 8 04.02.2005 21:09
[Erledigt] Formulardaten in einer Session speichern, per Link übergeben PHP Tipps 2004-2 2 29.12.2004 15:47
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05
Daten aus Session löschen rocco PHP Tipps 2004 13 02.09.2004 19:38
Bei Fehler Daten an Formular zurück, mit Session Sonja PHP Tipps 2004 3 22.06.2004 18:00

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php session speicherplatz, wieviel daten kann man in session speichern, wieviele daten in session?, speicherbedarf session php, speicherplatz session php, php session speicherbedarf, php session variable speicherbedarf, sessions in datenbank sinnvoll, session in dateien speichern, sachen in session speichern, php session variablen speicherplatz, php session variable speicherplatz, speichergröße session, php selbstaufruf datenbankergebnisse speichern, session php viele daten, session variable speicherplatz, wie lange speichert die daten in $_session php, php daten in session schreiben, php wieviel in session, php wieviel in $_session schreiben

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:05 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.