• Nenhum resultado encontrado

Δημιουργία ιστοσελίδας real estate με χρήση συστήματος διαχείρισης περιεχομένου cms

N/A
N/A
Protected

Academic year: 2024

Share "Δημιουργία ιστοσελίδας real estate με χρήση συστήματος διαχείρισης περιεχομένου cms"

Copied!
88
0
0

Texto

(1)

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

ΔΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙΔΑΣ REAL ESTATE ME ΧΡΗΣΗ ΣΥΣΤΗΜΑΤΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΕΧΟΜΕΝΟΥ(CMS)

ΚΑΡΙΓΚΑΣ ΕΥΑΓΓΕΛΟΣ (Α.Μ. 063046) Επιβλέπων Καθηγητής : ΛΙΑΠΗΣ ΠΕΤΡΟΣ (Α.Μ. 063048) Κλεφτούρης Δημήτριος

(2)

2

Περιεχόμενα

ΠΕΡΙΛΗΨΗ ... 5

ABSTRACT ... 6

ΚΕΦΑΛΑΙΟ 1 ΒΑΣΙΚΕΣ ΕΙΣΑΓΩΓΙΚΕΣ ΕΝΝΟΙΕΣ ... 7

1.1 Γενικές Πληροφορίες ... 7

1.2 World Wide Web-WWW (Παγκόσμιος Ιστός) ... 7

1.3 Web Server (Διακομιστής Ιστού) ... 8

1.4 Web Addresses (Διευθύνσεις Ιστού) ... 8

1.5 Domain Name System (Σύστημα Ονομάτων Τομέα) ... 9

1.6 Ελεύθερο Λογισμικό ... 9

1.6.1Πλεονεκτήματα λογισμικού ανοιχτού κώδικα ... 10

1.6.2 Μειονεκτήματα λογισμικού ανοιχτού κώδικα ... 11

1.7 Δυναμικές-Στατικές ιστοσελίδες ... 12

1.7.1 Στατικές ιστοσελίδες ... 12

1.7.2 Δυναμικές ιστοσελίδες ... 13

ΚΕΦΑΛΑΙΟ 2 ΤΕΧΝΟΛΟΓΙΕΣ... 16

2.1 Τι είναι Html ... 16

2.1.1 Προέλευση ... 16

2.2 Τι είναι JavaScript ... 17

2.3 Τι είναι Php ... 18

2.3.1 Ιστορία ... 19

2.4 Τι είναι CSS ... 20

2.5 Τι είναι η SQL ... 21

2.5.1 Ιστορία ... 21

2.5.2 Γλωσσικά στοιχεία ... 22

ΚΕΦΑΛΑΙΟ 3: ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΕΧΟΜΕΝΟΥ (CMS) ... 23

3.1 Τι είναι CMS ... 23

3.2 Τι σημαίνει CMS ... 23

3.3 Γιατί χρειαζόμαστε τα CMS ... 24

3.4 Δυνατότητες των CMS ... 24

3.5 Είδη και κατηγορίες CMS ... 25

(3)

3

3.5.1 Με βάση το είδος του παρόχου (Commercial, Open Source, Managed Open Source) ... 25

3.5.2 Με βάση το χώρο αποθήκευσης και διαχείρισης (ASP και Licensed) ... 29

3.6 CMS κλειστού κώδικα εναντίον ανοιχτού κώδικα... 30

3.6.1 Πλεονεκτήματα CMS ανοιχτού κώδικα ... 30

3.6.2 Μειονεκτήματα CMS ανοιχτού κώδικα ... 30

3.6.3 Πλεονεκτήματα CMS κλειστού κώδικα... 30

3.6.4. Μειονεκτήματα CMS κλειστού κώδικα ... 31

3.7. Δημοφιλή CMS ... 31

3.7.1. WordPress ... 31

3.7.2 Joomla ... 32

3.7.3 Drupal ... 33

3.8 Επιλογή καταλληλότερου συστήματος διαχείρισης περιεχομένου ... 34

ΚΕΦΑΛΑΙΟ 4: WORDPRESS ... 35

4.1. Ιστορία και περιγραφή του WordPress ... 35

4.2. Αφαίρεση οπτικών θεμάτων (Themes) με διαφημίσεις ... 36

4.3. Δυνατότητες του WordPress ... 37

4.3.1. Πρόσθετα (Plugins) ... 39

4.3.2. Θέματα (Themes) ... 40

4.3.3. WidgeTs ... 40

4.3.1. Ρόλοι χρηστών ... 41

4.4. Δομή και αρχιτεκτονική του WordPress ... 44

4.4.1. Η δομή των φακέλων ... 44

4.4.2. Η δομή της Βάσης Δεδομένων ... 45

4.5 Γιατί επιλέξαμε WordPress; ... 46

4.5.1. 20+ λόγοι που μας ωθούν στην επιλογή του... 46

4.5.2. Προτιμήσεις χρηστών σύμφωνα με στατιστικές ... 51

4.5.3. Πού υπερέχει το WordPress σε σχέση με τα υπόλοιπα CMS ... 53

4.6. Σύνοψη κεφαλαίου ... 56

ΚΕΦΑΛΑΙΟ 5: ΕΓΚΑΤΑΣΤΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ... 58

ΤΟΥ WORDPRESS ... 58

5.1. Πριν την εγκατάσταση ... 58

5.1.1. Το λογισμικό XAMPP ... 59

(4)

4

5.1.2. Ο APache HTTP Server ... 59

5.1.3. Λίγα λόγια για την MySql... 60

5.2. Διαδικασία εγκατάστασης ... 62

5.2.1. Το εργαλείο PhPMyAdmin ... 67

5.3. Διαδικασία ανάπτυξης του websiTe ... 71

5.3.1. Πίνακας ελέγχου διαχειριστή ... 71

5.3.2. Εγκατάσταση θέματος ... 74

5.3.3. Εγκατάσταση προσθέτων (Plugins) ... 76

5.3.4. Διαμόρφωση Menu ... 84

5.3.5. Εισαγωγή widgets ... 85

5.4. Σύνοψη ... 87

ΒΙΒΛΙΟΓΡΑΦΙΑ ... 88

(5)

5

ΠΕΡΙΛΗΨΗ

Βασικός σκοπός της εργασίας αυτής είναι η κατασκευή μίας ιστοσελίδας και συγκεκριμένα ενός ηλεκτρονικού καταστήματος μεσιτικού γραφείου, με τη χρήση του Wordpress ενός σύγχρονου συστήματος διαχείρισης περιεχομένου(CMS). Μέσω της ιστοσελίδας θα μπορεί κάποιος να περιηγηθεί και να βρει, μέσω στοχευμένης αναζήτησης, πληροφορίες για τις πιθανές κατοικίες που πληρούν τις επιθυμίες του, να δει φωτογραφίες καθώς και άλλες λεπτομέρειες που αφορούν την κάθε εγγραφή, έτσι ώστε να μπορεί από το σπίτι του και χωρίς καν να επισκεφθεί το χώρο να μπορεί να διαμορφώσει μία όσο το δυνατόν πιο πλήρη άποψη για αυτόν.

Αρχικά, στο θεωρητικό σκέλος, γίνεται μελέτη γενικά των CMS και συγκεκριμένα του Wordpress, του CMS που υλοποιούμε σε αυτή την πτυχιακή. Αναφέρονται πληροφορίες που αφορούν το ιστορικό παρελθόν των CMS, τις δυνατότητές τους, τις κατηγορίες τους, τα πλεονεκτήματα και τα μειονεκτήματά τους. Στη συνέχεια, αναλύουμε τους λόγους που μας οδήγησαν να επιλέξουμε το Wordpress αντί κάποιο άλλο CMS, καθώς και τα διάφορα χαρακτηριστικά του και τη δομή του.

Στο τέλος αναφερόμαστε αναλυτικά στο πως δημιουργήσαμε την ιστοσελίδα μας, κάνουμε μια σύνοψη της εργασίας και γίνεται λεπτομερής αναφορά σε όλα τα στοιχεία που εγκαταστάθηκαν προκειμένου να ικανοποιηθούν οι στόχοι μας, οι οποίοι είναι η εύκολη παραμετροποίηση, το μηδενικό κόστος, η ασφάλεια, η φιλικότητα στο χρήστη και η παροχή όλων των πληροφοριών που χρειάζεται κάποιος να γνωρίζει πριν προχωρήσει στην ενοικίαση/αγορά ενός ακινήτου.

(6)

6

ABSTRACT

The main purpose of this paper is to build a website and more specifically an e- shop of a real estate business office, using Wordpress, a modern content management system (CMS). Through this website one can browse and find, through specific search choices, information for the possible facilities that meet one’s expectations, see photos along with much more details about each registration, so that one from the comfort of his house and without even having to visit the place itself can make a solid opinion about it.

Initially, on the theoretical part, we appose a study of the CMSs in general and especially of Wordpress, the CMS that we implement in this thesis. Detailed analysis is provided regarding the history of CMS, their capabilities, their categories, their advantages and disadvantages. In addition, we analyze the reasons that led us to choose the Wordpress CMS instead of another, and its various features and structure.

For closure we refer analytically on how we created our website and we do a summary of the work. All the necessary components, such as the themes and plug-ins are described and analyzed. The installed components were chosen according to our objectives, which mainly are: easy and quick installation / configuration, zero cost, security, user friendliness and the provision of all the important information that one need to know before renting/buying a real estate.

(7)

7

ΚΕΦΑΛΑΙΟ 1 ΒΑΣΙΚΕΣ ΕΙΣΑΓΩΓΙΚΕΣ ΕΝΝΟΙΕΣ

1.1 Γενικές Πληροφορίες

Το Διαδίκτυο ή Internet όπως είναι η διεθνής ονομασία του που έχει επικρατήσει, είναι ένα επικοινωνιακό δίκτυο ηλεκτρονικών υπολογιστών, οι οποίοι επικοινωνούν μεταξύ τους χρησιμοποιώντας ένα κοινό πρωτόκολλο επικοινωνίας , το TCP/IP (Transmission Control Protocol/Internet Protocol).Το Διαδίκτυο χρησιμοποιεί μεταγωγή πακέτων (packet switching) και τη στοίβα πρωτοκόλλων TCP/IP.Οι χρήστες του Διαδικτύου μπορούν εύκολα και γρήγορα να περιηγηθούν σε μια τεράστια βάση πληροφοριών , να αποστείλουν και να λάβουν αρχεία , να κάνουν χρήση της

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

πολυάριθμων υπηρεσιών που έχουν στη διάθεσή τους.

Η απαράλλακτη μεταφορά της πληροφορίας σε οποιαδήποτε μορφή είναι αυτή(αρχείο, μήνυμα κτλ.),επιτυγχάνεται με τη χρήση ενός καταλλήλου πρωτοκόλλου μεταφοράς (transfer Protocol).Μερικά από τα πιο γνωστά διαδικτυακά πρωτόκολλα είναι το IP,TCP,το UDP,το DNS,το PPP,το SLIP,το ICMP,το POP3,το IMAP,το SMTP,το HTTP,το HTTPS,το SSH,το Telnet,το FTP,το LDAP και το SSL.Μερικές από τις γνωστές Διαδικτυακές υπηρεσίες που χρησιμοποιούν αυτά τα πρωτόκολλα είναι :

 Το ηλεκτρονικό ταχυδρομείο (e-mail)

 Οι ομάδες συζητήσεων (newsgroup)

 Η διαμοίραση αρχείων(file sharing)

 Η επιφόρτωση αρχείων(file transfer)

 Ο Παγκόσμιος Ιστός (World Wide Web)

1.2 World Wide Web-WWW (Παγκόσμιος Ιστός)

Δεν είναι λίγοι αυτοί που νομίζουν ότι οι όροι Διαδίκτυο και Παγκόσμιος Ιστός είναι ταυτόσημοι. Η αλήθεια είναι ότι ο Παγκόσμιος Ιστός (Wolrd Wide Web ή WWW) είναι ένα μέρος του Διαδικτύου. Αποτελεί όμως το μεγαλύτερο, το δημοφιλέστερο και το ταχύτερα αναπτυσσόμενο κομμάτι του. Συγκεκριμένα, ο Παγκόσμιος Ιστός είναι το μέσο για την εύκολη ανάκτηση του τεράστιου όγκου πληροφοριών που διατίθενται μέσω του Διαδικτύου. Χρησιμοποιεί ένα από τα πρωτόκολλα του Διαδικτύου, το Hypertext Transfer Protocol (HTTP).

(8)

8

1.3 Web Server (Διακομιστής Ιστού)

Κάθε ιστοσελίδα βρίσκεται με τη μορφή αρχείου σε κάποιον Web Server (διακομιστή Ιστού). Οι Web Servers είναι ειδικοί υπολογιστές με ειδικό λογισμικό και κατάλληλες δικτυακές συνδέσεις, οι οποίοι επιτρέπουν τη διάθεση των ιστοσελίδων σε ολόκληρο τον κόσμο. Ο κάθε χρήστης του Διαδικτύου που θέλει να δει μια ιστοσελίδα, τη ζητάει από τον Web Server στον οποίο αυτή βρίσκεται, χρησιμοποιώντας κάποια εφαρμογή Φυλλομετρητή Ιστού (Mozilla Firefox,Explorer,Opera κτλ.), και ο διακομιστής Ιστού με τη σειρά του την στέλνει.

1.4 Web Addresses (Διευθύνσεις Ιστού)

Κάθε ιστοσελίδα χαρακτηρίζεται με μοναδικό τρόπο από τη διεύθυνσή της, ή αλλιώς το URL (Uniform Resource Locator) της. Το URL είναι αρκετό για να εντοπιστεί μια ιστοσελίδα που βρίσκεται σε έναν διακομιστή Ιστού οπουδήποτε στον κόσμο.

Συνήθως αποτελείται από 5 μέρη: 1) το πρωτόκολλο που χρησιμοποιείται για τη μεταφορά της,2) το όνομα του Web Server που την περιέχει, 3) το όνομα της περιοχής του Web Server, 4) τη διαδρομή του αρχείου της ιστοσελίδας και 5) το όνομα του αρχείου της ιστοσελίδας.

Για παράδειγμα, η διεύθυνση :http://www.sch.gr/postings/publications.php αποτελείται από τα εξής μέρη:

http:// - χρησιμοποιείται το πρωτόκολλο μεταφοράς HTTP

www - το όνομα του Web Server. Μπορεί να είναι οποιοδήποτε όνομα, αλλά το www είναι το όνομα που χρησιμοποιείται περίπου από το 90% των servers σήμερα.

www.sch.gr - το όνομα περιοχής του διακομιστή Ιστού. Το τελευταίο μέρος δηλώνει το περιεχόμενο της σελίδας (πχ .com: εμπορικό, .edu: εκπαιδευτικό, .gov: κυβερνητικό, .org: μη κερδοσκοπικό) ή την χώρα (πχ .au: Αυστραλία, .gr:

Ελλάδα).

/postings/ - το όνομα του φακέλου που περιέχει το αρχείο της ιστοσελίδας.

publications.php - το όνομα του αρχείου της ιστοσελίδας.
(9)

9

1.5 Domain Name System (Σύστημα Ονομάτων Τομέα)

Το Domain Name System ή DNS (Σύστημα Ονομάτων Τομέα) είναι ένα σύστημα με το οποίο αντιστοιχίζονται οι διευθύνσεις IP σε ονόματα τομέων(Domain Names). Τα ονόματα τομέων όπως και οι διευθύνσεις IP που αναπαριστούν είναι μοναδικά, έχουν μια ιεραρχία και διαβάζονται από αριστερά προς τα δεξιά. Με αυτό τον τρόπο οι άνθρωποι μπορούν εύκολα να θυμούνται ένα όνομα και όχι μια σειρά αριθμών.

Το σύστημα DNS επιτρέπει την ανεύρεση ενός διακομιστή (server) με βάση το όνομά του. Ο διακομιστής μπορεί να υποστηρίζει έναν διάφορες υπηρεσίες , όπως http, ftp, smtp κτλ., δίνοντας μας τη δυνατότητα να συνδεθούμε σε μια ιστοσελίδα(http), σε μια αποθήκη αρχείων(ftp), ή να πάρουμε το mail μας(pop).

1.6 Ελεύθερο Λογισμικό

Για τον επιχειρηματία, το ανοιχτό λογισμικό, πρόκειται απλώς για λογισμικό που διατίθεται δωρεάν και με όλο του τον κώδικα. (Το λογισμικό "γράφεται" με μια γλώσσα προγραμματισμού και στη συνέχεια αυτός ο "πηγαίος κώδικας", μετατρέπεται σε εκτελέσιμο πρόγραμμα.)

Αντίθετα, στο εμπορικό λογισμικό ο χρήστης όχι μόνο πληρώνει για να λάβει το πρόγραμμα που θα "τρέχει" στον Η/Υ του, αλλά δεν έχει στη διάθεσή του και τον πηγαίο κώδικα. Δεν μπορεί λοιπόν να αλλάξει το πρόγραμμα ο ίδιος και πρέπει να ζητά (και να πληρώνει) όποια τροποποίηση επιθυμεί μόνο στον αρχικό κατασκευαστή.

Η παραπάνω ερμηνεία είναι απλοϊκή. Ιδεολογικά υπάρχουν σημαντικές διαφορές ανάμεσα στο λογισμικό ανοικτού κώδικα (Open Source) και το ελεύθερο λογισμικό (Free Software), καθώς το πρώτο υποστηρίζει ότι ο κώδικας πρέπει να είναι διαθέσιμος σε όλους διότι αυτό κάνει τα προγράμματα καλύτερα, ενώ το δεύτερο ότι ο κώδικας πρέπει να είναι διαθέσιμος σε όλους διότι μόνο έτσι η ελευθερία του χρήστη δεν περιορίζεται από τις αποφάσεις του κατασκευαστή. Το ότι τα προγράμματα γίνονται καλύτερα λοιπόν αποτελεί ένα ευχάριστο αλλά δευτερεύον χαρακτηριστικό. Οι οπαδοί του Free Software θα το χρησιμοποιούσαν ακόμη κι αν το εμπορικό λογισμικό ήταν καλύτερης ποιότητας από το δικό τους.

(10)

10 1.6.1Πλεονεκτήματα λογισμικού ανοιχτού κώδικα

Αξιοπιστία - Πολλές έρευνες (Zdnet, Bloor Research, Syscontrol AG, Netcraft κ.λ.π.) έχουν δείξει την ανωτερότητα εφαρμογών όπως το λειτουργικό σύστημα GNU\Linux και ο Apache web server. Για παράδειγμα, σε δοκιμή του Zdnet διάρκειας 10 μηνών τα Windows NT "κράσαραν" κατά μέσο όρο μια φορά κάθε 6 εβδομάδες και απαιτούσαν 30 λεπτά για την επισκευή τους ενώ το GNU\Linux ποτέ! Αν αυτό φαίνεται

"παράλογο" (το δωρεάν λειτουργεί πιο αξιόπιστα από το πληρωμένο) θυμηθείτε ότι οι εφαρμογές Open Source είναι αποτέλεσμα εθελοντικής εργασίας. Δεν υπάρχει λοιπόν πίεση από το Marketing και τις πωλήσεις να παρουσιάσουμε κάτι ακόμη κι αν δεν είναι έτοιμο ή καλά δοκιμασμένο, ενώ όλοι μπορούν να δουν, να σχολιάσουν και να διορθώσουν τη δουλειά των άλλων.

Αποδοτικότητα - Μεγάλος αριθμός συγκριτικών δοκιμών έχει αποδείξει την ταχύτητα και αποδοτικότητα πολλών Open Source εφαρμογών βασισμένων στο GNU\Linux (π.χ. PC Magazine, Sys Admin magazine, SPEC Consortium, IBM, Fastcenter, Ziff Davis, Mindcraft κλπ.).

Επεκτασιμότητα - Οι περισσότερες επιχειρηματικές εφαρμογές επιθυμούν χαμηλό κόστος εκκίνησης με εύκολη και γρήγορη αναβάθμιση, αν αποδειχθεί ότι η υπηρεσία που δημιουργήθηκε είναι δημοφιλής. Λόγω του ελεύθερου κώδικά τους οι εφαρμογές Open Source μπορούν εύκολα να τοποθετηθούν σε πολλά Πτυχιακή Ανάπτυξης Συστήματος για on-line συμπλήρωση ερωτηματολογίων διαφορετικά είδη (πλατφόρμες) υπολογιστών, αλλά και να λειτουργήσουν "εν παραλλήλω" σε μεγάλα συστήματα υψηλών επιδόσεων.

Ασφάλεια δεδομένων - Όλοι οι κρυπτογράφοι γνωρίζουν πως όποιο σύστημα ελέγχεται από πολλούς ανθρώπους είναι ασφαλέστερο από εκείνο που διαχειρίζονται μόνο λίγοι (όσο "καταρτισμένοι ή ευφυείς" κι αν είναι αυτοί). Χάρη στον ανοικτό τους κώδικα οι εφαρμογές Open Source "ελέγχονται" από χιλιάδες ανθρώπους και τα όποια προβλήματά τους ανακαλύπτονται πολύ γρήγορα. Για παράδειγμα, όπως έδειξε έρευνα της Attrition.org το 59% των defaced (τους άλλαξαν τη home page) sites στο Internet έτρεχαν Windows, ενώ μόνο το 21% GNU\Linux , πράγμα που θα ήταν φυσιολογικό μόνο αν στο δίκτυο υπήρχαν 3 φορές περισσότερα συστήματα Windows απ' ό,τι GNU\Linux (κάτι που φυσικά δεν συμβαίνει). Άλλη έρευνα (Security Portal) έδειξε πως η ταχύτητα διευθέτησης όσων προβλημάτων εμφανίζονται στο GNU\Linux είναι πολύ μεγαλύτερη απ' ότι στα Windows.

Προστασία από ιούς - Υπάρχουν περίπου 60.000 ιοί για Windows και περίπου 40 για GNU\Linux.

Χαμηλότερο κόστος λειτουργίας (Total Cost of Ownership) - Το Open Source λογισμικό (λειτουργικά συστήματα, βάσεις δεδομένων κλπ.) παρέχεται δωρεάν και για απεριόριστο αριθμό χρηστών. Επίσης, η επιχείρηση μπορεί να αξιοποιήσει παλαιότερο εξοπλισμό (αφού είναι ελεύθερη να κάνει τροποποιήσεις στον κώδικα), μειώνοντας έτσι τα έξοδά της. Χαρακτηριστική εδώ είναι η περίπτωση του Amazon.com. Ελάχιστοι γνωρίζουν ότι το γνωστό βιβλιοπωλείο κατάφερε να καταστεί κερδοφόρο επειδή

(11)

11 στράφηκε στο Open Source λογισμικό, μειώνοντας θεαματικά τα έξοδά του. Επίσης, πολλές χρηματιστηριακές επιχειρήσεις χρησιμοποιούν Linux γεγονός που κρατούν κρυφό, θεωρώντας το ως ένα σημαντικό ανταγωνιστικό πλεονέκτημα!

Ευκολότερες και φθηνότερες επεκτάσεις - Επειδή ο χρήστης διαθέτει πρόσβαση στον κώδικα του λογισμικού που χρησιμοποιεί μπορεί να ζητήσει επεκτάσεις ή αλλαγές από οποιονδήποτε. Ο κατασκευαστής δηλαδή δεν διαθέτει μονοπωλιακή δύναμη επάνω του και δεν μπορεί να τον "εκβιάσει" με υποχρεωτικές αναβαθμίσεις ή υπέρογκες χρεώσεις για μικρές εργασίες. Αν ο χρήστης λοιπόν δεν είναι ικανοποιημένος από τη συνεργασία ενός προμηθευτή μπορεί να απευθυνθεί σε κάποιον άλλον, χωρίς να απαιτηθεί η αντικατάσταση των εφαρμογών που χρησιμοποιεί.

Διαρκής και εκτενής υποστήριξη - Οι κατασκευαστές εμπορικού λογισμικού διορθώνουν μόνο τα πιο ενοχλητικά από τα προβλήματα των εφαρμογών τους και υποχρεώνουν τους πελάτες τους να αγοράζουν νέες αναβαθμίσεις ακόμη κι αν δεν τις χρειάζονται, σταματώντας την υποστήριξη των παλαιότερων εκδόσεων του προγράμματος. Στις εφαρμογές Open Source όμως η επιχείρηση μπορεί να διορθώσει η ίδια ότι την "πονάει" στην εφαρμογή και δεν υποχρεώνεται να αναβαθμίσει τίποτε αν δεν το επιθυμεί.

1.6.2 Μειονεκτήματα λογισμικού ανοιχτού κώδικα

Μερίδιο αγοράς - Αν και ο Apache αποτελεί τον δημοφιλέστερο web server στο Internet και το GNU\Linux διαθέτει ένα μεγάλο ποσοστό της αγοράς των Internet Servers, στην Ελλάδα υπάρχουν ακόμη πολύ λίγοι τεχνικοί με εμπειρία σε παρόμοια συστήματα. Αναμφίβολα πάντως οι γνώσεις τους είναι πολύ μεγαλύτερες από εκείνες του μέσου windows administrator ο οποίος συνήθως μπορεί να εκτελέσει μόνο τις πολύ βασικές λειτουργίες ενός συστήματος και αγνοεί τις πιο προχωρημένες δυνατότητες και εφαρμογές του. (Είναι πιο εύκολο να μάθεις τις βασικές λειτουργίες ενός windows συστήματος, αλλά δυσκολεύεσαι κατόπιν πολύ περισσότερο απ' ότι στο GNU\Linux για να κατανοήσεις και να υλοποιήσεις κάτι προχωρημένο.)

Ενδοεταιρικός καταλογισμός ευθυνών - Όπως λέει ένα γνωστό αμερικάνικο ρητό "Κανείς δεν απολύθηκε επειδή αγόρασε IBM". Ένα προϊόν της Microsoft ή της Oracle μπορεί να κοστίζει πολύ περισσότερα χρήματα και να προσφέρει λιγότερα απ' όσα μια εφαρμογή Open Source, αλλά όποιο πρόβλημα και αν παρουσιαστεί, το στέλεχος που εισηγήθηκε την αγορά του μπορεί πάντοτε να ισχυριστεί πως "έκανα μια επώνυμη επιλογή ενός μεγάλου ονόματος για να έχουμε το καλύτερο". Αν όμως πάει στραβά το παραμικρό σε μια εφαρμογή Open Source (και στην πληροφορική πάντα κάτι θα λειτουργήσει στραβά) η μομφή "γιατί εμπιστευθήκαμε κάτι φτηνιάρικο;" δύσκολα μπορεί να απαντηθεί με επιτυχία, ειδικά αν ο ερωτών είναι ο άσχετος από υπολογιστές προϊστάμενος όπως συμβαίνει συνήθως. Τα πράγματα θα ήταν καλύτερα αν υπήρχαν και στη χώρα μας εταιρείες εξειδικευμένες στην υποστήριξη open source εφαρμογών, αλλά απ' όσο γνωρίζω αυτό δεν συμβαίνει.

(12)

12

1.7 Δυναμικές-Στατικές ιστοσελίδες

Αρχικά υπήρχαν ιστοσελίδες οι οποίες είχαν τις απολύτως απαραίτητες

πληροφορίες. Όταν κάποιος ήθελε να δει αυτές τις πληροφορίες, έπρεπε να στείλει ένα αίτηµα στον server και αυτός µε την σειρά του αφού δεχτεί το αίτηµα, να στείλει πίσω στον αιτούντα το περιεχόμενο της ιστοσελίδας. Οι πληροφορίες αυτές δεν μπορούσαν να ανανεωθούν εύκολα και από τον καθένα. Αργότερα βέβαια και µε την συνεχή εξέλιξη στον χώρο του ηλεκτρονικού εμπορίου γενικότερα, οι ανάγκες και οι απαιτήσεις από µια ιστοσελίδα ολοένα και αυξανόταν. Μια στατική ιστοσελίδα δεν μπορούσε πλέον να καλύψει όλες τις περιπτώσεις και όλες τις ανάγκες µε αποτέλεσµα να κάνουν την εµφάνισή τους οι δυναµικές ιστοσελίδες.

1.7.1 Στατικές ιστοσελίδες

Όπως αναφέρθηκε και πιο πριν, οι στατικές ιστοσελίδες περιείχαν μονάχα τις βασικές πληροφορίες που έπρεπε να υπάρχουν σε ένα site. Ήταν δηλαδή σελίδες µε συγκεκριμένο περιεχόμενο όπως εικόνα, ήχο, βίντεο και κείμενο το οποίο ήταν το ίδιο για κάθε χρήστη χωρίς καμία αλληλεπίδραση μεταξύ του επισκέπτη και του site. Το περιεχόμενο μιας στατικής ιστοσελίδας συνήθως δεν αλλάζει πολύ συχνά και αυτό οφείλεται στο ότι δεν μπορεί ο κάθε ένας να το ενημερώσει. Τις όποιες αλλαγές, µπορεί να τις κάνει µόνο ο διαχειριστής της ιστοσελίδας ή κάποιος προγραμματιστής ο οποίος θα πρέπει να έχει τις απαραίτητες γνώσεις για να παρέµβει στον πηγαίο κώδικα της σελίδας. Αυτό φυσικά δεν είναι καθόλου εύχρηστο και λειτουργικό για περιπτώσεις όπου το περιεχόμενο της ιστοσελίδας θα πρέπει να ανανεώνεται σε τακτά χρονικά διαστήματα. Όλα αυτά βέβαια δεν σημαίνουν ότι οι στατικές ιστοσελίδες είναι πια παλιές και ξεπερασμένες. Υπάρχουν σήμερα αρκετά site µε πολύ μοντέρνο σχεδιασμό και δυνατότητες αρκετά προηγμένες.

(13)

13 1.7.1.1 Πλεονεκτήματα-μειονεκτήματα στατικών ιστοσελίδων

Υπάρχουν μερικά πλεονεκτήματα τα οποία κάνουν τις στατικές ιστοσελίδες να χρησιμοποιούνται ακόμα και μάλιστα µε αρκετά καλό αποτέλεσμα ως προς την παρουσίαση τους.

 Μικρότερες απαιτήσεις σε επισκέπτη και τόπο φιλοξενίας

 Λιγότερος χρόνος ανάπτυξης της ιστοσελίδας

 Χαμηλότερο κόστος

 Γρηγορότερο φόρτωμα στον browser(σε σχέση µε µια δυναμική)

 Χαμηλού επιπέδου γνώσεις προγραμματισμού

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

 Έλλειψη αυτόματης ενημέρωσης περιεχομένου

 Ιστοσελίδες µε μικρό περιεχόμενο(Λίγες σελίδες)

 Μη ελκυστικό στον χρήστη για μελλοντική επίσκεψη

 Περιορισμένο πεδίο χρήσης

 Αδυναμία αλληλεπίδρασης µε τον χρήστη

 Εξειδικευμένες γνώσεις προσωπικού για ανανέωση περιεχομένου

 Υψηλό κόστος για ενημέρωση-ανανέωση περιχεομένου

1.7.2 Δυναμικές ιστοσελίδες

Με τις αυξημένες ανάγκες που παρουσιάστηκαν στην πορεία εξέλιξης του εμπορίου μέσα από το διαδίκτυο ήταν λογικό να υπάρξουν αλλαγές και στον τρόπο κατασκευής και λειτουργίας μιας ιστοσελίδας. Υπήρξε η ανάγκη αλληλεπίδρασης της ιστοσελίδας µε τον επισκέπτη και η ανταλλαγή πληροφοριών και προς τις δυο

κατευθύνσεις. Αυτός ήταν και ο στόχος υλοποίησης μιας τέτοιας σελίδας, έτσι ώστε ο κάθε επισκέπτης να μπορεί να επιλέξει ο ίδιος τι ενέργειες θα πραγματοποιήσει και τι περιεχόμενο θα δει. Επιπλέον, περισσότεροι επισκέπτες να μπορούν ταυτόχρονα να πραγματοποιούν παρόμοιες ενέργειες αλλά µε διαφορετικό περιεχόμενο και

αποτέλεσμα για τον κάθε ένα χωριστά. Για την υποστήριξη μιας δυναμικής ιστοσελίδας χρησιμοποιούνται βάσεις δεδομένων οι οποίες τρέχουν πίσω από τα site και σκοπό έχουν να επεξεργάζονται και να αποθηκεύουν πληροφορίες. Για τις ιστοσελίδες αυτές

(14)

14 χρειάζονται πεπειραμένοι προγραμματιστές αφού για την δημιουργία μιας τέτοιας

σελίδας απαιτούνται πολλές γραμμές κώδικα. Παρόλα αυτά, το περιεχόμενο τέτοιων ιστοσελίδων μπορεί να αλλάζει και να ενημερώνεται αυτόματα και χωρίς την παρέμβαση κάποιο ειδικού προσωπικού µε προγραμματιστικές γνώσεις.

1.7.2.1 Πλεονεκτήματα-Μειονεκτήματα δυναμικών ιστοσελίδων

Η εµφάνιση των δυναμικών ιστοσελίδων είχε πολλά πλεονεκτήματα έναντι των στατικών. Μερικά από τα πιο σημαντικά είναι τα εξής:

 Αλληλεπίδραση µε τον χρήστη

 Ευκολία χρήσης από διαχειριστή και χρήστες

 Ταυτόχρονη πρόσβαση από πολλούς χρήστες µε διαφορετική χρήση του καθενός

 Κατηγοριοποιημένο και αρχειοθετημένο περιεχόμενο

 Εύκολη και γρήγορη ενημέρωση περιχεομένου

 Δελεαστικό για επιπλέον επισκέψεις

 Ενημέρωση περιχεομένου από άτομα µη ειδικευμένα σε προγραμματισμό

 Θεωρητικά απεριόριστος αριθμός σελίδων και περιχεομένου

 Χαμηλό κόστος συντήρησης

Παρόλα τα πλεονεκτήματα δεν παύουν και οι δυναµικές ιστοσελίδες να έχουν κάποια µμειονεκτήματα ως προς την χρήση τους.

 Η κατασκευή ενός δυναμικού site απαιτεί πολύ περισσότερο χρόνο κατασκευής

 Αυξημένο κόστος κατασκευής

 Υψηλό κόστος φιλοξενίας

 Αργεί να φορτωθεί στον browser εξαιτίας του αυξημένου περιχεομένου

 Αρκετές γραμμές κώδικα

 Γνώσεις προγραμματισμού

Όλα τα παραπάνω συντελούν στην απόφαση κάθε επιχείρησης ώστε να επιλέξει, σύμφωνα µε τις δικές της προσωπικές ανάγκες, τον καλύτερο και πιο ωφέλιμο για αυτήν, τρόπο παρουσίασης των προϊόντων και υπηρεσιών της. Σαν συμπέρασμα θα µμπορούσαμε να πούμε πως σε γενικές γραμμές και για την πλειοψηφία των

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

αποζημιώνουν µε το παραπάνω. Από την άλλη, αν η επιχείρηση θέλει να έχει απλά µια

(15)

15 αξιοπρεπή παρουσία στο διαδίκτυο χωρίς ιδιαίτερες απαιτήσεις, καλό θα είναι να

επιλέξει την λύση μιας στατικής ιστοσελίδας.

(16)

16

ΚΕΦΑΛΑΙΟ 2 ΤΕΧΝΟΛΟΓΙΕΣ

2.1 Τι είναι Html

H HTML (HyperText Markup Language,) είναι η κύρια γλώσσα σήμανσης για τις ιστοσελίδες και τα στοιχεία της είναι βασικά δομικά στοιχεία των ιστοσελίδων . Η HTML γράφεται υπό μορφή στοιχείων HTML τα οποία αποτελούνται από ετικέτες, οι οποίες περικλείονται μέσα σε σύμβολα «μεγαλύτερο από» και «μικρότερο από» (για

παράδειγμα <html>), μέσα στο περιεχόμενο της ιστοσελίδας. Οι ετικέτες HTML συνήθως λειτουργούν ανά ζεύγη (για παράδειγμα <h1> και </h1>), με την πρώτη να ονομάζεται ετικέτα έναρξης και τη δεύτερη ετικέτα λήξης(ή σε άλλες περιπτώσεις ετικέτα ανοίγματος και ετικέτα κλεισίματος αντίστοιχα). Ανάμεσα στις ετικέτες , οι σχεδιαστές ιστοσελίδων μπορούν να τοποθετήσουν κείμενο , πίνακες , εικόνες κτλ. Ο σκοπός ενός web browser είναι να διαβάζει τα έγγραφα HTML και τα συνθέτει σε σελίδες που μπορεί κανείς να διαβάσει ή να ακούσει . Ο browser δεν εμφανίζει τις ετικέτες HTML , αλλά τις χρησιμοποιεί για να ερμηνεύσει το περιεχόμενο της σελίδας. Τα στοιχεία της HTML χρησιμοποιούνται για να κτίσουν όλους τους ιστοτόπους. Η HTML επιτρέπει την ενσωμάτωση εικόνων και άλλων αντικειμένων μέσα στη σελίδα , και μπορεί να χρησιμοποιηθεί για να εμφανίσει διαδραστικές φόρμες . Παρέχει τις μεθόδους δημιουργίας δομημένων εγγράφων (δηλαδή εγγράφων που αποτελούνται από το περιεχόμενο που μεταφέρουν και από τον κώδικα μορφοποίησης του περιεχομένου) καθαρίζοντας δομικά σημαντικά στοιχεία για το κείμενο , όπως κεφαλίδες ,

παραγράφους, λίστες , συνδέσμους, παραθέσεις και άλλα. Μπορούν επίσης να ενσωματώνονται σενάρια εντολών σε γλώσσες όπως η JavaScript, τα οποία επηρεάζουν τη συμπεριφορά των ιστοσελίδων HTML .Οι web browsers μπορούν

επίσης να αναφέρονται σε στυλ μορφοποίησης CSS για να ορίζουν την εμφάνιση και τη διάταξη του κείμενου και του υπόλοιπου υλικού. Ο οργανισμός W3C , ο οποίος

δημιουργεί και συντηρεί τα πρότυπα για την HTML και τα CSS , ενθαρρύνει τη χρήση των CSS αντί διαφόρων στοιχείων της HTML για σκοπούς παρουσίασης του

περιεχομένου.

2.1.1 Προέλευση

ο 1980, ο φυσικός Τιμ Μπέρνερς Λι, ο οποίος εργαζόταν στο CERN, επινόησε το ENQUIRE,, ένα σύστημα χρήσης και διαμοιρασμού εγγράφων για τους ερευνητές του CERN, και κατασκεύασε ένα πρωτότυπό του. Αργότερα, το 1989, πρότεινε ένα σύστημα βασισμένο στο διαδίκτυο, το οποίο θα χρησιμοποιούσε υπερκείμενο. Έτσι, έφτιαξε την προδιαγραφή της HTML και έγραψε τον browser και το λογισμικό εξυπηρετητή στα τέλη

(17)

17 του 1990. Τον ίδιο χρόνο, ο Μπέρνερς Λι και ο μηχανικός συστημάτων πληροφορικής του CERN Robert Cailliau συνεργάστηκαν σε μια κοινή προσπάθεια εύρεσης

χρηματοδότησης, αλλά το έργο δεν υιοθετήθηκε ποτέ επίσημα από το CERN. Στις προσωπικές του σημειώσεις από το 1990, ο Μπέρνερς Λι αριθμεί «μερικές από τις πολλές χρήσεις του υπερκειμένου», και αναφέρει πρώτα από όλες μια εγκυκλοπαίδεια.

2.2 Τι είναι JavaScript

Η JavaScript είναι μια γλώσσα προγραμματισμού που χρησιμοποιείται για να κάνει τις ιστοσελίδες διαδραστικές και η αρχική της ονομασία ήταν LiveScript . Η JavaScript και η Java παρά το γεγονός ότι έχουν παρόμοια σύνταξη δεν έχουν καμία σχέση μεταξύ τους. Η Netscape περιέλαβε μια πρώτη έκδοση της JavaScript στο πρόγραμμα περιήγησης της στην έκδοση 2.0 και τα περισσότερα προγράμματα

περιήγησης από εκεί και περά ξεκίνησαν να την υποστηρίζουν. Αρχικά ενσωματώθηκε στα προγράμματα περιήγησης ως μέθοδος έλεγχου της HTML και των CSS. H

JavaScript όπως δηλώνει και το όνομα της είναι μια γλώσσα δεσμών ενεργειών και δημιουργείται ως αρχείο κειμένου που δεν μεταγλωττίζεται ποτέ αλλά εκτελείται όπως ακριβώς διαβάζεται . Είναι μια περιπλοκή γλώσσα που βασίζεται σε αντικείμενα και που μπορεί να εκτελέσει πολλές και διάφορες εργασίες, από τη μετακίνηση επιπέδων στη σελίδα μας μέχρι και τη δημιουργία ολόκληρων Web sites. H JavaScript είναι πλέον μια από τις πιο δημοφιλείς γλώσσες προγραμματισμού ηλεκτρονικών υπολογιστών στον παγκόσμιο ιστό . Αρχικά όμως, πολλοί επαγγελματίες προγραμματιστές υποτίμησαν τη γλώσσα αυτή διότι το κοινό της ήταν ερασιτέχνες συγγραφείς ιστοσελίδων και όχι

επαγγελματίες προγραμματιστές. Με τη χρήση της τεχνολογίας Ajax, η JavaScript επέστρεψε στο προσκήνιο και τράβηξε πάλι την προσοχή των επαγγελματιών προγραμματιστών.

Ο Brendan Eich δημιούργησε την JavaScript µε στόχο την δημιουργία HTML δυναμικών στο πρόγραμμα ανάγνωσης ιστοσελίδων του πελάτη και να εκτελεί κώδικα JavaScript, ώστε ο χρήστης να βλέπει ή να συνδιαλέγεται µε τη σελίδα. Οι εντολές της που είναι ενσωματωμένες σε µια HTML σελίδα μπορούν να ανταποκριθούν σε

συμβάντα του χρήστη, όπως κλικ του ποντικιού, είσοδο σε φόρμες και πλοήγηση στη σελίδα. Τα προγράμματα ανάγνωσης χρησιμοποιούν το πρότυπο αντικειμένου και συμβάντος για να περιγράψουν τη δομή μιας ιστοσελίδας που εμφανίζουν και για να χειριστούν την είσοδο χρήστη. Κάθε στοιχείο που εμφανίζει το πρόγραμμα ανάγνωσης είναι ένα αντικείμενο. Όταν τρέχουν οι δέσμες ενεργειών, μπορούν να δημιουργήσουν, να αλλάξουν και να διαβιβάσουν αντικείμενα. Οι δέσμες ενεργειών μπορούν επίσης να δημιουργήσουν αντικείμενα από μόνες τους. Σε µια γλώσσα δεσμών ενεργειών (script) ενός προγράμματος ανάγνωσης, όπως η JavaScript, κάθε αντικείμενο έχει ένα όνομα,

(18)

18 είτε κληρονομικά, είτε µε ορισμό από τον προγραμματιστή. Οι δέσμες ενεργειών έχουν πρωτεύουσες και δευτερεύουσες ιδιότητες. Μπορούν να εφαρμόζουν ενέργειες, οι οποίες ονομάζονται μέθοδοι, στα αντικείμενα μιας ιστοσελίδας. Μπορούν να

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

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

Η JavaScript δεν θα πρέπει να συγχέεται με τη Java, που είναι διαφορετική γλώσσα προγραμματισμού και με διαφορετικές εφαρμογές. Η χρήση της λέξης "Java"

στο όνομα της γλώσσας έχει περισσότερη σχέση με το προφίλ του προϊόντος που έπρεπε να έχει και λιγότερο με κάποια πιθανή συμβατότητα ή άλλη στενή σχέση με τη Java. Ρόλο σε αυτήν τη σύγχυση έπαιξε και ότι η Java και η JavaScript έχουν δεχτεί σημαντικές επιρροές από τη γλώσσα C, ειδικά στο συντακτικό, ενώ είναι και οι δύο αντικειμενοστραφείς γλώσσες. Τονίζεται ότι ο σωστός τρόπος γραφής της είναι "JavaScript " και όχι 'Java script' σαν δύο λέξεις, όπως λανθασμένα γράφεται ορισμένες φορές.

2.3 Τι είναι Php

H PHP είναι μια γλώσσα προγραμματισμού για τη δημιουργία σελίδων web με δυναμικό περιεχόμενο. Μια σελίδα PHP περνά από επεξεργασία από ένα

συμβατό διακομιστή του Παγκόσμιου Ιστού (π.χ. Apache), ώστε να παραχθεί σε πραγματικό χρόνο το τελικό περιεχόμενο, που θα σταλεί στο πρόγραμμα περιήγησης των επισκεπτών σε μορφή κώδικα HTML. Ένα αρχείο με κώδικα PHP θα πρέπει να έχει την κατάλληλη επέκταση (π.χ. *.php, *.php4, *.phtml κ.ά.). Η ενσωμάτωση κώδικα σε ένα αρχείο επέκτασης .html δεν θα λειτουργήσει και θα εμφανίσει στον browser τον κώδικα χωρίς καμία επεξεργασία, εκτός αν έχει γίνει η κατάλληλη ρύθμιση στα MIME types του server. Επίσης ακόμη κι όταν ένα αρχείο έχει την επέκταση .php, θα πρέπει ο server να είναι ρυθμισμένος για να επεξεργάζεται και να μεταγλωττίζει τον κώδικα PHP σε HTML που καταλαβαίνει το πρόγραμμα πελάτη.

Ο διακομιστής Apache, που χρησιμοποιείται σήμερα ευρέως σε συστήματα με τα λειτουργικά συστήματαGNU/Linux, Microsoft Windows, Mac OS X υποστηρίζει εξ ορισμού την εκτέλεση κώδικα PHP, είτε με την χρήση ενός πρόσθετου (mod_php) ή με την αποστολή του κώδικα προς εκτέλεση σε εξωτερική διεργασία CGI ή FCGI ή με την έλευση της php5.4 υποστηρίζονται η εκτέλεση σε πολυάσχολους ιστοχώρους, FastCGI

(19)

19 Process Manager (FPM). Ο συνδυασμός Linux/Apache/PHP/MySQL, που είναι η πιο δημοφιλής πλατφόρμα εκτέλεσης ιστοσελίδων είναι γνωστός και με το ακρωνύμιο LAMP. Παρόμοια, ο συνδυασμός */Apache/PHP/MySQL ονομάζεται *AMP, όπου το πρώτο αρχικό αντιστοιχεί στην πλατφόρμα, στην οποία εγκαθίστανται ο Apache, η PHP και η MySQL (π.χ. Windows, Mac OS X).

Ο LAMP συνήθως εγκαθίσταται και ρυθμίζεται στο Linux με τη βοήθεια του διαχειριστή πακέτων της εκάστοτε διανομής. Στην περίπτωση άλλων λειτουργικών συστημάτων, επειδή το κατέβασμα και η ρύθμιση των ξεχωριστών προγραμμάτων μπορεί να είναι πολύπλοκη, υπάρχουν έτοιμα πακέτα προς εγκατάσταση, όπως το XAMPP και το WAMP για τα Windows και το MAMP για το Mac OS X

2.3.1 Ιστορία .

Η ιστορία της PHP ξεκινά από το 1994, όταν ένας φοιτητής, ο Rasmus Lerdorf δημιούργησε χρησιμοποιώντας τη γλώσσα προγραμματισμού Perl ένα

απλό script με όνομα php.cgi, για προσωπική χρήση. Το script αυτό είχε σαν σκοπό να διατηρεί μια λίστα στατιστικών για τα άτομα που έβλεπαν το online βιογραφικό του σημείωμα. Αργότερα αυτό το script το διέθεσε και σε φίλους του, οι οποίοι άρχισαν να του ζητούν να προσθέσει περισσότερες δυνατότητες. Η γλώσσα τότε ονομαζόταν PHP/FI από τα αρχικά Personal Home Page/Form Interpreter. Το 1997 η PHP/FI έφθασε στην έκδοση 2.0, βασιζόμενη αυτή τη φορά στη γλώσσα C και αριθμώντας περισσότερους από 50.000 ιστοτόπους που τη χρησιμοποιούσαν, ενώ αργότερα την ίδια χρονιά οι Andi Gutmans και Zeev Suraski ξαναέγραψαν τη γλώσσα από την αρχή, βασιζόμενοι όμως αρκετά στην PHP/FI 2.0.

Έτσι η PHP έφθασε στην έκδοση 3.0 η οποία θύμιζε περισσότερο τη σημερινή μορφή της. Στη συνέχεια, οι Zeev και Andi δημιούργησαν την εταιρεία Zend (από τα αρχικά των ονομάτων τους), η οποία συνεχίζει μέχρι και σήμερα την ανάπτυξη και εξέλιξη της γλώσσας PHP. Ακολούθησε το 1998 η έκδοση 4 της PHP, τον Ιούλιο του 2004 διατέθηκε η έκδοση 5, ενώ αυτή τη στιγμή έχουν ήδη διατεθεί και οι πρώτες δοκιμαστικές εκδόσεις της επερχόμενης PHP 6, για οποιονδήποτε προγραμματιστή θέλει να τη χρησιμοποιήσει. Οι περισσότεροι ιστότοποι επί του παρόντος

χρησιμοποιούν κυρίως τις εκδόσεις 4 και 5 της PHP.

(20)

20

2.4 Τι είναι CSS

Η CSS (Cascading Style Sheets-Διαδοχικά Φύλλα Στυλ) ή ( αλληλουχία φύλλων στυλ ) είναι μια γλώσσα υπολογιστή που ανήκει στην κατηγορία των γλωσσών φύλλων στυλ που χρησιμοποιείται για τον έλεγχο της εμφάνισης ενός εγγράφου που έχει

γραφτεί με μια γλώσσα σήμανσης. Χρησιμοποιείται δηλαδή για τον έλεγχο της

εμφάνισης ενός εγγράφου που γράφτηκε στις γλώσσες HTML και XHTML, δηλαδή για τον έλεγχο της εμφάνισης μιας ιστοσελίδας και γενικότερα ενός ιστοτόπου. Η CSS είναι μια γλώσσα υπολογιστή προορισμένη να αναπτύσσει στιλιστικά μια ιστοσελίδα δηλαδή να διαμορφώνει περισσότερα χαρακτηριστικά, χρώματα, στοίχιση και δίνει

περισσότερες δυνατότητες σε σχέση με την html. Για μια όμορφη και καλοσχεδιασμένη ιστοσελίδα η χρήση της CSS κρίνεται ως απαραίτητη. Για ένα έγγραφο πχ xhtml θα υπάρχουν παραπάνω από ένα φύλλα στυλ τα οποία περιέχουν δηλώσεις για την εμφάνιση ενός συγκεκριμένου στοιχείου. Το Φύλλο στυλ που εφαρμόζεται σε ένα έγγραφο μπορεί να προέρχεται από :

το συγγραφέα μιας ιστοσελίδας

το χρήστη του πλοηγού

τον ίδιο τον πλοηγό, αν έχει το δικό του προκαθορισμένο φύλλο στυλ .

Συνεπώς για ένα xhtml στοιχείο θα υπάρχουν παραπάνω από μια δηλώσεις που πιθανόν να είναι συγκρουόμενες πρότυπη css για να επιλύσει παρόμοιες συγκρούσεις έχει καθορίσει μια αλληλουχία-σειρά στην οποία θα μπουν αυτές οι δηλώσεις και με βάση την οποία θα επιλεγεί πχ η δήλωση που είναι πρώτη στη σειρά.

Ο αλγόριθμος δημιουργίας αυτής της σειράς-αλληλουχίας είναι ο ακόλουθος:

1. Βρες όλες τις δηλώσεις που εφαρμόζονται στο στοιχείο που μας ενδιαφέρει. Οι δηλώσεις εφαρμόζονται στο στοιχείο αν ο επιλογέας του το επιλέξει (ταιριάζει με αυτό).

2. Ταξινόμησε με βάση τη σημασία (κανονική ή σημαντική) και προέλευση ( συγγραφέας , χρήστη ή πλοηγός χρήστη). Με αύξουσα σειρά προτεραιότητας:

1. Δηλώσεις πλοηγού χρήστη 2. Κανονικές δηλώσεις χρήστη 3. Κανονικές δηλώσεις συγγραφέα 4. Σημαντικές δηλώσεις συγγραφέα 5. Σημαντικές δηλώσεις χρήστη

(21)

21 3. Ταξινόμησε τις δηλώσεις ίδιας σημασίας και προέλευσης με κριτήριο την

εξειδίκευση του επιλογέα: οι πιο εξειδικευμένοι επιλογείς υπερισχύουν των πιο γενικών. Τα ψευδό-στοιχεία και οι ψευδό-κλάσεις λογαριάζονται σαν κανονικά στοιχεία και κλάσεις αντίστοιχα.

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

Αφού λοιπόν προκύψει μια σειρά-αλληλουχία κανόνων εμφάνισης που αφορούν το ίδιο στοιχείο θα επιλεγεί προς εφαρμογή (για την αποφυγή συγκρούσεων ) η δήλωση που θα είναι τελευταία στην σειρά που αναλύθηκε πιο πάνω.

2.5 Τι είναι η SQL

H SQL (Structured Query Language) είναι μία γλώσσα

υπολογιστών στις βάσεις δεδομένων, που σχεδιάστηκε για τη διαχείριση δεδομένων, σε ένα σύστημα διαχείρισης σχεσιακών βάσεων δεδομένων (Relational Database

Management System, RDBMS) και η οποία, αρχικά, βασίστηκε στη σχεσιακή άλγεβρα.

Η γλώσσα περιλαμβάνει δυνατότητες ανάκτησης και ενημέρωσης δεδομένων,

δημιουργίας και τροποποίησης σχημάτων και σχεσιακών πινάκων, αλλά και ελέγχου πρόσβασης στα δεδομένα. Η SQL ήταν μία από τις πρώτες γλώσσες για το σχεσιακό μοντέλο του Edgar F. Codd, στο σημαντικό άρθρο του το 1970, και έγινε η πιο ευρέως χρησιμοποιούμενη γλώσσα για τις σχεσιακές βάσεις δεδομένων .

2.5.1 Ιστορία

Η SQL αναπτύχθηκε στην IBM από τους Andrew Richardson, Donald C.

Messerly και Raymond F. Boyce, στις αρχές της δεκαετίας του 1970. Αυτή η έκδοση, αποκαλούμενη αρχικά SEQUEL, είχε ως σκοπό να χειριστεί και να ανακτήσει τα στοιχεία που αποθηκεύτηκαν στο πρώτο RDBMS της IBM, το System R. .[1]Το πρώτο σύστημα διαχείρισης σχεσιακών βάσεων δεδομένων (RDBMS) ήταν το RDMBS που αναπτύχθηκε στo MIT, στις αρχές της δεκαετίας του 1970 και η Ingres, που

αναπτύχθηκε το 1974 στο Πανεπιστήμιο Μπέρκλεϋ. H Ingres εφάρμοσε μία γλώσσα διατύπωσης ερωτήσεων γνωστή ως QUEL, το οποίο αντικαταστάθηκε αργότερα στην αγορά από την SQL.Προς το τέλος της δεκαετίας του 70 η Relational Software (τώρα Oracle Corporation) είδε τη δυνατότητα αυτών που περιγράφηκαν από Codd,

(22)

22 Chamberlin, και Boyce και ανάπτυξε την SQL βασισμένο στο RDBMS, με τις φιλοδοξίες πώλησης του στο Αμερικανικό ναυτικό, την Κεντρική Υπηρεσία Πληροφοριών και άλλες Αμερικανικές Υπηρεσίες καλοκαίρι του 1979, η Relational Software εισήγαγε την πρώτη διαθέσιμη στο εμπόριο εφαρμογή του SQL και νίκησε την IBM με τη διάθεση του

πρώτου εμπορικού RDBMS για μερικές εβδομάδες.

2.5.2 Γλωσσικά στοιχεία

Η γλώσσα SQL υποδιαιρείται σε διάφορα γλωσσικά στοιχεία, που περιλαμβάνουν:

Clauses, οι οποίες είναι σε μερικές περιπτώσεις προαιρετικές, αλλά απαραίτητα συστατικά των δηλώσεων και ερωτήσεων.

Expressions που μπορούν να παραγάγουν είτε τις κλιμακωτές τιμές είτε πίνακες που αποτελούνται από στήλες και σειρές στοιχείων.

Predicates που διευκρινίζουν τους όρους που μπορούν να αξιολογηθούν σαν σωστό ή λάθος.

Queries που ανακτούν τα στοιχεία βασισμένες σε ειδικά κριτήρια.

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

Το κενό αγνοείται γενικά στις Statements και τις Queries SQL. Ένα κενό είναι όμως απαραίτητο για να ξεχωρίζει Statements όπως και στην κανονική γραφή κειμένων.

(23)

23

ΚΕΦΑΛΑΙΟ 3: ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΕΧΟΜΕΝΟΥ (CMS)

3.1 Τι είναι CMS

Τα Συστήματα Διαχείρισης Περιεχομένου (Content Management Systems, CMS) είναι διαδικτυακές εφαρμογές που επιτρέπουν την online τροποποίηση του

περιεχομένου ενός δικτυακού τόπου.

Οι διαχειριστές μέσω του διαδικτύου ενημερώνουν το περιεχόμενο στο CMS, το οποίο είναι εγκατεστημένο σ' ένα διακομιστή. Οι αλλαγές αυτές γίνονται αυτόματα διαθέσιμες πάλι μέσω του διαδικτύου, σε όλους τους επισκέπτες και χρήστες του δικτυακού τόπου.

Μια από τις βασικότερες δυνατότητες του Internet είναι τα CMS (Content Management System – Συστήματα Διαχείρισης Περιεχομένου), τα οποία επιτρέπουν στο χρήστη να δημιουργήσει και να τροποποιήσει το περιεχόμενο και τις πληροφορίες μιας δυναμικής ιστοσελίδας

3.2 Τι σημαίνει CMS

Όπως προαναφέρθηκε τα αρχικά CMS αντιστοιχούν στις λέξεις Content Management System. Είναι μια ορολογία χωρίς έναν και μοναδικό ορισμό. Ένα CMS μπορεί να έχει πολλαπλές σημασίες αναλόγως των σεναρίων και των σκοπών ενός project.

 Μια εφαρμογή , πιθανότητα web-based, που παρέχει δυνατότητες σε πολλούς χρήστες (που ανήκουν σε διαφορετικά επίπεδα αδειών πρόσβασης) για να διαχειριστούν περιεχόμενο, δεδομένα ή πληροφορίες ενός προγράμματος ή μιας εφαρμογής internet/intranet.Η διαχείριση περιεχομένου αναφέρεται στη

δημιουργία , τροποποίηση , αρχειοθέτηση, δημοσίευση , συνεργασία, αναφορά και διανομή του.

 Μια εφαρμογή που περιέχει όλες τις παραπάνω δυνατότητες , και όχι την αναγκαιότητα γνώσης κώδικα.

 Ένα πακέτο λογισμικού για τη διαχείριση ενός ιστοτόπου.

(24)

24

3.3 Γιατί χρειαζόμαστε τα CMS

Η παραδοσιακή μέθοδος κατασκευής των ιστοσελίδων εμπεριέχει έναν μεγάλο περιορισμό. Το περιεχόμενο των σελίδων που δημοσιεύεται δεν μπορεί να τροποποιηθεί εύκολα. Για να ενημερωθεί μια ιστοσελίδα, είτε απαιτείται η αγορά ενός ακριβού λογισμικού ή να ξανασχεδιαστεί η ιστοσελίδα από την αρχή.

‘Ετσι λοιπόν, η απαίτηση συχνής ενημέρωσης των ιστοσελίδων από τους διαχειριστές αύξησε την ανάγκη για τα Συστήματα Διαχείρισης Περιεχομένου (CMS).

Τα CMS έβαλαν στην άκρη κάθε περιορισμό σχετικά με την αναβάθμιση/ενημέρωση των ιστοσελίδων και έδωσαν τη δυνατότητα στους σχεδιαστές να προσθέσουν επιπλέον χαρακτηριστικά.

3.4 Δυνατότητες των CMS

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

 Με τη χρήση των CMS, οι ιδιοκτήτες των ιστοσελίδων μπορούν να τις ανανεώσουν χωρίς να χρειάζεται να έχουν ιδιαίτερες τεχνικές γνώσεις.

 Οι ιστοσελίδες μπορούν να ανανεώνονται online από οποιονδήποτε web browser. Η διαδικασία γίνεται πιο βολική και πιο γρήγορη.

 Τα CMS συμπεριφέρονται σαν μια βάση δεδομένων και περιέχουν όλες τις πληροφορίες ενός website σε μορφή κειμένου και έτσι είναι εύκολη η προσπέλαση οποιασδήποτε πληροφορίας μέσω της αναζήτησης.

 Μέσω των CMS, μια ιστοσελίδα μπορεί να ανανεωθεί ανά πάσα στιγμή, χωρίς να χρειάζεται να κατέβει προσωρινά ή η βοήθεια ενός τεχνικού, γεγονός το οποίο αποδεικνύει ότι εξοικονομείται χρόνος και χρήμα.

 Οι ιστοσελίδες μπορούν να σχεδιάζονται με έναν τρόπο περισσότερο κατανοητό.

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

 Τα CMS επιτρέπουν επίσης την ύπαρξη πολλαπλών χρηστών που μπορούν να εισέλθουν και να εξέλθουν από το site (login & logout), και να δουν διαφορετικά δεδομένα ανάλογα με τη γλώσσα προτίμησής τους, την ώρα της ημέρας, να έχουν δι

Referências

Documentos relacionados