hi ihr experten,
wer kann mir sessions erklären? *gg* nee, also im ernst. ich versuche mich in php und erarbeite hier und da ein paar sachen, zum üben, zum spass, naja. auf meiner seite kann man sich einloggen und dann bestimmte dinge sehen und persönliches bearbeiten.
nach dem motto „erst mal muss es klappen, dann kümmer ich mich um mehr“ habe ich bisher all meine links mit variablen ausgestattet, um den user beim seitenwechsel wiederzuerkennen, etwa so
seite2.php?id=$id$passwort=$passwort
dass das unter umständen für größere projekte unsicher war, war mir vollstens bewußt, ich übe ja nur. soweit.
erstes sicherheitsproblem: wenn ein user die url aus der zeile kopiert und verschickt, kann sich der empfänger als falscher user einloggen. doof.
jetzt habe ich sessions entdeckt, und das sceint mir zunächst eine lösung zu sein. aber mit der beschreibung aus den büchern und von de.php.net/manual komm ich nicht klar. mag mich jemand korrigieren, falls ich mit folgendem falsch liege? ich möchte nicht meine scripts umbauen, bevor ich nicht weiss, dass ichs richtig verstanden habe:
mit
session_start()
am anfang einer php-datei wird eine session gestartet, deren id neu ist oder wenn vorhanden übernommen wird. dabei wird eine datei auf dem server abgelegt, die inhalte haben kann. die id dieser session wird automatisch per cookie gespeichert, wenn das deaktiviert wird, wird eine variable sid gebaut. ich muss mich um nix kümmern.
links in meiner site werde ich in zukunft mit
seite2.php?sid=$sid
aufrufen. wenn der user cookies akzeptiert hat, kommt bei seite 2 die sid per cookie an, wenn nicht, übernimmt das ?sid=$sid diese übertragung.
mit
$_SESSION[‚id‘]
$_SESSION[‚passwort‘]
$_SESSION[‚nochnevariable‘];
und so weiter kann ich nun variablen übergeben bzw. auslesen. diese werden auf dem server gespeichert und ausser der sid bekommt keiner was mit. wenn der user die seite verläßt oder den browser schließt, wird diese datei gelöscht.
somit ist eigentlich alles geklärt - wenn ich diese vorgehensweise soweit richtig verstanden habe.
was sollen dann aber bloss die ganzen anderen sachen wie session_register ( mixed Name [, mixed …]) oder session_id()
sowas muss ja ne bedeutung haben aber die erklärungen versteh ich nicht. auch, was die autoren der bücher und beschreibungen immer von mir wollen, wenn sie mir etwas über diese php.ini erzählen oder was ich darin ändern soll (mich würde mehr interessieren, ob ich eine eigene php.ini bei strato habe und wo die ist, oder ob die für mich als kunden überhaupt veränderbar ist)
soweit.
vielen dank für eure hilfe
christian