background image

Κεφάλαιο 3 - Ανάπτυξη και Υλοποίηση της Εφαρμογής 
 

 

 

47 

 

διαχωρισμένες  με  κριτήρια  τις  λειτουργίες  που  επιτελούν.  Έχουμε  επιλέξει  την  χρήση 
τεσσάρων κλάσεων, μία για την αλληλεπίδραση με την βάση δεδομένων, μία για την διατήρηση 
και εμφάνιση μηνυμάτων, μία για λειτουργίες λογαριασμού χρηστών και μία γενικού σκοπού. 

 

Η  πρώτη  κλάση  που  εξετάζουμε  ονομάζεται  “Database”  και  βρίσκεται  στο  αρχείο 

“Database.php”. Η κλάση αυτή είναι υπεύθυνη για την δημιουργία και εκτέλεση ερωτημάτων 
στην βάση δεδομένων. Στην κλάση “Database” βρίσκουμε τα στοιχεία σύνδεσης στην βάση 
δεδομένων  (Κώδικας  10,  γραμμές  10-13).  Έχοντας  τα  στοιχεία  αυτά,  κατά  την  μέθοδο 
δημιουργίας της κλάσης επιχειρούμε την σύνδεση με την βάση δεδομένων δημιουργώντας ένα 
αντικείμενο  PDO  που  ονομάζουμε  “$conn”  (Κώδικας  10,  γραμμές  15-19).  Στην  συνέχεια 
χρησιμοποιούμε το αντικείμενο αυτό για κάθε αλληλεπίδραση με την βάση. 

1. 

<?php

 

2. 

 

3. 

class

 Database 

{

 

4. 

// Database class variables

 

5. 

public

 

$conn

;

 

6. 

 

7. 

// Class constractor function

 

8. 

//  initialise the PDO connection

 

9. 

function

 

__construct

(){

 

10. 

  $db_host

=

"localhost"

;

 

// Host name 

 

11. 

  $db_username

=

"root"

;

 

// Mysql username 

 

12. 

  $db_password

=

""

;

 

// Mysql password 

 

13. 

  $db_name

=

"vhdl_compiler"

;

 

// Database name 

 

14. 

 

15. 

  

try

{

 

16. 

    $this

->

conn 

=

 

new

 PDO

(

"mysql:host=$db_host;dbname=$db_name;char-

set=utf8"

,

$db_username

,

$db_password

);

 

17. 

  

}

catch

(

PDOException 

$pe

){

 

18. 

    

die

(

'Connection error:'

 

.

 

$pe

->

getmessage

());

 

19. 

  

}

 

20. 

}

 

 

Κώδικας 10: Database.php - Η μέθοδος κατασκευής της κλάσης Database 

Αξίζει ενδεικτικά να εξετάσουμε μία από τις μεθόδους της κλάσης “Database” όπως την μέθοδο 
επιβεβαίωσης χρήστη. Η μέθοδος αυτή έχει ως είσοδο το όνομα και τον κωδικό που έδωσε ο 
χρήστης για την σύνδεσή του στην εφαρμογή. Ο κωδικός που δόθηκε μετασχηματίζεται από 
την συνάρτηση κατακερματισμού md5 καθώς συγκρατούμε με αυτή την μορφή τους κωδικούς 
χρηστών (Κώδικας 11, γραμμή 4). Στην συνέχεια δημιουργούμε το ερώτημα χρησιμοποιώντας 
όταν είναι  δυνατό  προετοιμασμένες  δηλώσεις μεταβλητών  καθώς προσθέτουν ένα επιπλέον 
επίπεδο  ασφάλειας  (Κώδικας  11,  γραμμές  5-6).  Έπειτα  προχωράμε  στην  υποβολή  του 
ερωτήματος και εάν γίνει επιτυχώς λαμβάνουμε την απόκριση και επιβεβαιώνουμε τον κωδικό 
(Κώδικας 11, γραμμές 8-10). Τέλος, εάν γίνει ταυτοποίηση του κωδικού με αυτόν που έδωσε 
ο χρήστης, επιστρέφεται το αναγνωριστικό “id” του χρήστη, αλλιώς επιστρέφεται 0 (Κώδικας 
11, γρα
μμές 11 και 14).