Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP]: Session (https://www.delphipraxis.net/22891-%5Bphp%5D-session.html)

yankee 25. Mai 2004 19:01


[PHP]: Session
 
Hat zufällig jemand 'ne Seite, auf der erklärt wird, wie bei PHP die Session-Funktion verwendet wird? Oder ein einfaches Codebeispiel?

titus 25. Mai 2004 19:04

Re: [PHP]: Session
 
Einfaches Beispiel:
Code:
<?php
session_start(); // Session starten

$_SESSION['foo'] = 'INHALT'; // Session-variable erzeugen

echo '[url="andere_seite.php?session_id='.session_id().'"]Link mit session_id[/url]';
?>
Jetzt die Datei andere_seite.php:
Code:
<?php
session_start(); // Wichtig: damit können andere Session-Variablen importiert werden

echo $_SESSION['foo'];
?>
mfG, LCD

Alexander 25. Mai 2004 19:11

Re: [PHP]: Session
 
bei einem Link musst du aber die Session-ID nicht mitgeben.
Es sei denn du speicherst die Daten der Session in ner Datenbank, z.B. wenn man die Seite nach Ablauf der Session mit den gleichen Eingaben wieder öffnen will...
Auf PHP.net wirst du steht noch einiges mehr ;-)
Auf php-resource.de, php-tutorial.de etc. stehen sicherlich einige Tutorials zum Thema Sessions.
Ich kann dir aber nicht sagen, wie die so sind...

titus 25. Mai 2004 19:12

Re: [PHP]: Session
 
Ich weiß, dass man sie nicht übergeben muss (ich machs auch nie)

Aber ich wollte es ihm als Wissen mitgeben =P

mfG, LCD

yankee 25. Mai 2004 19:25

Re: [PHP]: Session
 
Also moment. Wenn ich das richtig verstanden habe, erzeugt session_start() eine id, mit der ich den User immer wieder identifizieren kann. Wenn ich jetzt einen neuen Link öffne, und ich eine Session id mitsende, weiß der PHP-Server, ach, das ist wieder der und der hatte die und die Variable und diese stehen mir dann wieder zu Verfügung.
Aber wenn ich keine Session id übergebe, woher soll der Server das dann wissen?

Chewie 25. Mai 2004 19:28

Re: [PHP]: Session
 
Wenn keine ID übergeben wird, gar nicht.
Aber in der Standard-Konfiguration speichert PHP die Sessions in einem Cookie, falls der Browser dies zulässt, sendet er also jedes Mal die Session-ID aus dem Cookie.

Alexander 25. Mai 2004 19:28

Re: [PHP]: Session
 
Zitat:

Zitat von LLCoolDannY
Ich weiß, dass man sie nicht übergeben muss (ich machs auch nie)

Aber ich wollte es ihm als Wissen mitgeben =P

mfG, LCD

Habe ich auch nicht bestritten ;-)

Zitat:

Zitat von yankee
Also moment. Wenn ich das richtig verstanden habe, erzeugt session_start() eine id, mit der ich den User immer wieder identifizieren kann. Wenn ich jetzt einen neuen Link öffne, und ich eine Session id mitsende, weiß der PHP-Server, ach, das ist wieder der und der hatte die und die Variable und diese stehen mir dann wieder zu Verfügung.
Aber wenn ich keine Session id übergebe, woher soll der Server das dann wissen?

session_start erzeugt im Prinzip nicht die ID, sondern startet die Session halt. Soweit ihc weiß wird ein temporärer Cookie gesetzt, da bin ich mir aber nicht so sicher.

H4ndy 25. Mai 2004 19:43

Re: [PHP]: Session
 
ich würde dir aber empfehlen die Session so Browser-Sicher wie möglich zu machen
und dazu zählt, dass du am Anfang jeder Seite
Code:
ini_set("session.use_cookies",0);
ini_set("session.use_trans_sid",0);
machst.
So wird kein Session-Cookie gesetzt und die automatische
ID-Weitergabe wird deaktiviert. (die ID wird vollautomisch angehängt bei 1)

OK du kannst auch ini_set("session.use_trans_sid",1);
verwenden, aber so hab ich schon mal ein Link-Loch übersehen...

yankee 25. Mai 2004 19:54

Re: [PHP]: Session
 
Mal zu dem, wofür ich eine Session überhaupt brauche:
Ich schreibe einen Webshop und wenn der User etwas kauft, dann wird das in einer DB abgelegt. Im Prinzip brauche ich jewals nur den User, damit der arme nicht jedesmal seinen Usernamen + Passwort von neu eingeben muss. Den Rest kann ich aus der DB auslesen...

Also brauche ich doch theoretisch NUR eine Session ID...

yankee 26. Mai 2004 14:36

Re: [PHP]: Session
 
Bö, wenn's mir keiner erklären will, sollte ich vielleicht immer das Passwort und den Username wieder von neu anhängen. Das ist vielleicht garnicht so 'ne schlechte Idee.
Ich hätte 'ne Session-ID eben einfach bevorzugt, weil diese irgendwann abläuft und für Hacker unzugänglicher ist. Außerdem wird das Passwort und der Benutzername dann ja auch in der History abgelegt, was aber wahrscheinlich eh nicht zu vermeiden ist, da ein einmaliger login ja von Nöten ist.
Ich lasse das Passwort zwar nicht vom Server, sondern vom client mit JavaScript md5 verschlüsseln, aber trotzdem bleibt das Passwort so leicht hackbar...


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz