Σελίδες Προοίµιο 1 Abstract 1 Εισαγωγή 2



Σχετικά έγγραφα
ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία ( ) Υπηρεσία FTP (File Transfer Protocol)

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Εργαλεία ανάπτυξης εφαρμογών internet Ι

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

Βασικές Έννοιες Web Εφαρμογών

ΤΟ ΙΝΤΕΡΝΕΤ ΚΩΣΤΗΣ ΚΙΤΣΟΠΟΥΛΟΣ Α 2

ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΙΣΤΟΤΟΠΩΝ

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες

Εγκατάσταση. Εγκατάσταση του Wamp

6 Εισαγωγή στο Wordpress 3.x

Εφαρµογή: Σύστηµα ιαχείρισης ιαδικτυακού Περίπτερου / Ιστοσελίδας στον διαδικτυακό τόπο kalliergea.gr

ΚΕΦΑΛΑΙΟ Web Services

Δυναμικές Ιστοσελίδες στο Πανελλήνιο Σχολικό Δίκτυο

ιαχείριση Πληροφοριών στο ιαδίκτυο

Εργαλεία ανάπτυξης εφαρμογών internet Ι

ΕΡΓΑΣΤΗΡΙΟ FRONT PAGE 3

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

7.11 Πρωτόκολλα Εφαρµογής Βασικές και Προηγµένες Υπηρεσίες ιαδικτύου. Ηλεκτρονικό Ταχυδροµείο. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

7.11 Πρωτόκολλα εφαρµογής

e-κπαίδευση Πλατφόρµα Ασύγχρονης Τηλε-κπαίδευσης Οδηγίες χρήσης για τους σπουδαστές του ΤΕΙ Αθήνας και τους επισκέπτες της δικτυακής πύλης e-κπαίδευση

1. Εγκατάσταση του NetMeeting

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών

Προγραμματισμός διαδικτυακών εφαρμογών με PHP

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΗΛΕΚΤΡΟΝΙΚΕΣ ΥΠΗΡΕΣΙΕΣ

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

Εγκατάσταση και βασική διαχείριση ενός ιστοτόπου

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΗΛΕΚΤΡΟΝΙΚΟ ΚΑΤΑΣΤΗΜΑ

ΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙ ΑΣ ΣΤΟ MICROSOFT WORD

XAMPP Apache MySQL PHP javascript xampp

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet.

ΗΜΟΚΡΙΤΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΡΑΚΗΣ ΥΠΕΥΘΥΝΟΣ ΈΡΓΟΥ AΝ.KΑΘ.Χ. ΚΟΥΚΟΥΡΛΗΣ ΤΗΛ: , FAX :

Σταύρος Καουκάκης Ευτύχιος Βαβουράκης

ΚΕΠΛΗΝΕΤ ΕΒΡΟΥ. Καλτσίδης Χρήστος

Μια καλή επιλογή θα ήταν (χωρίζοντας τις λέξεις με παύλα -) ή

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ. Τρίτη, 7 Φεβρουαρίου 2012

Γενικές Αρχές. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

ΕΓΧΕΙΡΙ ΙΟ ΧΡΗΣΗΣ ΛΟΓΙΣΜΙΚΟΥ E-LEARNING - 2 -

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

Epsilon Net PYLON Platform

Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης. Συντάκτης. Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης

Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ.

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Οδηγίες Χρήσης EAP Controller Software

Εγχειρίδιο Χρήστη - Μαθητή

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης eclass 2.0. Οδηγίες Αναβάθµισης (Upgrade) Αθήνα, 1 Ιουνίου Εισαγωγή

ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών

χρήστες και υπηρεσίες

Διαχείριση Πληροφοριών στο Διαδίκτυο. Εργαστήριο 1

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ

ΕΛΑΧΙΣΤΕΣ ΑΠΑΙΤΗΣΕΙΣ ΕΞΟΠΛΙΣΜΟΥ ΕΠΙΚΟΙΝΩΝΙΑ... 23

Σύντοµος Οδηγός Βοήθειας για τη Χρήση των Μαθηµάτων e-learning για το ΟΛΟΚΛΗΡΩΜΕΝΟ ΠΛΗΡΟΦΟΡΙΑΚΟ ΣΥΣΤΗΜΑ

ΕΡΓΑΣΙΑ. (στο µάθηµα: Τεχνολογίες Εφαρµογών ιαδικτύου του Η εξαµήνου σπουδών του Τµήµατος Πληροφορικής & Τηλ/νιών)

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου


Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

Περιεχόµενα. Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional. Ευχαριστίες Εισαγωγή... 19

Εισαγωγή στις ΤΠΕ ΙΙ Γιάννης Βρέλλης ΠΤΔΕ-Πανεπιστήμιο Ιωαννίνων. World Wide Web. Παγκόσμιος Ιστός

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Browsers. Λειτουργικότητα και Παραμετροποίηση

ΥΠΗΡΕΣΙΑ. Ηλεκτρονική ιαχείριση Τάξης. Οδηγίες χρήσης για τον µαθητή.

ΔΗ Μ Ι Ο ΥΡ Γ Ι Α W I K I με τ η χρήση τ η ς υπ ηρεσίας h t t p : / id ot.com /

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία

Οδηγίες Χρήσης της MySQL

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ

Cubitech Hellas Ακροπόλεως 24, Καλλιθέα, Αθήνα Τ.Κ , Ελλάδα, Τηλ Φαξ

Μέρος Ι: Εγκατάσταση και ιαμόρφωση των MySQL, Apache και PHP

Σχεδίαση και Ανάπτυξη Ιστότοπων

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΚΕΝΤΡΟ ΙΑΧΕΙΡΙΣΗΣ ΙΚΤΥΩΝ. Εγχειρίδιο χρήσης των υπηρεσιών τηλεκπαίδευσης του Πανεπιστηµίου Ιωαννίνων. Ασύγχρονη τηλεκπαίδευση

Διαδίκτυο: Ιστορία, Δομή, Υπηρεσίες

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Επίπεδο δικτύου IP Forwading κτλ

Το διαδίκτυο είναι ένα δίκτυο που αποτελείτε από πολλά μικρότερα δίκτυα υπολογιστών.

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ

Ενότητα 8. Εισαγωγή στην Πληροφορική. Internet: Τότε και Τώρα. Κεφάλαιο 8Α. Τρόπος Λειτουργίας Internet. Χειµερινό Εξάµηνο

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΜΕ ΧΡΗΣΗ PHP

Σχεδίαση Βάσεων Δεδομένων

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

Η χρήση του MOODLE από την οπτική γωνία του ιαχειριστή

Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου. Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I

ΕΠΕΞΕΡΓΑΣΙΑ ΚΕΙΜΕΝΟΥ

ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΡΓΑΣΤΗΡΙΟ 2

ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης

Εισαγωγή στην Πληροφορική

Ο ΗΓΙΕΣ ΣΥΜΠΛΗΡΩΣΗΣ ΤΗΣ ΦΟΡΜΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΥΠΟΒΟΛΗΣ

Λίγα λόγια από το συγγραφέα Κεφάλαιο 1: Βάσεις δεδομένων και Microsoft Access Κεφάλαιο 2: Microsoft Access

Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy

2 Ο Ε.Κ.Φ.Ε. ΗΡΑΚΛΕΙΟΥ. Οδηγίες χρήσης PDFCreator

Αν παρ όλα αυτά αντιμετωπίζετε πρόβλημα, επικοινωνήστε με το Κέντρο Δικτύου της ΑΣΠΑΙΤΕ Τηλ , , ,

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Transcript:

ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ ΠΑΡΑΡΤΗΜΑ ΚΑΣΤΟΡΙΑΣ ΤΜΗΜΑ ΗΜΟΣΙΩΝ ΣΧΕΣΕΩΝ & ΕΠΙΚΟΙΝΩΝΙΑΣ Σχεδιασµός και Ανάπτυξη µιας on-line Βάσης εδοµένων για Ηλεκτρονικά Έγγραφα Επιβλέπων καθηγητής: ηµήτρης Αµανατίδης Επιµέλεια: Στέλλα Μπίλη ΚΑΣΤΟΡΙΑ 2004 1

Περιεχόµενα Σελίδες Προοίµιο 1 Abstract 1 Εισαγωγή 2 Κεφάλαιο 1 ο - Ορισµός και Παρουσίαση του ιαδικτύου (Internet) 4 1.1 Παρουσίαση του διαδικτύου 4 1.2 WWW [World Wide Web (Παγκόσµιος Ιστός)] 5 1.3 Το µοντέλο πελάτη εξυπηρετητή 6 1.4 υναµικές σελίδες και διαδίκτυο 6 1.5 Βάσεις δεδοµένων και διαδίκτυο 7 Κεφάλαιο 2 ο Σκοπός και Απαιτήσεις της Εφαρµογής 9 2.1 Σκοπός και αντικειµενική στόχοι 9 2.2 Αρχιτεκτονική περιγραφή της εφαρµογής 9 2.3 Αισθητική παρουσίαση 11 2.4 Μη λειτουργικές απαιτήσεις της εφαρµογής 12 Κεφάλαιο 3 ο Τεχνικά και Τεχνολογικά Χαρακτηριστικά της Εφαρµογής 13 3.1 Κριτήρια επιλογής προγραµµάτων 13 3.2 Ορισµός και παρουσίαση των MySQL και PHP 14 3.2.1 Ορισµός και παρουσίαση των δικαιωµάτων της MySQL 14 ιαδικασία πιστοποίησης 15 ιαχείριση των δικαιωµάτων των χρηστών 16 Η γλώσσα προγραµµατισµού SQL 16 3.2.2 PHP (Hypertext Preprocessor) 17 Βασικά δοµικά στοιχεία της PHP 18 Συναρτήσεις 18 Μεταβλητές 19 Τελεστές 20 Εντολές 20 3.2.3 PHP και HTML 21 3.3 Αναλυτική παρουσίαση των λειτουργιών του µοντέλου πελάτη-εξυπηρετητή και του Apache Server 2.0 23 3.4 Επικοινωνία της βάσης δεδοµένων MySQL µε PHP 26 Κεφάλαιο 4 ο Εγκατάσταση των MySQL, PHP και APACHE 28 2

4.1 Εγκατάσταση της MySQL 4.0 στα Windows 28 4.2 Εγκατάσταση του Apache Server 2.0 στα Windows 28 4.3 Εγκατάσταση της PHP 4.2.3 στα Windows 33 Κεφάλαιο 5 ο Σχεδίαση και Ανάλυση της Εφαρµογής 35 5.1 Σχεδίαση των πινάκων της βάσης δεδοµένων 35 5.2 Ανάπτυξη της web εφαρµογής 37 5.2.1 Σελίδες πρόσβασης των χρηστών 39 Εγγραφή νέου µέλους Registerindex.php 39 Είσοδος µέλους Loginindex.php 40 Σελίδα χρήστη User.php 41 Αναζήτηση άρθρου Index.html 42 5.2.2 Σελίδες πρόσβασης του διαχειριστή 45 Αρχική Σελίδα Index.html 45 Είσοδος µέλους Loginindex.php 45 Σελίδα διαχειριστή Admin.php 47 Προσθήκη άρθρου Addarticleindex.php 47 ιαγραφή άρθρου Deletearticle.php 49 ιόρθωση άρθρου Editarticle.php 50 Αναζήτηση άρθρου - Searchartixle.php 51 Κεφάλαιο 6 ο Προβλήµατα Συµπεράσµατα Βελτιώσεις 52 6.1 Προβλήµατα κατά την εκπόνηση της εργασίας 52 6.1.1 Εκµάθηση της γλώσσας προγραµµατισµού PHP και SQL 52 6.1.2 Προγραµµατισµός σελίδων 53 6.1.3 Πρόβληµα µε ιό 53 6.2 Συµπεράσµατα 54 6.3 Βελτιώσεις που µπορούν να γίνουν στο µέλλον 54 Βιβλιογραφία 56 Παράρτηµα Τµήµατα Κώδικα 57 3

~Προοίµιο~ Κατά τη διάρκεια των µελετών µου για την εκπόνηση της εργασίας, όσον αφορά τον τοµέα της πληροφορικής, συνειδητοποίησα ότι παρά την ηλεκτρονική πρόοδο και την ανάπτυξη των συστηµάτων του διαδικτύου, η on-line κάλυψη ερωτήσεων διάφορων θεµάτων δηµόσιου ενδιαφέροντος και η σηµασία τους, έχουν εξεταστεί µε τα µέσα της επεξεργασίας «λέξης κλειδιού». Λαµβάνοντας υπόψη αυτή την κατάσταση, θεωρώ τις on-line βάσεις δεδοµένων να είναι το επόµενο ιδιαίτερο βήµα προς την επέκταση και βελτίωση του διαδικτύου. Σε αυτή την εργασία, εξετάζεται η δυνατότητα λειτουργίας µιας on-line εφαρµογής, στην οποία θα υπάρχουν ηλεκτρονικά έγγραφα, µε την χρησιµοποίηση συγκεκριµένων προγραµµάτων. Σκοπός του παρόντος κειµένου είναι να παρουσιάσει την εφαρµογή αυτή, ξεκινώντας από την ανάγκη δηµιουργίας της και καταλήγοντας στα συµπεράσµατα από την ανάπτυξή της. ~Abstract~ During my studies for the elaboration of this project, regarding the field of computer science, I have come to realize that, despite the electronic progress and development of internet systems, on-line coverage of queries of general subjects of public interest and importance have been dealt with by the means of keyword processing. In light of this situation, I regard on-line databases to be the next considerable step towards internet expansion and improvement. In this report, the potential of running an on-line system storing electronic documents with in particular programs is examined. The aim of this report is to present the web application, beginning from the requirements of creating and turn out to the conclusions of developing. 4

Εισαγωγή Τα τελευταία χρόνια η χρήση του διαδικτύου (internet) έχει γίνει επιτακτική ανάγκη για όλους. Οι υπηρεσίες που προσφέρει ολοένα και αυξάνονται εφόσον και η ζήτηση από την πλευρά των χρηστών αυξάνεται και αυτή. Για να ικανοποιηθούν, λοιπόν, οι ανάγκες των χρηστών, όσον αφορά την εξυπηρέτησή τους από το διαδίκτυο µε εύκολο και ασφαλή τρόπο έχουν αναπτυχθεί πολλά λογισµικά προγράµµατα. Όµως παράλληλα µε την ανάπτυξη των τελευταίων διευκολύνονται και οι νέοι κατασκευαστές προγραµµάτων. Μια χρήσιµη υπηρεσία που προσφέρει το διαδίκτυο είναι η αναζήτηση της πληροφορίας. Έχουν αναπτυχθεί πολλές εφαρµογές για την παροχή της υπηρεσίας αυτής. Πρόκειται για εφαρµογές που έχουν αποθηκευµένες πληροφορίες στις οποίες δε µπορούν όλοι να έχουν πρόσβαση, παρά µόνο εάν τους δοθεί άδεια από τον επόπτη (διαχειριστή) της εφαρµογής. Συνήθως είναι εφαρµογές οn-line που έχουν αναπτυχθεί για ιδιώτες ή εταιρείες, που θέλουν να ελέγχουν την πληροφορία που παρέχουν για λόγους ασφαλείας. Οι on-line εφαρµογές µπορεί να κατασκευαστούν είτε από εταιρείες ή άτοµα, που τις παρέχουν σε άλλους υπό την επίβλεψη τους, είτε από εταιρείες ή άτοµα που τις λειτουργούν αυτόνοµα για ιδιωτική τους χρήση, υπό την επίβλεψη των ίδιων. Για την καλύτερη εξυπηρέτηση των χρηστών του διαδικτύου που θα τους επισκεφθούν και για την ασφάλεια των δεδοµένων, παρέχουν την πληροφορία που θα ζητηθεί, µόνο εάν ο χρήστης γίνει µέλος, δηλαδή κάνει εγγραφή των προσωπικών του στοιχείων του on-line. Η λειτουργία της on-line βάσης δεδοµένων ηλεκτρονικών εγγράφων που δηµιουργήθηκε, στηρίχθηκε στην παραπάνω ιδεολογία. Πρόκειται για µια εφαρµογή στην οποία ο κατασκευαστής είναι και διαχειριστής του συστήµατος. Οι υπηρεσίες που προσφέρει είναι πληροφορίες για σεµινάρια και συνέδρια στον τοµέα ηµοσίων Σχέσεων και Επικοινωνίας που πραγµατοποιούνται στην Ελλάδα και ο χρηστής θα µπορεί να πάρει τις πληροφορίες που θέλει, αφού έχει κάνει εγγραφή στο σύστηµα. Η τεχνολογία που χρησιµοποιείται για την κατασκευή εξαρτάται από τον σκοπό λειτουργίας της εφαρµογής και από την ιδιοσυγκρασία του κατασκευαστή. Για την ανάπτυξη και λειτουργία µιας on-line εφαρµογήs τα εργαλεία που χρησιµοποιούνται είναι ένας εξυπηρετητής (server), όπως είναι ο ΙΙS ( Internet Information Server) της Microsoft και ο Apache [7], µια βάση δεδοµένων όπως η MySQL [8] (My Structured Query Language) και Microsoft Access και η γλώσσα προγραµµατισµού που θα γραφτεί ο κώδικας όπως η JAVA, ASP(Active Server Pages), PHP [9] (Hypertext Preprocessor). 5

Για την ανάπτυξη της on-line βάσης δεδοµένων ηλεκτρονικών εγγράφων που θα δούµε παρακάτω, χρησιµοποιήθηκε γλώσσα προγραµµατισµού PHP, ο εξυπηρετητής Apache Server και η βάση δεδοµένων MySQL. Στο πρώτο κεφάλαιο γίνεται µια παρουσίαση του παγκόσµιου ιστού (internet) µε τα πιο σηµαντικά χαρακτηριστικά του, έτσι ώστε να γίνει κατανοητό το περιβάλλον στο οποίο εκτελείται η εφαρµογή. Στην επόµενο κεφάλαιο παρουσιάζεται ο σκοπός και οι απαιτήσεις της εφαρµογής. Το τρίτο κεφάλαιο πραγµατεύεται ζητήµατα τεχνικά και τεχνολογικά. Ειδικότερα εδώ παρουσιάζεται το σύνολο του λογισµικού που χρησιµοποιήθηκε για την υλοποίηση της εργασίας καθώς και οι λόγοι που οδήγησαν στην επιλογή αυτών των προγραµµάτων. Στο τέταρτο κεφάλαιο αναλύεται ο τρόπος εγκατάστασης των προγραµµάτων που χρησιµοποιήθηκαν το καθένα ξεχωριστά. Στη συνέχεια στο πέµπτο κεφάλαιο παρουσιάζεται ο τρόπος υλοποίησης της βάσης δεδοµένων και η ανάπτυξη της λειτουργίας κάθε σελίδας του web site (ιστοσελίδας), όπου περιγράφονται οι ενέργειες που µπορεί να κάνει ο χρήστης και ο διαχειριστής του συστήµατος. Στο έκτο κεφάλαιο καταγράφονται κάποια συµπεράσµατα που εξήχθησαν κατά την ανάπτυξη της εφαρµογής. Παρουσιάζονται επίσης τα προβλήµατα που αντιµετωπίστηκαν κατά την εκπόνησή της, κυρίως εξαιτίας της ασυµβατότητας προγραµµάτων, καθώς επίσης και οι τρόποι µε τους οποίους ξεπεράστηκαν. Τέλος, παραθέτονται προτάσεις για περαιτέρω επέκταση και αναβάθµιση της εργασίας αυτής. Τέλος, υπάρχει η βιβλιογραφία, όλες δηλαδή οι έντυπες και ηλεκτρονικές πηγές που χρησιµοποιήθηκαν για την περάτωση της πτυχιακής εργασίας και το παράρτηµα, το οποίο περιλαµβάνει τα τµήµατα κώδικα που συµβάλλουν στην διαµόρφωση µιας πιο ξεκάθαρης εικόνας για το σύνολο της εργασίας. 6

ΚΕΦΑΛΑΙΟ 1 Ο Εισαγωγή στο διαδίκτυο (Internet) Το διαδίκτυο είναι ένα πλέγµα από εκατοµµύρια διασυνδεδεµένους υπολογιστές που εκτείνεται σχεδόν σε κάθε γωνιά του πλανήτη και παρέχει τις υπηρεσίες του σε εκατοµµύρια χρήστες. Αποτελεί ένα "Παγκόσµιο Ηλεκτρονικό Χωριό", οι "κάτοικοι" του οποίου, ανεξάρτητα από υπηκοότητα, ηλικία, θρήσκευµα και χρώµα, µοιράζονται πληροφορίες και ανταλλάσσουν ελεύθερα απόψεις, πέρα από γεωγραφικά και κοινωνικά σύνορα. Σύµφωνα µε τις σχετικές εκτιµήσεις, αυτός ο παγκόσµιος ιστός υπολογιστών και χρηστών αριθµεί σήµερα πάνω από δέκα εκατοµµύρια υπολογιστές και εκατό εκατοµµύρια χρήστες, ενώ επεκτείνεται διαρκώς µε εκθετικούς ρυθµούς. 1.1 Παρουσίαση διαδικτύου Τo Internet είναι ένα διαδίκτυο, δηλαδή ένα δίκτυο αποτελούµενο από δίκτυα υπολογιστών. Το δίκτυο υπολογιστών είναι δύο ή περισσότεροι υπολογιστές που συνδέονται µεταξύ τους και σχηµατίζουν ένα δίκτυο. Οι κυριότεροι λόγοι ύπαρξης ενός δικτύου, είναι στο να µπορούν οι χρήστες των υπολογιστών να επικοινωνούν µεταξύ τους και να χρησιµοποιούν από απόσταση τις υπηρεσίες που προσφέρει κάποιος υπολογιστής του δικτύου. Ένα σύνολο από κανόνες που ονοµάζεται πρωτόκολλο δικτύωσης, καθορίζει το πώς επικοινωνούν µεταξύ τους οι υπολογιστές του δικτύου. Με τον όρο "Internet" δεν εννοούµε οποιοδήποτε διαδίκτυο, αλλά το Παγκόσµιο ιαδίκτυο, δηλαδή η συνένωση των χιλιάδων δικτύων διαφόρων µεγεθών που καλύπτει σχεδόν ολόκληρη την υδρόγειο [10]. Τα βασικά χαρακτηριστικά του διαδικτύου και η χρησιµότητά του Ένα βασικό χαρακτηριστικό του διαδικτύου, είναι ότι µπορεί να συνδέει υπολογιστές διαφορετικού τύπου, δηλαδή υπολογιστές που µπορεί να διαφέρουν όσον αφορά την αρχιτεκτονική του υλικού (hardware), το λειτουργικό σύστηµα που χρησιµοποιούν και το πρωτόκολλο δικτύωσης που εφαρµόζεται στο τοπικό τους δίκτυο. Ένα άλλο χαρακτηριστικό του διαδικτύου είναι ότι είναι αποκεντρωµένο και αυτοδιαχειριζόµενο. εν υπάρχει δηλαδή κάποιος κεντρικός οργανισµός που να το διευθύνει και να παίρνει συνολικά αποφάσεις σχετικά µε το είδος των πληροφοριών που διακινούνται, τις υπηρεσίες που παρέχονται από τους διάφορους υπολογιστές του ή τη διαχείρισή του. Καθένα από τα µικρότερα δίκτυα που το αποτελούν, διατηρεί 7

την αυτονοµία του και είναι το ίδιο υπεύθυνο για το είδος των πληροφοριών που διακινεί, τις υπηρεσίες που προσφέρουν οι υπολογιστές του και τη διαχείρισή του. Οι άνθρωποι χρησιµοποιούν το διαδίκτυο βασικά για δύο πράγµατα: α) για να αντλήσουν πληροφορίες και β) για να επικοινωνήσουν µε άλλους ανθρώπους που είναι κι αυτοί χρήστες του. Μπορούµε να θεωρήσουµε το διαδίκτυο σαν µια τεράστια αποθήκη πληροφορίας, µια παγκόσµια βιβλιοθήκη. Στους υπολογιστές του, βρίσκονται αποθηκευµένα χιλιάδες Gigabytes (δισεκατοµµύρια ψηφία) πληροφορίας, αρκετά από τα οποία διατίθενται ελεύθερα στους χρήστες του. Έτσι λοιπόν έχουµε τη δυνατότητα να χρησιµοποιούµε αποµακρυσµένες βάσεις δεδοµένων, να ανακτάµε αρχεία µε προγράµµατα, εικόνες, κείµενα, να έχουµε πρόσβαση σε βιβλιοθήκες, να διαβάζουµε ηλεκτρονικές εφηµερίδες και περιοδικά, ακόµη και να παρακολουθούµε ραδιοφωνικά προγράµµατα. Το διαδίκτυο είναι επίσης ένα µέσο που µας επιτρέπει να ερχόµαστε σε επαφή µε άλλους ανθρώπους γρήγορα και εύκολα. Μπορούµε,λοιπόν, να ανταλλάξουµε ηλεκτρονικά µηνύµατα ή να µιλήσουµε «ζωντανά» µε έναν φίλο µας που βρίσκεται στις σε κάποιο άλλο µέρος του κόσµου, να εγγραφούµε σε λίστες συζητήσεων εάν µας ενδιαφέρουν οι απόψεις των άλλων γύρω από κάποιο θέµα, ή ακόµη να παίξουµε µια σειρά από παιχνίδια µε πολλούς αντιπάλους ταυτόχρονα που µπορεί να βρίσκονται διασκορπισµένοι σε διάφορα µέρη της γης [10]. 1.5 WWW [World Wide Web (Παγκόσµιος Ιστός)] Τα αρχικά WWW είναι συντοµογραφία της γνωστότερης υπηρεσίας του διαδικτύου, του World Wide Web (Παγκόσµιος Ιστός). Τα συναντάµε συχνά σαν πρώτο συνθετικό διευθύνσεων, για παράδειγµα www.microsoft.com (η διεύθυνση της εταιρείας Microsoft), καθώς κάθε εταιρεία ή οργανισµός µε παρουσία στο διαδίκτυο προσφέρει συνήθως την υπηρεσία αυτή. Το WWW αποτελεί ένα ισχυρό και εύχρηστο µέσο για την προσπέλαση, αναζήτηση και ανεύρεση πληροφορίας του διαδικτύου. ιασυνδέει πληροφορίες που είναι αποθηκευµένες σε χιλιάδες υπολογιστές του διαδικτύου, διάσπαρτους σε ολόκληρο τον κόσµο. Οι χρήστες του διαδικτύου µπορούν να προσπελαύνουν τις διαθέσιµες πληροφορίες χρησιµοποιώντας ένα πρόγραµµα που ονοµάζεται browser (πρόγραµµα πλοήγησης). Οι πληροφορίες είναι οργανωµένες σε ηλεκτρονικές σελίδες που ονοµάζονται Web σελίδες (Ιστοσελίδες) και συνδέονται µεταξύ τους µε συνδέσµους. Μια συλλογή Web σελίδων που βρίσκεται αποθηκευµένη σε ένα συγκεκριµένο σηµείο του διαδικτύου και διατίθεται δηµόσια ονοµάζεται Web site. Για παράδειγµα το σύνολο των σελίδων που βρίσκονται αποθηκευµένες στη διεύθυνση www.teikoz.gr αποτελεί το Web site (ιστοσελίδα) του T.E.Ι (Τεχνολογικο Εκπαιδευτικό Ίδρυµα) 8

Κοζάνης. Η αρχική σελίδα ενός Web site είναι το σηµείο εισόδου προς τις υπόλοιπες σελίδες της συλλογής και ονοµάζεται home page. Στο WWW, η επικοινωνία µεταξύ του πελάτη και του εξυπηρετητή γίνεται σύµφωνα µε το πρωτόκολλο HTTP (Hyper Text Transfer Protocol) [11]. 1.7 Το µοντέλο πελάτη-εξυπηρετητή Προκειµένου να χρησιµοποιήσουµε µια υπηρεσία του διαδικτύου, θα πρέπει να έχουµε εγκατεστηµένο στον υπολογιστή µας και να εκτελέσουµε το κατάλληλο πρόγραµµα γι αυτή την υπηρεσία. Το πρόγραµµα αυτό ονοµάζεται πελάτης (web browser) και χρησιµοποιείται για να µπορούµε να εµφανίσουµε σελίδες του World Wide Web. Οι πελάτες αναφέρονται ορισµένες φορές και µε τους όρους client εφαρµογές για το Web ή εργαλεία πλοήγησης στο Internet. Μέσω του πελάτη, ζητάµε την παροχή της συγκεκριµένης υπηρεσίας. Επίσης, θα πρέπει να έχουµε πρόσβαση (µέσω Internet) σε µηχανή που υποστηρίζει την αιτούµενη υπηρεσία. Σε αυτή τη µηχανή πρέπει να εκτελείται ένα πρόγραµµα που παρέχει τη συγκεκριµένη υπηρεσία, ο εξυπηρετητής (web server).η παροχή των περισσότερων υπηρεσιών στο διαδίκτυο βασίζεται στο µοντέλο πελάτη-εξυπηρετητή (client-server) που λειτουργεί ως εξής: Ο πελάτης ζητά από τον εξυπηρετητή πληροφορίες και ο τελευταίος εξυπηρετεί το αίτηµα παρέχοντάς του τις πληροφορίες αυτές. Αφού τελειώσει η διαδικασία, ο εξυπηρετητής περιµένει έως ότου κάποιος πελάτης υποβάλλει πάλι κάποια αίτηση για εξυπηρέτηση. Κάθε υπηρεσία στο διαδίκτυο έχει το δικό της ξεχωριστό πρωτόκολλο, δηλαδή το δικό της σύνολο από συµβάσεις που καθορίζουν το πώς γίνεται η "συνοµιλία" του αντίστοιχου ζεύγους πελάτη-εξυπηρετητή. Έτσι, άλλο πρωτόκολλο χρησιµοποιεί η υπηρεσία WWW, άλλο η υπηρεσία FTP, άλλο η υπηρεσία E-mail [4]. 1.8 υναµικές σελίδες και ιαδίκτυο Στα πρώτα χρόνια ύπαρξης του το διαδίκτυο παρείχε µόνο στατικές σελίδες εφόσον και αυτός ήταν ο πρωταρχικός σκοπός του. Καθώς όµως αυξανόταν ο αριθµός των σελίδων στο διαδίκτυο έγινε εµφανές ότι το πρωταρχικό µοντέλο δεν ήταν πλήρες. Στο µοντέλο αυτό που αναπτύχθηκε συνοπτικά στην προηγούµενη ενότητα, ο πελάτης (web browser) ενός χρήστη στέλνει µία αίτηση HTTP για να λάβει τα περιεχόµενα ενός εγγράφου HTML (Hyper Text Mark up Language). O εξυπηρετητής αφού λάβει αυτή την αίτηση, πρώτα διαπιστώνει την ύπαρξη του εγγράφου και 9

κατόπιν, είτε στέλνει το έγγραφο που του ζητήθηκε, είτε στέλνει κάποιο ανάλογο µήνυµα. Ο πελάτης µε την σειρά του εµφανίζει το έγγραφο αφού το µορφοποιήσει κατάλληλα. Το παραπάνω µοντέλο δουλεύει εφόσον ο χρήστης γνωρίζει ότι η συγκεκριµένη διεύθυνση περιέχει πληροφορίες οι οποίες τον ενδιαφέρουν. Πώς όµως κάθε χρήστης θα ενηµερώνεται για της καινούριες σελίδες που προστίθενται στο διαδίκτυο και τι είδος πληροφοριών αυτές περιέχουν? Γίνεται λοιπόν εµφανές το πρόβληµα των στατικών σελίδων έγκειται στο ότι αυτές δεν δίνουν καµία δυνατότητα αλληλεπίδρασης µεταξύ χρήστη και εξυπηρετητή παρά παρέχουν στείρα πληροφορία. Θα έπρεπε να υπάρχουν µηχανές αναζήτησης οι οποίες θα απαντούσαν σε συγκεκριµένες ερωτήσεις του χρήστη µετατρέποντας έτσι το διαδίκτυο σε µία εύχρηστη πηγή πληροφοριών. Πράγµατι µε την βελτιστοποίηση των χαρακτηριστικών των εξυπηρετητών έγινε η δηµιουργία δυναµικών σελίδων πραγµατικότητα. Ο κύριος παράγων στον οποίο οφείλεται η ύπαρξη δυναµικών σελίδων στο διαδίκτυο είναι η δυνατότητα που έχουν οι εξυπηρετητές να επικοινωνούν µε βάσεις δεδοµένων οι οποίες είναι οι κατεξοχήν πηγή αποθήκευσης πληροφορίας [1]. 1.9 Βάσεις εδοµένων και ιαδίκτυο Ο έλεγχος και η διαχείριση της πληροφορίας που σχετίζεται µε οποιοδήποτε εφαρµογή είναι από τις σηµαντικότερες δυνατότητες που παρέχει ο υπολογιστής στον άνθρωπο, κυρίως χάρη στις βάσεις δεδοµένων. Με τον όρο βάση δεδοµένων εννοούµε µία συλλογή ολοκληρωµένων εγγραφών που περιέχει αυτοπεριγραφή. Με τον όρο αυτοπεριγραφή εννοούµε : το λεξικό των δεδοµένων τον τύπο και την µορφή των δεδοµένων συσχέτιση των δεδοµένων τυχόν περιορισµοί επί των δεδοµένων Για την δηµιουργία και την συντήρηση βάσεων δεδοµένων χρησιµοποιούνται ειδικά πακέτα λογισµικού, που ονοµάζονται γενικά συστήµατα διαχείρισης βάσεων δεδοµένων (DBMS) [3]. Τα πλεονεκτήµατα της χρήσης µίας βάσης δεδοµένων είναι ότι δεν υπάρχουν διασκορπισµένα στοιχεία, αντιθέτως τα στοιχεία είναι οργανωµένα έτσι ώστε να µην έχουµε επανάληψη των δεδοµένων, υπάρχει υποστήριξη πολλαπλών όψεων χρήστη, 10

έτσι µπορούµε να δώσουµε συγκεκριµένες πληροφορίες σε συγκεκριµένα άτοµα ή να αποκρύψουµε πληροφορίες από αυτούς. Επίσης υπάρχει ανεξαρτησία προγραµµάτων δεδοµένων και δυνατότητα προσπέλασης και διαχείρισης της πληροφορίας από αποµακρυσµένα µεταξύ τους σηµεία. Γίνεται λοιπόν φανερή η χρησιµότητα των βάσεων δεδοµένων και όπως είναι λογικό η ανάγκη διασύνδεσης βάσεων δεδοµένων µε εφαρµογές του διαδικτύου ήταν µεγάλη. Έπρεπε λοιπόν να δηµιουργηθούν τεχνολογίες οι οποίες θα επέτρεπαν την διασύνδεση εφαρµογών του διαδικτύου µε βάσεις δεδοµένων και θα επέτρεπαν την δυναµική αλληλεπίδραση µεταξύ πελάτη και εξυπηρετητή [5]. 11

ΚΕΦΑΛΑΙΟ 2 Ο Σκοπός και Απαιτήσεις της Εφαρµογής 2.1 Σκοπός Πολλές εταιρίες ή αυτόνοµα πρόσωπα που δηµοσιεύουν τις υπηρεσίες τους στο διαδίκτυο, θέλουν να είναι ελεγχόµενες οι πληροφορίες τους και παράλληλα θέλουν να παρουσιάζονται σε ένα περιβάλλον για τον χρήστη εύκολα προσβάσιµο. Η ανάγκη αυτή οδήγησε στο να αναπτυχθούν διάφορες εφαρµογές που να την εξυπηρετούν. Την ανάγκη αυτή εξυπηρετεί και η δηµιουργία της on-line βάσης δεδοµένων διαχείρισης ηλεκτρονικών εγγράφων. Η βάση αυτή θα περιέχει ηλεκτρονικά έγγραφα για συνέδρια και σεµινάρια που έχουν γίνει στην Ελλάδα, στον τοµέα ηµοσίων Σχέσεων σε µορφή.doc. Βασικός σκοπός της είναι να µπορούν να τα χρησιµοποιούν οι on-line χρήστες, αφού έχουν κάνει εγγραφή στο σύστηµα και παράλληλα να τα διαχειρίζεται ο διαχειριστής. Αντικειµενικοί στόχοι Οι στόχοι της εφαρµογής είναι: Κύριος στόχος της είναι να παρέχει την πληροφορία που ζητάει ο χρήστης Το περιβάλλον( interface) του χρήστη και του διαχειριστή να είναι διαµορφωµένο έτσι, ώστε να µη καταναλώνει πολύ χρόνο για να πάρει τις πληροφορίες που θέλει. Να µπορεί να επεξεργάζεται την πληροφορία που ζητείται και να την αναγνωρίζει δυναµικά από την βάση δεδοµένων. 2.2 Αρχιτεκτονική περιγραφή της εφαρµογής Στο παρακάτω σχεδιάγραµµα παρουσιάζεται η αρχιτεκτονική της εφαρµογής και πιο κάτω η ανάλυση αυτής. 12

Χρήστης ιαχειριστής Περιβάλλον Χρήστη (Ιστοσελίδες ) Περιβάλλον ιαχειριστή (Ιστοσελίδες ) υναµικό Περιβάλλον PHP Αποτελέσµατα Apache (εξυπηρετητής) Βάση εδοµένων - MySQL Σχεδιάγραµµα 2.1- Αρχιτεκτονική περιγραφή της εφαρµογής Σύµφωνα µε το σχεδιάγραµµα τα βασικά συστατικά της εφαρµογής είναι: Apache Server : Είναι ο εξυπηρετητής της εφαρµογής. Το Apache θα παρέχει την βασική υποδοµή για την πιστοποίηση της ταυτότητας των χρηστών, τον έλεγχο πρόσβασης καθώς επίσης κάθε είδους επικοινωνία µεταξύ της βάσης δεδοµένων και του πελάτη και τη δηµιουργία δυναµικών σελίδων. Τα στοιχεία των χρηστών θα βρίσκονται αποθηκευµένα στην βάση δεδοµένων, από όπου θα γίνεται και η πιστοποίηση. Βάση εδοµένων MySQL: Η βάση δεδοµένων είναι το µέρος στο οποίο θα είναι αποθηκευµένες όλες οι πληροφορίες για τα συνέδρια και τα στοιχεία του χρήστη. Από αυτή θα αντλούνται οι πληροφορίες που ζητάει ο χρήστης. Συγκεκριµένα: Πίνακες (Tables): Οι πίνακες θα κρατάνε όλες τις απαραίτητες πληροφορίες είτε αυτές προέρχονται από τον χρήστη είτε από τον διαχειριστή της αφαρµογής. Ερωταποκρίσεις [3] (Queries): Οι ερωταποκρίσεις είναι εντολές που θα χρησιµοποιηθούν, ώστε να εµφανίζονται οι συγκεκριµένες πληροφορίες που θα ζητηθούν. Αυτές τις πληροφορίες ο χρήστης µπορεί να τις εµφανίσει στην οθόνη του. 13

Περιβάλλον (Interface) χρήστη και διαχειριστή : Η πρώτη επαφή του χρήστη και του διαχειριστή µε την εφαρµογή είναι το περιβάλλον. Σε αυτό θα παρουσιάζονται οι σύνδεσµοι και οι φόρµες που θα χρησιµοποιήσουν για να έχουν πρόσβαση στην εφαρµογή. υναµικό Περιβάλλον PHP: Το δυναµικό περιβάλλον είναι αυτό που θα περισυλλέξει τα στοιχεία που δίνει ο χρήστης και θα τα επεξεργαστεί. Για να γίνει η επεξεργασία θα έρθει σε επικοινωνία µε την βάση δεδοµένων. Εάν η διαδικασία αυτή πλήρη όλες τις προϋποθέσεις επιστρέφει το αποτέλεσµα στον χρήστη και τα παρουσιάζει στην οθόνη. Αποτελέσµατα: Όπως φαίνεται και στο σχεδιάγραµµα ο χρήστης ή ο διαχειριστής αρχικά επισκέπτεται την αρχική σελίδα. Σε αυτή παρουσιάζονται οι πληροφορίες για την εφαρµογή και τα βήµατα που πρέπει να κάνει, εάν θέλει να έχει περαιτέρω πρόσβαση. Από τη στιγµή που θα ζητήσει πληροφορίες ξεκινάει η λειτουργία της εφαρµογής. Ανάλογα µε τις απαιτήσεις του χρήστη γίνεται η κατάλληλη επεξεργασία από τον µηχανισµό και αυτός του παρέχει τα αποτελέσµατα. 2.3 Αισθητική παρουσίαση Είναι κοινώς διαπιστωµένο ότι ένας δικτυακός τόπος «κερδίζει» τους επισκέπτες του όχι µόνο εξαιτίας της λειτουργικότητας και των υπηρεσιών που προσφέρει, αλλά και της καλαισθησίας του. Αυτή είναι η πιο σηµαντική, τόσο για να τραβήξει αρχικά το ενδιαφέρον του όσο και για να κρατήσει τον επισκέπτη στις ιστοσελίδες του. Τα κριτήρια που έπαιξαν ρόλο στην αισθητική διαµόρφωση της θέσης ιστού ήταν τα εξής: Η συνέπεια όσον αφορά στο σχεδιασµό των ιστοσελίδων. Κάθε µία ακολουθεί ένα συγκεκριµένο πρότυπο, κοινό σε όλες, ώστε ο χρήστης να µην «ξαφνιάζεται» µέχρι να συνηθίσει το νέο περιβάλλον. Είναι χρήσιµο για τον επισκέπτη των σελίδων, αφού κάνει µια-δύο επισκέψεις το πολύ στη θέση ιστού, να γνωρίζει από πριν τι πρόκειται να βρει σε κάθε σηµείο κάθε ιστοσελίδας, ώστε να µη σπαταλά χρόνο για να την εξερευνήσει εκ νέου. Τέλος, υπάρχει και σχεδιασµός τέτοιος που διευκολύνει την πλοήγηση από σελίδα σε σελίδα, όπου κρίνεται σκόπιµο. Αυτό έχει ως στόχο να µεταβαίνει ο χρήστης και ο διαχειριστής γρήγορα στη σελίδα που θέλει χωρίς ταλαιπωρία. 14

2.4 Μη λειτουργικές απαιτήσεις της εφαρµογής Η εφαρµογή είναι σχεδιασµένη για να λειτουργεί σε πελάτες (web browsers), όπως ο Internet Explorer ή ο Netscape Navigator. Οποιοσδήποτε που χρησιµοποιεί έναν απ τους δύο πελάτες, µπορεί να έχει πρόσβαση στην εφαρµογή. Όλες οι λειτουργίες που πρόκειται να χρησιµοποιήσει ο χρήστης δεν απαιτούν ειδική γνώση. 15

ΚΕΦΑΛΑΙΟ 3 Ο Εφαρµογής - Τεχνικά και Τεχνολογικά Χαρακτηριστικά της 3.1 Κριτήρια επιλογής προγραµµάτων Για την επιλογή των προγραµµάτων που χρησιµοποιήθηκαν για την υλοποίηση της εφαρµογής, λήφθηκαν υπόψη οι ακόλουθοι παράγοντες: Η καταλληλότητα των προγραµµάτων για την εφαρµογή. Η δωρεάν απόκτησή τους. Η αρµονική συνεργασία µεταξύ τους. Η ευκολία εγκατάστασης και χρήσης. Ο απαιτούµενος χρόνος εκµάθησης. Αναφορά λογισµικού που χρησιµοποιήθηκε 1. Για την ανάπτυξη της εφαρµογής χρησιµοποιήθηκε λειτουργικό σύστηµα Windows XP. Η επιλογή αυτή έγινε γιατί οι επιλογές ήταν περιορισµένες. Η καλύτερη επιλογή θα ήταν να χρησιµοποιηθεί λειτουργικό σύστηµα τύπου UNIX, γιατί είναι αποδεδειγµένη η καταλληλότητα των συστηµάτων αυτών για τέτοιες εφαρµογές, καθώς η πλειοψηφία των εξυπηρετητών µεγάλων κόµβων ανα τον κόσµο χρησιµοποιεί UNIX πλατφόρµες. 2. Για το λογισµικό του εξυπηρετητή δικτύου θέσης ιστού (web server) και της βάσης δεδοµένων χρησιµοποιήθηκαν τα προγράµµατα Apache Server και MySQL αντίστοιχα, που χρησιµοποιούνται κατά κόρον σήµερα από πάρα πολλούς κόµβους ανά τον κόσµο. Και τα δύο πακέτα διατίθενται δωρεάν για µη κερδοσκοπικούς σκοπούς. Περισσότερες πληροφορίες για τα πακέτα αυτά ακολουθούν στην επόµενη ενότητα. 3. Το συνδυασµό των Apache και MySQL ολοκληρώνει η γλώσσα PHP. Πρόκειται για µια πολύ διαδεδοµένη γλώσσα που χρησιµοποιείται για τη συγγραφή δυναµικών ιστοσελίδων. Περισσότερες πληροφορίες παρατίθενται στην επόµενη ενότητα. 4. Για την ανάπτυξη και δηµιουργία στατικών και δυναµικών ιστοσελίδων χρησιµοποιήθηκαν προγράµµατα Dreamweaver MX και Flash MX. 5. O εξερευνητής ιστού (web browser) που χρησιµοποιήθηκε για την εµφάνιση των ιστοσελίδων είναι ο Microsoft Internet Explorer. 16

Εναλλακτικές λύσεις προγραµµάτων Υπήρχαν και εναλλακτικές λύσεις για προγράµµατα που θα µπορούσαν να χρησιµοποιηθούν, όπως για παράδειγµα να χρησιµοποιηθεί ο εξυπηρετητής IIS (Microsoft Internet Information Server), η βάση δεδοµένων Microsoft Access και η γλώσσα προγραµµατισµού ASP (Active Server Pages). Γλώσσα προγραµµατισµού επιλέχθηκε η PHP γιατί είναι δωρεάν η διακίνησή και εφαρµογή της γλώσσας έναντι άλλων. Επίσης η PHP µπορεί να χρησιµοποιηθεί σε όλα τα κύρια λειτουργικά συστήµατα, συµπεριλαµβανοµένου του Linux, πολλών εκδοχών του Unix (HP-UX, Solaris και OpenBSD), Microsoft Windows και MacOS. Η PHP υποστηρίζει επίσης τους Apache, ΙΙS, Personal Web Server, Netscape και iplanet servers, και πολλούς άλλους web server. Αντίθετα η ASP δεν µπορεί να χρησιµοποιηθεί σε όλα τα λειτουργικά όπως για παράδειγµα σε ένα UNIX ή LINUX. Όσον αφορά τον εξυπηρετητή όταν γίνει κάποιο λάθος στην εξυπηρέτηση ο Apache ξαναδηµιουργεί την διαδικασία όπως και ο ΙΙS, µε την διαφορά ότι στον IIS αυτό γίνεται µέσα στον πυρήνα του µε αποτέλεσµα να τον διογκώνει. 3.2 Ορισµός και παρουσίαση των MYSQL και PHP Όπως αναφέραµε πριν η υλοποίηση κατασκευής της on-line βάσης δεδοµένων ηλεκτρονικών εγγράφων πραγµατοποιήθηκε µε τις γλώσσες προγραµµατισµού SQL (Structured Query Language), PHP (Hypertext Preprocessor) και τη βάση δεδοµένων MySQL(Structured Query Language). Κρίνεται αναγκαίο, λοιπόν, να γίνει µια παρουσίαση των τελευταίων του τρόπου λειτουργίας τους στις επόµενες ενότητες, έτσι ώστε να γίνει κατανοητή η χρησιµοποίηση τους. 3.2.1 Ορισµός και παρουσίαση των δικαιωµάτων της ΜySQL H ΜySQL [8] (My Structured Query Language) είναι ένα σύστηµα διαχείρισης σχεσιακών βάσεων δεδοµένων. Είναι ένας εξυπηρετητής βάσεων δεδοµένων (database server) πολύ γρήγορος, πολύ-νηµατικος, υποστηρίζει πολλούς χρήστες µε µία δυνατή γλώσσα ερωταποκρίσεων SQL (Structured Query Language). Αποτελεί το περιβάλλον χρήσης και επικοινωνίας µεταξύ του χρήστη και των δεδοµένων. Η MySQL είναι ελεύθερο λογισµικό. Αυτό σηµαίνει ότι οποιοσδήποτε µπορεί να κατεβάσει τον κώδικά της από το internet (διαδίκτυο) χωρίς κόστος. Οποιοσδήποτε ακόµη µπορεί να διαβάσει τον κώδικα και να τον τροποποιήσει έτσι ώστε να ταιριάζει στις ανάγκες του. 17

Η MySQL αρχικά δηµιουργήθηκε για το χειρισµό πολύ µεγάλων βάσεων δεδοµένων, µε γρήγορο και αποτελεσµατικό τρόπο. Σήµερα η MySQL προσφέρει ένα πλούσιο και πολύ χρήσιµο σύνολο από συναρτήσεις. Η συνδεσιµότητα, η ταχύτητα και η ασφάλεια κάνει την MySQL κατάλληλη για την προσπέλαση βάσεων δεδοµένων από το διαδίκτυο. Τα τρία βασικά πράγµατα που ελέγχει είναι: Την θέση από την οποία προσπελάζει κάποιος ( το σύστηµα) Την ταυτότητα του (όνοµα χρήστη, κωδικό πρόσβασης) Ποιες ενέργειες µπορεί να γίνουν και ποιες όχι (τα δικαιώµατα) Όλες αυτές οι πληροφορίες αποθηκεύονται σε µια βάση δεδοµένων µε όνοµα mysql, η οποία δηµιουργείται αυτόµατα κατά την εγκατάσταση της MySQL. Υπάρχουν αρκετοί πίνακες στην βάση δεδοµένων mysql όπως: Columns_priv- Ορίζει τα δικαιώµατα των χρηστών για συγκεκριµένα πεδία ενός πίνακα db- Ορίζει τα δικαιώµατα για όλες τις βάσεις δεδοµένων που υπάρχουν στον εξυπηρετητή. func- Ορίζει τις καθοριζόµενες από τον χρήστη συναρτήσεις. Host- Ορίζει τα αποδεκτά συστήµατα- τους υπολογιστές που µπορούν να συνδέονται σε µία συγκεκριµένη βάση δεδοµένων. tables_priv- Ορίζει τα δικαιώµατα χρηστών για συγκεκριµένους πίνακες µιας βάσης δεδοµένων. user- Ορίζει τα δικαιώµατα εκτέλεσης εντολών για ένα συγκεκριµένο χρήστη. Οι πίνακες αυτοί υπάρχουν και πρέπει να περιέχουν τα σωστά δεδοµένα για να µπορούν οι χρήστες να εκτελούν τις επιθυµητές ενέργειες [4]. ιαδικασία πιστοποίησης Όταν κάποιος συνδεθεί µε την MySQL, αυτή θα ελέγξει το σύστηµα από το οποίο συνδεόµαστε, το όνοµα του χρήστη και τον κωδικό πρόσβασής του. Εφόσον αυτά είναι σωστά η σύνδεση πραγµατοποιείται. Από το σηµείο αυτό µπορεί να ξεκινήσει η διαδικασία εκτέλεσης εντολών του περιβάλλοντος της MySQL (Structured Query Language) για τη δηµιουργία πινάκων. Εάν όµως κάποιο από τα τρία που προαναφέραµε όπως το όνοµα του χρήστη δεν είναι σωστό η πρόσβαση δεν θα είναι 18

εφικτή και θα εµφανιστεί ένα µήνυµα σφάλµατος το οποίο θα έχει την ακόλουθη µορφή: Error 1045: Access denied for user name (Η πρόσβαση δεν είναι εφικτή για τον χρήστη µε αυτό το όνοµα) ιαχείρηση των δικαιωµάτων των χρηστών Σε περίπτωση που κάποιος προσπελάζει την MySQL µέσω µιας εταιρείας παροχής Internet (διαδίκτυο), θα έχει στην διάθεση του µόνο έναν χρήστη και µία βάση δεδοµένων. Αυτός ο χρήστης θα έχει πρόσβαση σε όλους του πίνακες της βάσης δεδοµένων και θα µπορεί να εκτελέσει εντολές. Εάν όµως ο διαχειριστής χρησιµοποιεί τον δικό του εξυπηρετητή (server), θα έχει την δυνατότητα να προσθέσει όσες βάσεις δεδοµένων θέλει όπως επίσης και να τροποποιήσει τα δικαιώµατα πρόσβασης των άλλων χρηστών [4]. Η γλώσσα προγραµµατισµού SQL H SQL [3] (Structured Query Language) είναι η γλώσσα προγραµµατισµού για σχεσιακές βάσεις δεδοµένων. εν αποτελεί µια πλήρη γλώσσα προγραµµατισµού, αλλά ένα βασικό σύνολο εντολών που µας δίνει την δυνατότητα να ορίσουµε, να τροποποιήσουµε και να εξετάσουµε µια σχεσιακή βάση δεδοµένων. Αυτό σηµαίνει ότι ο χρήστης έχει τη δυνατότητα, µε την εκτέλεση διάφορων εντολών και την χρησιµοποίηση σχεσιακών τελεστών (select, join), να ανακτά και να διαχειρίζεται δεδοµένα. Τα δεδοµένα αυτά απεικονίζονται σε δισδιάστατους πίνακες (tables), οι οποίοι αποτελούνται από γραµµές (Rows) και στήλες (Columns). Οι τέσσερις βασικές εντολές [3] της SQL είναι: SELECT - χρησιµοποιείται για την ανάκτηση εγγραφών από ένα πίνακα. INSERT - χρησιµοποιείται για την πρόσθεση εγγραφών σε ένα πίνακα. DELETE - χρησιµοποιείται για την διαγραφή εγγραφών. UPDATE χρησιµοποιείται για την τροποποίηση του περιεχοµένου µιας ή περισσότερων στηλών σε µία υπάρχουσα εγγραφή ενός πίνακα Για παράδειγµα, θα χρησιµοποιήσουµε την εντολή INSERT. Αρχικά δηµιουργούµε τον πίνακα στον οποίο θα αποθηκεύονται οι πληροφορίες που θέλουµε. ηµιουργούµε τον παρακάτω πίνακα µε όνοµα pelatis για να αποθηκεύσουµε το ονοµατεπώνυµο πελατών µιας εταιρείας. Η εντολή γράφεται ως εξής: 19

mysql> CREATE TABLE pelatis ( >id int not null primary key_auto increment, >name not null, >lastname not null); Ο πίνακας θα έχει την εξής µορφής στη mysql: id (κωδικός) name (όνοµα) lastname (επίθετο) πίνακας 3.1- ηµιουργία πίνακα Για να προσθέσουµε κάποια στοιχεία µέσα στον πίνακα pelatis πρέπει να γράψουµε την παρακάτω εντολή. Insert into pelatis ( id, name, last name) values ( 1, stella, billi ) Το αποτέλεσµα φαίνεται στον πίνακα 2. id name lastname (κωδικός) (όνοµα) (επίθετο) 1 stella billi πίνακας 3.2 Πρόσθεση εγγραφών Η SQL είναι, λοιπόν, η γλώσσα που χρησιµοποιήθηκε για τη δηµιουργία και τον χειρισµό πινάκων βάσεων δεδοµένων MySQL της on-line εφαρµογής που θα αναπτυχθεί σε επόµενο κεφάλαιο. 3.2.2. PHP (Hypertext Preprocessor) Η PHP [9] είναι µια ευρέως χρησιµοποιούµενη, ανοιχτού κώδικα, γλώσσα προγραµµατισµού η οποία είναι ειδικά κατάλληλη για την ανάπτυξη εφαρµογών για το διαδίκτυο και µπορεί να ενσωµατωθεί στην HTML (Hyper Text Markup Language). 20