php sessions
Τι είναι
Είναι ένας τρόπος να κρατάμε προσωρινά δεδομένα. Αντίθετα με τα cookies
τα sessions είναι αρχεία τα οποία αποθηκεύονται στην πλευρά του διακομιστή.
Έτσι μπορούμε να αποθηκεύουμε προσωρινά δεδομένα ή ακόμα και το συνθηματικό
ενός χρήστη με μεγαλύτερη ασφάλεια.
Τι πρέπει να προσέχουμε
ΔΕΝ έχουμε 100% ασφάλεια με τα sessions. Τα sessions αποθηκεύονται σε κοινόχρηστη
τοποθεσία στον server. Οπότε εάν "κάποιο" άλλο site έχει πρόσβαση σε αυτό τον χώρο
σημαίνει ότι έχει πρόσβαση και στα αρχεία των sessions.
Δομή
phpinfo();
session.name PHPSESSID
session.save_path /tmp
session.cache_expire 180
Απλό παράδειγμα
http://gr.php.net/manual/en/session.examples.php
ses.php
<?php session_start(); if ( !isset( $_SESSION['count'] ) ) $_SESSION['count'] = 0; else $_SESSION['count']++; ?> <p align="center"><?php echo $_SESSION['count']; ?></p> <p align="center"><a href="<?php echo $PHP_SELF; ?>">Reload</a></p> <p align="center"><a href="destroy.php">Destroy</a></p>
destroy.php
<?php session_start(); // Unset all of the session variables. $_SESSION = array(); // Finally, destroy the session. session_destroy(); ?> <p align=center><input type=button onclick="javascript:history.go(-1);" value="back"></p>
Ένα σύνθετο παράδειγμα
Εδώ είναι ένα πιο σύνθετο παράδειγμα login/logout
file:ses.zip