Daten per Session verfügbar machen?
am 03.01.2006 10:52:16 von Tom Baxxler
Hallo,
habe eine Anwendung geschrieben, in der eine große Menge Daten aus einer
DB eingelesen und dann per php angepasst und angezeigt wird. Da sich der
User immer weiter in die Daten reinklicken kann (ähnlich eines Baumes),
würde ich die Daten gerne dem folgenden Skript weitergeben, um nicht
immer wieder die DB anfragen zu müssen.
Nun überlege ich ob es sinnvoller ist, die $result-Variable, die die
Daten der SQL-Abfrage enthält in eine Sessionvariable zu schreiben, oder
ob die Daten besser in ein Array kopiert und dann als Sessionvariable
gespeichert werden sollen.
Über Antworten würde ich mich freuen!
Viele Grüße,
Tom
Re: Daten per Session verfügbar machen?
am 03.01.2006 11:29:14 von Niels Braczek
Tom Baxxler schrieb:
> Nun überlege ich ob es sinnvoller ist, die $result-Variable, die die
> Daten der SQL-Abfrage enthält in eine Sessionvariable zu schreiben, oder
> ob die Daten besser in ein Array kopiert und dann als Sessionvariable
> gespeichert werden sollen.
Die $result-Variable enthält keine Daten. Diese Variable ist nach
Skriptende absolut wertlos, egal wo du sie hinspeicherst, Es handelt
sich nämlich nur um ein Handle zu den Daten, das bei Skriptende
automatisch freigegeben wird.
Die sinnvollste Methode ist sicher, nur Schlüsselwerte in der Session zu
speichern, die dir erlauben die Daten in der DB einfach zu lokalisieren.
MfG
Niels
--
| http://www.kolleg.de · Das Portal der Kollegs in Deutschland |
| http://www.bsds.de · BSDS Braczek Software- und DatenSysteme |
| Webdesign · Webhosting · E-Commerce · Mambo Content Management |
`----------------------------------------------------------- -----´
Re: Daten per Session verfügbar machen?
am 03.01.2006 11:52:33 von Fabian Schladitz
Tom Baxxler schrieb:
> habe eine Anwendung geschrieben, in der eine große Menge Daten aus ei=
ner=20
> DB eingelesen und dann per php angepasst und angezeigt wird. Da sich de=
r=20
> User immer weiter in die Daten reinklicken kann (ähnlich eines Baumes=
),=20
> würde ich die Daten gerne dem folgenden Skript weitergeben, um nicht =
> immer wieder die DB anfragen zu müssen.
Hier stellt sich die Frage, ob es nötig ist, alle Daten sofort zu laden=
,=20
oder ob es vorher Aggregationen gibt. Dann würdest du die Last auf=20
deiner DB erheblich senken.
Jeder Klick übergibt dann im Idealfall einen indizierten Wert, sodass j=
e=20
Abfrage, welche "tiefer" im Baum ist, schneller wird, da sie am Ende=20
direkt den Primärschlüssel haben.
> Nun überlege ich ob es sinnvoller ist, die $result-Variable, die die =
> Daten der SQL-Abfrage enthält in eine Sessionvariable zu schreiben, o=
der=20
> ob die Daten besser in ein Array kopiert und dann als Sessionvariable=20
> gespeichert werden sollen.
Niels hat dir da ja schon die richtige Antwort gegeben.
--=20
HTH,
Fabian