background image

81 

 

 

 

Εικόνα 52 - Μήνυμα λάθους υπερσυνδέσμου 

4.3 Σύνδεση του χρήστη 

Η  σύνδεση  του  χρήστη  στο  σύστημα  για  να  επιτευχθεί  περνάει  από  διάφορους  ελέγχους. 

Αρχικά,  κατά  την  είσοδο  του  χρήστη  στη  σελίδα  «Σύνδεσης»,  δημιουργείται  αυτόματα  ένα 

token 64 χαρακτήρων. Το token αυτό, περνάει σαν value ενός κρυμμένου πεδίου (input) και 

αποθηκεύεται σε ένα SESSION με όνομα token_csrf. Την ίδια στιγμή αποθηκεύονται και άλλες 

δύο μεταβλητές SESSION, η maxTime, η key_time και γίνεται «αναγέννηση» (regenerate) του 

id του SESSION. Το maxTime είναι ο χρόνος που μένει ενεργή η σελίδα και συγκεκριμένα για 

μία ώρα, ενώ η key_time είναι ο χρόνος που ξεκινάει να μετράει σαν δείχτης για την maxTime. 

Έτσι  όταν  χρήστης  προσπαθήσει  να  εισέλθει  στο  σύστημα,  πρώτα  περνάει  από  έλεγχο  των 

token,  αυτού  που  είναι  αποθηκευμένο  στο  input  και  αυτού  που  είναι  αποθηκευμένο  στο 

SESSION.  Έπειτα  ελέγχεται  αν  είναι  ενεργοποιημένος  ο  λογαριασμός  του  χρήστη.  Στη 

συνέχεια επαληθεύεται αν το συνθηματικό ταιριάζει με αυτό στη βάση. Μετά, συγκρίνεται ότι 

δεν πέρασε ο χρόνος της σελίδας που μένει ενεργή και στο τέλος αν όλα πάνε καλά, γίνεται 

είσοδος  του  χρήστη  στο  σύστημα.  Στη  γραμμή  9-11  δημιουργούνται  οι  μεταβλητές  των 

SESSION, στη γραμμή 13 γίνεται regenerate το id και στην 15 γίνεται επιστροφή του token 

στην javascript και από κει στο input πεδίο, όπως φαίνεται στην 

Εικόνα 53

. 

 

Αφού έγιναν γνωστά τα παραπάνω που συμβαίνουν στο backend κομμάτι, τότε για να συνδεθεί 

ο  χρήστης  στο  σύστημα,  απαιτείται  ο  σωστός  συνδυασμός  του  username  ή  email  και  του 

συνθηματικού  του.  Σε  περίπτωση  λάθους,  εμφανίζονται  τα  κατάλληλα  μηνύματα 

προειδοποίησης, είτε αυτά αφορούν σε σωστό έλεγχο εισαγωγής των πεδίων, είτε αφορούν σε