Οι διαφορές Session με Cookies

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
shadow
Script Master
Δημοσιεύσεις: 606
Εγγραφή: 14 Απρ 2005 18:30

Οι διαφορές Session με Cookies

Δημοσίευση από shadow » 18 Αύγ 2005 22:43

SESSIONS:
:arrow: αποθηκεύονται στο server (server-side)
:arrow: η πληροφορία την οποία αποθηκεύουν είναι ενεργή όσο ο browser ειναι ανοιχτός, όταν ο browser κλεισει οι πληροφορίες πρέπει να ξαναεισαχθούν από το χρήστη.
:arrow: Το γεγονός ότι τα sessions αποθηκεύονται στον server(χρησιμοποιουν resources του server), μπορεί να επιφέρουν μεγάλη επιβάρυνση στο server.
:arrow: είναι πιο ασφαλείς σε σχέση με τα cookies

COOKIES:
:arrow: αποθηκεύονται στον client(στο pc μας)
:arrow: η πληροφορία την οποία αποθηκεύουν είναι ενεργή μέχρι να λήξει η διάρκεια ζωής που είχε οριστεί κατά την δημιουργία τους, ακόμη και o browser να κλείσει , στην επόμενη επισκεψή μας στο site η πληροφορία θα είναι ενεργή (δεν θα χρειαστεί να ξανακάνουμε Login)εκτός και εαν εχει λήξει το cookie
:arrow: Πολλοί χρήστες έχουν απενεργοποιημένα τα cookies στον υπολογιστή τους οπότε σε αυτή την περίπτωση δεν είναι δυνατόν να αποθηκευτεί η πληροφορία του χρήστη

Γενικά η κάθε μέθοδος έχει τα πλεονεκτήματα και τα μειονεκτήματα της, και το ποιο θα χρησιμοποιήσεις εξαρτάται από την εφαρμογή που έχεις:
Θελουμε η πληροφορία να ειναι ενεργή και την επόμενη μέρα που θα επισκεφτούμε το site, τότε η επιλογή προφανώς είναι η χρήση cookies.
Εαν δεν θέλουμε η πληροφορία να έχει μεγάλη χρονική διάρκεια, παρά μόνο όσο διαρκει η επισκεψή μας στο site , τοτε μαλλον η καλύτερη επιλογή είναι η χρήση sessions(πχ shopping cart).

Αυτά σε γενικες γραμμές
Close your eyes
For your eyes will only tell the truth and the truth isnt what you want to see
In the dark, is it easy to pretend that the truth is it ought to be.
Programmers are programmers because they like to code

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Οι διαφορές Session με Cookies

Δημοσίευση από Rapid-eraser » 18 Αύγ 2005 23:23

8a i8ela va kavw kapoies diefkriviseis omos kai egw me tnv sira mou :P

Lipov exoume kai leme !!!

Cookies: Eivai meros tou http protokolou kai dilovovte afstira. To cookie eivai ev akomati pliroforias pou mporei va periexei mexri 15kb pliroforia.
Se ka8e http session mporoume va stiloume kai va laboume apoiro ari8mo ogko cookies arki va miv iperbevei to sivoliko orio twv 15kb (se sivolo).

Ta cookies exouv tnv eksis morfi .

varname value expire path domain secure-send.

varname: onoma metablitis
value: periexomevo metablitis
expire: xroviki diarkia apo8ikefsis pliroforias
path: path sto opoio evergopiite to cookie
domain: domain sto opoio evergopiite to cookie
secure-send: av 8a apostelete movo kato apo https n oxi

Twra ta cookies ousiastika eivai mia pliroforia pou apo8ikebete stov xristi (client side) kai tnv epomevi fora pou o browser brei eva site pou ta path kai domain avtistixouv 8a stilei ola ta cookies pou avtistixouv gia afto tov sivdiasmo stov server
me mazi me to http request 8a kavei o xristis.
(ta cookies dev mporouv va periexouv arrays
ka8os kai serialized objects alla oxi streams)
Eivai prosbasima tnv epomevi fora pou 8a mpei o xristis sto sigkekrimevo site.
Twra n diarkia zois tous mporei va eivai aftomati
me 0 sec sto time out alla eos kai tnv int timi pou sikovei n cpu gia timestamp.
Av dev do8ei timestamp tote to cookie ligei me to klisimo tou browser.
Oi plirofories sto cookie dev kwdikopiouvte oute stov browser oute kata tnv metafora tis pliroforias.

Sessions: Ta sessions eivai to fisiko sivepakolou8o twv cookies. Gia va apofigoume va apo8ikefsoume tnv pliroria stov xristi (kai evdexomevos va apofigouv tis polles metablites apo cookies) iparxei n ilopiisi
tis php gia ta sessions.
Distixos n ilopiisi tis php dev akolou8ei kapoio rfc kai etsi eivai kapos stov aera.
Dev kodikopiouvte ta dedomeva kai apo8ikebovte stov server (kai sivi8os eivai prosbasima apo opoiodipote exei access sto filesystem meso tis php)
Ta sessions eivai komatia pliroforias pou dimiourgei n php kai apo8ikebei meta to klisimo tou script.
Mesa apo to programamas dilovoume pies metablites 8eloume va apo8ikeusoume kai sto telos tou script dimiourgite eva arxeio me to session ID .
To session ID eivai eva movadiko string pou mporei va avakalesei tnv plirofira apo tov server.
H diarkia afti tis pliroforias exei eva maximum mege8os pou orizete apo to php.ini kai av dev to katastrepsei aftomata o xristis (kavovtas drop to session) pervaei o trush collector tis php kai ta ka8arizei aftomata meta tnv liksi.
Sta session mporoume va apo8ikefsoume opoiodipote ogko plriforias (prosoxi sto hammering ).

Gia va evergopiisoume kapoio session prepei va exoume to session ID . Yparxouv 2 tropoi va metaferoume to session apo selida se selida.
O protos eivai va apo8ikefsoume to session id se eva cookie kai apo ekei va to tsimpame se ka8e selida
H va kavoume casecade apo selida se selida to session ID meso post/get.

Otav exoume to session ID kai avaktisoume to session oi metablites avaktouvte sto avtistixo array twv session.
Sta session mporei va kodikopii8ei n plirofria aftomata
omos dev iparxei tetoia divatotita stnv 4.x av dev kavo la8os eksarxis .
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
GRaecuS
Δημοσιεύσεις: 113
Εγγραφή: 02 Απρ 2003 10:21
Τοποθεσία: Thessaloniki
Επικοινωνία:

Οι διαφορές Session με Cookies

Δημοσίευση από GRaecuS » 19 Αύγ 2005 01:46

ωραία το κατάλαβα

οπότε εγώ θέλω να κάνω την σελίδα μου με cookies

αλλά μήπως μπορείτε να κάνετε και ένα tutorial για τα cookies γιατί εγώ μόνο με session έμαθα να κάνω αλλά και το πώς μπορώ να αποθηκεύσω ένα session ID σε ένα cookie γιατί σαν get action μου εμφανίζει: "?PHPSESSID=......"?

α, και το πως γίνεται η αποθήκευση και ο έλεγχος των στοιχείων του cookie

σαν να ζητάω πολλά μάλλον έ? πάλι καλά που είστε και εσείς πάντως γιατί στη σχολή ότι να'ναι μας διδάσκουν!! :-?

Άβαταρ μέλους
GRaecuS
Δημοσιεύσεις: 113
Εγγραφή: 02 Απρ 2003 10:21
Τοποθεσία: Thessaloniki
Επικοινωνία:

Οι διαφορές Session με Cookies

Δημοσίευση από GRaecuS » 19 Σεπ 2005 01:15

Τελικά δεν μου είπατε,
πώς θα περάσω το session σε cookie ώστε να μπορεί κάποιος που έχει tickάρει το ανάλογο checkbox κατά την είσοδο να μην χρειάζεται να ξανακάνει login την επόμενη φορά που θα ξαναμπεί?

Παραδείγματα άκρως επιθυμητά.

Άβαταρ μέλους
bilios
Δημοσιεύσεις: 262
Εγγραφή: 29 Ιουν 2005 11:31
Τοποθεσία: Sahara..

Οι διαφορές Session με Cookies

Δημοσίευση από bilios » 07 Φεβ 2006 00:24

file mou kane ligo googling kai tha ta vreis ola!!

Pare ena tutorial gia ta cookies kai des, an katalavaino auto pou les einai sxetika eukolo me thn setcookie() des to tut..

codewalkers.com/tutorials/32/1.html


____
Billis

basia
Δημοσιεύσεις: 4
Εγγραφή: 11 Μάιος 2006 17:30

Οι διαφορές Session με Cookies

Δημοσίευση από basia » 05 Ιουν 2006 20:11

Γεια σας εχω Κολλήσει τρεις μέρες με το συγκεκριμένο πρόβλημα Ο παρακάτω κώδικας είναι μάλλον σωστός αλλά έχω ως αποτέλεσμα το εξής μήνυμα.
ΚΩΔΙΚΑΣ:
<?php
session_start();

$SESSION['SESS_VAR'] = "HELLO WORD!";

echo 'To $SESSION[\'SESS_VAR\'] einai'
.$SESSION['SESS_VAR'].'<BR/>';
?>

ΑΠΟΤΕΛΕΣΜΑ:
Warning: session_start(): open(/tmp\sess_aabb8b7eadd13be27d5b26c7e08d9675, O_RDWR) failed: No such file or directory (2) in C:\Program Files\Apache Group\Apache2\htdocs\2.php on line 2

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at C:\Program Files\Apache Group\Apache2\htdocs\2.php:2) in C:\Program Files\Apache Group\Apache2\htdocs\2.php on line 2

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at C:\Program Files\Apache Group\Apache2\htdocs\2.php:2) in C:\Program Files\Apache Group\Apache2\htdocs\2.php on line 2
To $SESSION['SESS_VAR'] einai

Warning: Unknown(): open(/tmp\sess_aabb8b7eadd13be27d5b26c7e08d9675, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0

ΤI ΠΡΕΠΕΙ να τροποποιήσω στον υπολογιστή μου ώστε να δουλέψει;
ΕΥΧΑΡΙΣΤΩ!

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Οι διαφορές Session με Cookies

Δημοσίευση από Rapid-eraser » 06 Ιουν 2006 11:04

Pigeve sto php.ini kai bres to simio pou grafei
kai dior8ose tnv grami pou exei
to session_save se

Κώδικας: Επιλογή όλων

session.save_path = "C&#58;/WINNT/Temp"
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης