Ανάλυση, Σχεδιασμός και Ανάπτυξη Διαδραστικής Διαδικτυακής Εφαρμογής για την Διαχείριση Συνταγών Μαγειρικής

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Ανάλυση, Σχεδιασμός και Ανάπτυξη Διαδραστικής Διαδικτυακής Εφαρμογής για την Διαχείριση Συνταγών Μαγειρικής"

Transcript

1 Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΩΝ Ανάλυση, Σχεδιασμός και Ανάπτυξη Διαδραστικής Διαδικτυακής Εφαρμογής για την Διαχείριση Συνταγών Μαγειρικής Ελευθεριάδου Σοφία ΣΕΠΤΕΜΒΡΙΟΣ 2013 ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ Χατζής Βασίλειος Εκπονηθείσα πτυχιακή εργασία απαραίτητη για την κτήση του βασικού πτυχίου

2 Πρόλογος Το διαδίκτυο αναμφισβήτητα αποτελεί τα τελευταία χρόνια μέρος της καθημερινότητάς μας και κατ' επέκταση της ίδιας μας της ζωής. Είναι μέσο επικοινωνίας, πηγής γνώσης, και πολλών άλλων,εξαρτώντας πάντα από την χρήση που κάνουμε. Ως μέσο έχει δύο διαστάσεις, την υλική και την άυλη. Με τον όρο υλική περιγράφουμε τα μέρη εκείνα που είναι απαραίτητα για την εδραίωση μίας σύνδεσης,δηλαδή υλικό και λογισμικό ενώ με τον όρο άυλη περιγράφουμε όλα εκείνα που προσφέρει στην κοινωνία το διαδίκτυο ως μέσο. Λόγω της ραγδαίας ανάπτυξης του διαδικτύου προσφέρονται και αρκετά χρήσιμα εργαλεία ανάπτυξης λογισμικού τα οποία βοηθούν τους προγραμματιστές ή τους χρήστες στην ανάπτυξη, διόρθωση ή βελτίωση των εφαρμογών διαδικτύου. Οι βάσεις δεδομένων τέθηκαν σε λειτουργία όταν δημιουργήθηκε η ανάγκη για την ταχύτατη συγκέντρωση των πληροφοριών λόγω του μεγάλου όγκου τους. Ένα από τα πιο ενδιαφέροντα θέματα στον προγραμματισμό βάσεων δεδομένων αποτελεί η αναζήτηση και εξαγωγή του χρήσιμου περιεχομένου του διαδικτύου και η αποθήκευση του στο ανάλογο είδος βάσης δεδομένων. Οι προπτυχιακές μου σπουδές στο τμήμα Διαχείρισης Πληροφοριών του ΤΕΙ Ανατολικής Μακεδονίας & Θράκης μου παρείχαν την πλειονότητα των απαραίτητων γνώσεων για την ανάπτυξη της παρούσας πτυχιακής εργασίας. Τέλος θα ήθελα να εκφράσω τις προσωπικές μου ευχαριστίες στον επιβλέποντα καθηγητή κ. Βασίλειο Χατζή τόσο για την βοήθεια του κατά την εκπόνηση της πτυχιακής εργασίας όσο και για τις γνώσεις που με βοήθησε να αποκτήσω κατά την διάρκεια των τεσσάρων αυτών ετών του προγράμματος σπουδών.

3 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Περιεχόμενα 1. Εργαλεία ανάπτυξης λογισμικού Xampp Control Panel Apache HTTP Server PhpMyAdmin Γλώσσες Σήμανσης HTML και HTML CSS και CSS PHP και JavaScript Πλεονεκτήματα της PHP Λειτουργικά Χαρακτηριστικά της PHP JavaScript MySQL Πλεονεκτήματα της MySQL Σχεδιασμός Αποδοτικών Βάσεων Δεδομένων Ανάλυση του Συστήματος της Εφαρμογής Τεχνολογία ανάπτυξης λογισμικού Καταγραφή απαιτήσεων Ανάλυση απαιτήσεων Σχεδίαση της Εφαρμογής Βάση δεδομένων εφαρμογής Παρουσίαση και Ανάλυση του PHP Κώδικα Εγχειρίδιο χρήσης Αρχική Οθόνη Οθόνη Απλού Χρήστη Οθόνη Σεφ Οθόνη Διαχειριστή...69 Συμπεράσματα Βιβλιογραφία...72 Σελίδα 3 από 72

4 Κατάλογος Εικόνων Εικόνα 1: Πίνακας ελέγχουν του XAMPP για start/stop modules. 7 Εικόνα 2: Client-Server αρχιτεκτονική 8 Εικόνα 3: Το περιβάλλον της PhpMyAdmin 11 Εικόνα 4: Διάγραμμα Οντοτήτων - Συσχετίσεων Εικόνα 5: Διάγραμμα Περιπτώσεων Χρήσης Εικόνα 6: Πίνακας categories Εικόνα Εικόνα Εικόνα Εικόνα Εικόνα Εικόνα Εικόνα Εικόνα Εικόνα Εικόνα Εικόνα Εικόνα Εικόνα 7: Πίνακας chefs 8: Πίνακας materials 9: Πίνακας measurements 10: Πίνακας recipes 11: Πίνακας details 12: Πίνακας users 13: Πίνακας users_titles 14: Σχέσεις Πινάκων 15: index.php 16: user_register.php (1) 17: user_register.php (2) 18: user_modify.php (1) 19: user_modify.php (2) Εικόνα 20: user_login.php (1) Εικόνα 21: user_login.php (2) Εικόνα 22: user_edit.php (1)

5 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Εικόνα 23: ϋ8θγ_θάιί.ρήρ (2) Εικόνα 24: ϋβθγ_8άά.ρήρ (1) Εικόνα 25: ϋβθγ_8άά.ρήρ (2) Εικόνα 26: ΓθθΙρθ8_ίΐ8ί.ρήρ (1) Εικόνα 27: ΓθθΙρθ8_ίΐ8ί.ρήρ (2) Εικόνα 28: recipe_show.php (1) Εικόνα 29: recipe_show.php (2) Εικόνα 30: recipe_modify.php (1) Εικόνα 31: recipe_modify.php (2) Εικόνα 32: recipe_edit.php (1) Εικόνα 33: recipe_add.php (1) Εικόνα 34: recipe_add.php (2) Εικόνα 35: recipe_add.php (3) Εικόνα 36: ΓθcΙpθ_add.php (4) Εικόνα 37: Αρχική Οθόνη Εικόνα 38: Εγγραφή χρήστη Εικόνα 39: Εγγραφή χρήστη - Μήνυμα λάθους Εικόνα 40: Εγγραφή χρήστη - Στοιχεία Εικόνα 41: Εισαγωγή χρήστη Εικόνα 42: Εισαγωγή χρήστη - Μήνυμα λάθους Εικόνα 43: Οθόνη απλού χρήστη Εικόνα 44: Οθόνη σεφ Εικόνα 45: Νέα συνταγή Εικόνα 46: Οθόνη Διαχειριστή Εικόνα 47: Διαχείριση Χρηστών Σελίδα 5 από 72

6 Εισαγωγή Η παρούσα πτυχιακή εργασία είχε σαν στόχο την ανάπτυξη μιας Διαδικτυακής Εφαρμογής για την Διαχείριση Συνταγών Μαγειρικής. Πρόκειται για μια δυναμική διαδραστική ιστοσελίδα που αποτελείται από τέσσερα επίπεδα χρηστών, όπου κάθε ένας από αυτούς μπορεί να επιτελέσει τις λειτουργίες που αντιστοιχούν στα δικαιώματά του, οι οποίες θα αναλυθούν παρακάτω. Η διαδικτυακή εφαρμογή αναπτύχθηκε σε PHP και MySQL και δίνει την δυνατότητα πρόσβασης, πλοήγησης και επεξεργασίας επιλεγμένων στοιχείων της σελίδας μέσω του διαδικτύου σε πολλούς χρήστες ταυτόχρονα (των τριών επιπέδων). Με βάση τα παραπάνω ανατήχθηκε ένα πρόγραμμα φιλικό προς τον χρήστη, που πληροί όλες τις προϋποθέσεις ευχρηστίας και ασφάλειας προσωπικών δεδομένων, αλλά ταυτόχρονα διασφαλίζει και τον έλεγχο των στοιχείων που εισάγει ο χρήστης ανάλογα με το επίπεδο στο οποίο ανήκει. Αποτελείται από τέσσερα κεφάλαια εκτός της εισαγωγής και των συμπερασμάτων κάθε ένα από τα οποία αποτελεί συνέχεια του άλλου. Πιο συγκεκριμένα, στο πρώτο κεφάλαιο γίνεται περιγραφή των εργαλείων ανάπτυξης λογισμικού, ουσιαστικά μιλάμε για εφαρμογές ή προγράμματα λογισμικού,έσω των οποίων δίνεται η δυνατότητα ανάπτυξης κώδικα και γενικά λογισμικού. Στο κεφάλαιο αυτό γίνεται συγκεκριμένη περιγραφή των εργαλείων λογισμικού που χρησιμοποιήθηκαν αποκλειστικά για την δημιουργία της παρούσας εφαρμογής. Όλα τα εργαλεία που χρησιμοποιήθηκαν είναι ανοιχτού κώδικα (open source). Στο δεύτερο κεφάλαιο έγινε ανάλυση του συστήματος της εφαρμογής και συγκεκριμένα μια αναφορά σχετικά με την τεχνολογία ανάπτυξης λογισμικού, ακλούθησε η καταγραφή και έπειτα η ανάλυση των απαιτήσεων. Το τρίτο κεφάλαιο περιλαμβάνει τη σχεδίαση της εφαρμογής και παρουσιάζονται οι πίνακες της βάσης δεδομένων καθώς και οι σχέσεις που τους συνδέουν.

7 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Τέλος στο τέταρτο κεφάλαιο, δημιουργείται το εγχειρίδιο χρήσης της εφαρμογής, όπου πιο συγκεκριμένα γίνεται παρουσίαση του τρόπου χειρισμού του προγράμματος από τους χρήστες των διαφόρων επιπέδων με απλό και κατανοητό τρόπο. Κάθε κίνηση περιγράφεται γραπτώς, συνοδευόμενη από τα απαραίτητα screenshots, τα οποία δίνουν μια ολοκληρωμένη εικόνα στον χρήστη. εφαρμογή. Η παρούσα πτυχιακή εργασία κλείνει με τα συμπεράσματα τα οποία περιλαμβάνουν τα όσα αποκομίσθηκαν από όλη την διαδικασία ανάλυσης, σχεδίασης, υλοποίησης και τεκμηρίωσης μιας εφαρμογής. Σελίδα 7 από 72

8 1. Εργαλεία Ανάπτυξης Λογισμικού Εισαγωγή Στο παρόν κεφάλαιο έτσι όπως αυτό θα αναπτυχθεί στις επόμενες υποενότητες, θα γίνει εκτενέστατη αναφορά στα εργαλεία ανάπτυξης λογισμικού που χρειάστηκαν για την ανάπτυξη της παρούσας εφαρμογής. Τα εργαλεία ανάπτυξης λογισμικού είναι προγράμματα ή εφαρμογές τα οποία βοηθούν τους προγραμματιστές ή τους χρήστες να αναπτύσσουν, να διορθώνουν ή να βελτιώνουν τις εφαρμογές τους. Τα βασικά στοιχεία που διαθέτει ένα εργαλείο ανάπτυξης λογισμικού και που χαρακτηρίζουν κάθε εφαρμογή που δημιουργείται για το σκοπό αυτό είναι τα εξής: Ένας επεξεργαστής κειμένου. Κάποιος μεταγλωττιστής. Κάποιος φορτωτής σύνδεσης Κάποιο εργαλείο διόρθωσης σφαλμάτων. Ωστόσο αυτά δεν είναι απαραίτητο να υπάρχουν για την ανάπτυξη οποιασδήποτε εφαρμογής, αλλά προσαρμόζονται ανάλογα με τις απαιτήσεις των προγραμματιστών ή των χρηστών. Επιπλέον ένας ολοκληρωμένος συνδυασμός αυτών μπορεί να οδηγήσει στην πλήρη διαμόρφωση όλων των φάσεων ανάπτυξης στον κύκλο ζωής του λογισμικού, από τον σχεδιασμό των προδιαγραφών μέχρι την τεκμηρίωση της εφαρμογής. Τέλος κάποια άλλα χαρακτηριστικά των εργαλείων αυτών είναι πως καταλαμβάνουν μικρό αποθηκευτικό χώρο στη μνήμη και μπορούν να ενσωματώνονται ή να συνδυάζονται με άλλα. Επίσης, πλέον υπάρχουν εργαλεία λογισμικού που καλύπτουν οποιαδήποτε ανάγκη ανάπτυξης λογισμικού. Στην παρούσα εφαρμογή γίνεται χρήση της γλώσσας προγραμματισμού PHP, της MySQL για την διαχείριση της βάσης δεδομένων, των CSS και HTML, Javascript καθώς και της πλατφόρμας ΧAMPP Control Panel.

9 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας 1.1 Xampp Control Panel Το ΧAMPP Control Panel είναι μια πλατφόρμα ελεύθερου λογισμικού που δημιουργήθηκε για την περαιτέρω προώθηση και ανάπτυξη του Apache Web Server. Η παρούσα πλατφόρμα περιέχει ένα τοπικό εξυπηρετητή διαδικτύου (web server) ο οποίος εγκαθίσταται τοπικά στον υπολογιστή του χρήστη και μπορεί να εξυπηρετήσει δυναμικές ιστοσελίδες. Επειδή πολλοί χρήστες δυσκολεύονται να εγκαταστήσουν μεμονωμένα στον ηλεκτρονικό τους υπολογιστή τον εξυπηρετητή διαδικτύου (web server) Apache όταν μάλιστα σε αυτόν πρόκειται να προστεθούν και επιπλέον λειτουργίες όπως η PHP και η MySQL, καταφεύγουν στο ΧAMPP Control Panel. ( Εκτός από την PHP, την MySQL περιέχει και την Perl και είναι πολύ εύκολο στη χρήση και στην εγκατάσταση κάτι που είναι ιδιαίτερα εύκολο καθώς η όλη διαδικασία εγκατάστασης γίνεται αυτόματα μέσα από ένα γραφικό περιβάλλον. Εικόνα 1: Πίνακας ελέγχουν του XAMPP για start/stop modules. Όπως βλέπουμε στην εικόνα 2.1. το XAMPP είναι ένα ολοκληρωμένο σύστημα που περιέχει Apache, MySQL, FileZila ftp, phpmyadmin, Perl, mercury mail server και υποστήριξη SSL όπου όλα αυτά διατίθενται με αυτοματοποιημένη εγκατάσταση και ρυθμίσεις. Στα πλαίσια της παρούσας εφαρμογής θα χρειαστούν η PHP, ο Apache και η MySQL. Σελίδα 9 από 72

10 Να σημειωθεί, πως όλα αυτά υπάρχουν ξεχωριστά στο διαδίκτυο και μπορεί ο καθένας να τα κατεβάσει δωρεάν, όμως η αυτόνομη εγκατάσταση είναι πιο χρονοβόρα και λίγο πιο πολύπλοκη και γι αυτό το λόγο επιλέχθηκε το XAMPP στην προκειμένη περίπτωση. ( Τα αρχικά του ονόματος προέρχονται από τα εξής, X: cross platform, δηλαδή ανεξάρτητη πλατφόρμα λογισμικού, Α από τον Apache HTTP server, Μ: MySQL, P: PHP, P: Perl, όπου για τα τρία πρώτα θα αναφερθούμε εκτενέστερα παρακάτω. Για την παρούσα πτυχιακή εργασία χρησιμοποιήθηκε η έκδοση XAMPP for Windows- win Η έκδοση αυτή επιπλέον περιλαμβάνει τα εξής: Apache MySQL PHP phpmyadmin FileZilla FTP Server Tomcat (with mod_proxy_ajp as connector) Strawberry Perl Portable XAMPP Control Panel (from hackattack142) Apache HTTP Server Η δουλειά ενός εξυπηρετητή διαδικτύου (web server) είναι βασικά να δέχεται αιτήσεις από τους πελάτες και να στέλνει απαντήσεις στις αιτήσεις αυτές. Ένας εξυπηρετητής διαδικτύου (web server) παίρνει ένα URL, αυτό μεταφράζεται σε ένα όνομα αρχείου (για στατικές αιτήσεις) και στέλνει το αρχείο πίσω μέσω του διαδικτύου από τον τοπικό δίσκο, ή μεταφράζεται σε ένα όνομα προγράμματος (για δυναμικές αιτήσεις), το εκτελεί και στη συνέχεια στέλνει το αποτέλεσμα αυτού του προγράμματος πίσω μέσω του διαδικτύου. Αν για οποιονδήποτε λόγω, ο εξυπηρετητής διαδικτύου (web server) δεν ήταν σε θέση να επεξεργαστεί και να συμπληρώσει την αίτηση, επιστρέφει ένα μήνυμα σφάλματος. ( Web browser Internet HTTP Αίτηση HI IP Απόκριση Web server * Web server filesystem Ανάκτηση αρχείων

11 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Εικόνα 2: Client-Server αρχιτεκτονική Ο Apache είναι ο δημοφιλέστερος εξυπηρετητής διαδικτύου (web server) που διατίθεται. Οι λόγοι που συμβαίνει αυτό, είναι οι εξής: Είναι δωρεάν για κατέβασμα και εγκατάσταση. Είναι open source: ο πηγαίος κώδικας είναι ορατός στον καθένα και οπουδήποτε, το οποίο ουσιαστικά επιτρέπει στον καθένα να "πειράξει τον κώδικα, να τον βελτιώσει και να διορθώσει τα λάθη και τα κενά ασφαλείας. Μπορούν ακόμη να προστεθούν νέα χαρακτηριστικά και να γραφούν νέα modules. Ταιριάζει σε όλες τις ανάγκες: Ο Apache μπορεί να χρησιμοποιηθεί για μικρές ιστοσελίδες που αποτελούνται από μια ή δύο σελίδες, ή για τεράστιες ιστοσελίδες με εκατοντάδες σελίδες, εξυπηρετώντας εκατομμύρια τακτικούς επισκέπτες κάθε μήνα. Φυσικά μπορεί να εξυπηρετήσει τόσο στατικό όσο και δυναμικό περιεχόμενο. Κύρια χαρακτηριστικά αυτού του εξυπηρετητή διαδικτύου (web server) τον καθιστούν στενό ανταγωνιστή με άλλους παρόμοιους εξυπηρετητές (server). Υπάρχει ενσωματωμετωμένη υποστήριξη για ένα ευρύ φάσμα γλωσσών προγραμματισμού όπως οι Perl, Python και PHP. Ο Apache περιλαμβάνει επίσης υποστήριξη SSL και TLS. Υπάρχει μεγάλη ποικιλία των λειτουργικών συστημάτων που υποστηρίζουν τον Apache και συγκεκριμένα τα UNIX, Windows NT, Mac OS. Άλλες συσκευές επεξεργασίας όπως η Intel 80 x 86 σε συνδυασμό με τα Windows και τα Linux ή Unix λειτουργικά συστήματα με οποιοδήποτε επεξεργαστή, μπορεί να υποστηρίξει εύκολα τον Apache. Ο πηγαίος κώδικας του Apache είναι ανοιχτός και αυτό έχει το πλεονέκτημα ότι τα σφάλματα ανακοινώνονται και διορθώνονται εύκολα. Αυτές οι διορθώσεις και λύσεις παρέχουν μεγάλη ασφάλεια και σταθερότητα. ( Ιστορική αναδρομή του Apache 2 Ο όμιλος Apache άρχισε να κάνει σχέδια για τον Apache 2.0 ήδη από το καλοκαίρι του 1996, λίγο μετά την κυκλοφορία του Apache Τον Ιούλιο του 1996 το θέμα 24 του Apache Week, κάλυψε τις πρώτες συζητήσεις για το multithreading. Ένα μήνα αργότερα, τον Αύγουστο του 1996, το θέμα 128 του Apache Week ασχολήθηκε με το πόσο χρήσιμο θα Σελίδα 11 από 72

12 ήταν το φιλτράρισμα και τους τρόπους υλοποίησης του. Τελικά, το φιλτράρισμα προστίθεται τέσσερα χρόνια αργότερα στον Apache 2.0, τον Αύγουστο του ( Τον Φεβρουάριο του 1997, η ομάδα Apache εξέτασε τα σχέδια για τον διακομιστή (server) μετά την κυκλοφορία της έκδοσης 1.2. Τα σχέδια περιελάμβαναν την επανεγγραφή ενός σημαντικού κομματιού κώδικα για την υποστήριξη του multithreading, των φίλτρων και τις αφαιρέσεις OS ώστε να επιτραπούν για εκδόσεις του Apache σε Windows NT και άλλα συστήματα. Η εβδομάδα 54 του Apache Week κάλυψε τα θέματα αυτά και προέβλεψε ότι ο Apache 2.0 είναι "πιθανό να πάρει κάποιο χρόνο. Τον Μάιο του 1997 η ομάδα αποφάσισε ότι οι εκδόσεις των Windows θα είναι έξω από την κύρια προσπάθεια ανάπτυξης του Apache. Ο στόχος για το 2.0 ήταν να διασφαλιστεί ότι ο ίδιος κώδικας χρησιμοποιείται για όλα τα συστήματα με ένα σύνολο από ρουτίνες συγκεκριμένης πλατφόρμας για τον χειρισμό οποιασδήποτε διαφοράς μεταξύ των λειτουργικών συστημάτων. Τον Ιούνιο, κυκλοφόρησε τελικά ο Apache 1.2 και άρχισαν οι εργασίες σχετικά με τις απαιτήσεις για τον ανασχεδιασμό του βασικού κώδικα του Apache. Στο θέμα 69 του Apache Week συζητήθηκε η ανάγκη για πρόσθετες φάσεις επεξεργασίας, και τα σχέδια για ένα γραφικό διαχειριστή διαμόρφωσης. ( Όλα τα σχέδια για Apache 2.0 συνοψίστηκαν το Φεβρουάριο του 1998, στο θέμα 102 του Apache week. Οι σημαντικότερες αλλαγές που συζητήθηκαν ήταν το multithreading, το φιλτράρισμα, τα νέα μοντέλα διαδικασίας, η καλύτερη διαμόρφωση του συστήματος, οι αλλαγές API καθώς και αλλαγές στην διαμόρφωση σύνταξης. Επίσης, δόθηκαν κάποιες σκέψεις για την επανεγγραφή του Apache σε C++, αλλά αυτή η ιδέα αργότερα απορρίφθηκε. Τον Ιούνιο του 1998 οι προγραμματιστές του βασικού κώδικα του Apache συναντήθηκαν για πρώτη φορά για να συζητήσουν την οργανωτική δομή του ομίλου Apache, καθώς και τα σχέδια για τον Apache 2.0. Το θέμα 121 του Apache Week καλύπτει αυτή τη συνάντηση. ( Πάνω από ένα χρόνο αργότερα, τον Σεπτέμβριο του 1999, επανεξετάστηκε η ανάπτυξη του κώδικα του Apache 2.0 σε ένα ιδιαίτερο χαρακτηριστικό, την "Προεπισκόπηση Apache 2.0. Σε αυτό το στάδιο αναμένεται ένα beta στα τέλη του 1999 ή στις αρχές του 2000.

13 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας PhpMyAdmin Το PhpMyAdmin αποτελεί ένα εργαλείο συγγραφής λογισμικού. Πιο συγκεκριμένα είναι ένα δωρεάν εργαλείο λογισμικού, το οποίο είναι γραμμένο σε γλώσσα php και το οποίο χρησιμοποιείται στη διαχείριση της MySQL μέσω του Παγκόσμιου Ιστού ή αλλιώς του World Wide Web. Επομένως, έχει σκοπό τη διαχείριση της βάσης δεδομένων, είναι δηλαδή ο ενδιάμεσος μεταξύ του χρήστη και της MySQL. Διαθέτει ένα πολύ φιλικό περιβάλλον χρήστη το οποίο επιτρέπει στον χρήστη να εκτελεί με ευκολία τις λειτουργίες διαχείρισης της βάσης δεδομένων. Να τονίσουμε ότι στις λειτουργίες τις οποίες είναι καθορισμένο να εκτελεί περιλαμβάνονται, γενικά η όλη διαχείριση των Βάσεων Δεδομένων από πλευράς δημιουργίας νέων, κατάργησης παλαιών ή επεξεργασίας υπαρχουσών. Επιπλέον διαθέτει καθορισμένες λειτουργίες εσωτερικής επεξεργασίας των βάσεων δεδομένων που αφορούν την δημιουργία πινάκων, στηλών, πεδίων και γενικά στη διαχείριση αυτών καθώς και στην επεξεργασία των δεδομένων από και προς αυτή. (Delisle M, 2010) Εικόνα 3: Το περιβάλλον της PhpMyAdmin Κάτι ακόμη σημαντικό είναι η δυνατότητα που δίνεται στους χρήστες για τον καθορισμό των δικαιωμάτων πρόσβασης, εισαγωγής, διαγραφής κ.α. Το συγκεκριμένο εργαλείο συγγραφής λογισμικού μεταφράζεται σε 68 γλώσσες και υποστηρίζει τόσο LTR όσο και RTL γλώσσες για την διευκόλυνση των χρηστών του. Σελίδα 13 από 72

14 Το εργαλείο αυτό ουσιαστικά αποτελεί μια web εφαρμογή που περιέχει XHTML, CSS και Javascript. Το έργο αυτό φιλοξενείται από την SourceForge.net ενώ αποτελεί εργασία και δημιούργημα των Oliver Muller, Marc Delisle και Loic ενώ ο εμπνευστής της ιδέας μιας εφαρμογής για τον σκοπό αυτό υπήρξε ο Tobias Ratschiller, αργότερα ιδρυτής του λογισμικού Maguma, που λόγω φόρτου εργασίας το ανέθεσε στους τρεις προαναφερθέντες. Η πρώτη σταθερή έκδοση ήταν η και κυκλοφόρησε το 2001 ελεύθερη, έκτοτε και μέχρι σήμερα έχουν κυκλοφορήσει σε μικρό χρονικό διάστημα άλλες τρεις εκδόσεις. (Delisle M, 2010) Κάποια από τα χαρακτηριστικά της PhpMyAdmin είναι η φιλικότητα προς τους χρήστες μέσω κατάλληλου γραφικού περιβάλλοντος. Υποστηρίζει σχεδόν όλες τις λειτουργίες της MySQL. Επιτρέπει την εισαγωγή δεδομένων τύπου CSV και SQL καθώς και την εξαγωγή δεδομένων υπό μορφές CSV, SQL, PDF, TEXT διαφόρων τύπων φύλλων λογισμικού ή κειμενογράφων όπως το Word, το LATEΧ και άλλα. Επίσης έχει ενσωματωμένα ένα σύνολο προκαθορισμένων λειτουργιών όπως την εμφάνιση BLOCK- DOCUMENT με τη μορφή εικόνας τα οποία αν είναι αποθηκευμένα μπορεί να τα μετατρέψει σε οποιαδήποτε άλλη μορφή. Τέλος, η έκδοση του PhpMyAdmin που χρησιμοποιήθηκε για την παρούσα εργασία περιλαμβάνει επιπλέον νέες μονάδες εισαγωγής και εξαγωγής, σύστημα παρακολούθησης των αλλαγών, συγχρονισμό και υποστήριξη για την διαμόρφωση και την ενημέρωση νέων εκδόσεων. Ακόμη διαθέτει Ajaxification ορισμένων τμημάτων, περισσότερα διαγράμματα με ευκολίες οπτικής απεικόνισης ερωτημάτων καθώς και των σχέσεων μεταξύ των πινάκων όπως και τις επιλογές για τη διαχείριση των τύπων των πεδίων ENUM και SET. (Delisle M, 2010) 1.2 Γλώσσες σήμανσης Οι γλώσσες σήμανσης αποτελούν τον τρόπο με τον οποίο οι web browsers αποκωδικοποιούν τις ιστοσελίδες στο web. Δεν μιλάμε για γλώσσες προγραμματισμού αφού δεν έχουν όλα εκείνα τα απαραίτητα στοιχεία για να χαρακτηριστούν έτσι π.χ δεν μπορεί να γίνει ανάθεση εντολών. Μια γλώσσα σήμανσης είναι ένα σύγχρονο σύστημα σχολιασμού κειμένου. Η ιδέα και η ορολογία εξελίχθηκε από τον τρόπο που παραδοσιακά κρατάμε σημειώσεις σε ένα χαρτί. Λέξεις εμπεριέχονται μέσα σε ετικέτες οι οποίες ονομάζονται tags. Αυτές οι ετικέτες δεν εμφανίζονται στον τελικό χρήστη αλλά δίνουν σημαντικές πληροφορίες στον browser για το πως θα εμφανίσει ένα κείμενο. Μια ευρέως

15 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας χρησιμοποιούμενη γλώσσα σήμανσης είναι η HTML στην οποία θα αναφερθούμε αναλυτικότερα παρακάτω. Υπάρχουν τρεις κατηγορίες γλωσσών σήμανσης. Η Presentational markup, η Procedural markup, και η Descriptive markup. Το πρώτο είδος χρησιμοποιείται παραδοσιακά για την επεξεργασία κειμένου από το σύστημα. Δυαδικοί κώδικες ενσωματωμένοι σε έγγραφα κειμένου παράγουν το αποτέλεσμα WYSIWYG (What You See Is What You Get Η procedural markup είναι ενσωματωμένη σε κείμενο και παρέχει οδηγίες σε προγράμματα που πρόκειται να επεξεργαστούν. Γνωστά παραδείγματα είναι τα LaTex, troff και PostScript. Ο επεξεργαστής τρέχει μέσα από το κείμενο από την αρχή μέχρι το τέλος ακολουθώντας τις οδηγίες που είναι γραμμένες σε procedural markup language HTML και HTML 5 Η HTML5 είναι μια υπό ανάπτυξη γλώσσα markup για τον Παγκόσμιο Ιστό που όταν ετοιμαστεί θα είναι η επόμενη μεγάλη έκδοση της HTML. Η Hypertext Application Technology Working Group (WHATWG) ξεκίνησε να εργάζεται πάνω σε αυτήν την έκδοση τον Ιούνιο του 2004 με το κωδικό όνομα Web Applications 1.0.Τον Φεβρουάριο του 2010 το πρότυπο βρισκόταν ακόμα σε επίπεδο LastCall. Με τον ερχομό της HTML 5 θα αντικατασταθούν οι HTML 4.01, XHTML 1.0 και Do M Level 2 HTML. (Julie C., 2010) Πρωταρχικός ρόλος της HTML 5 είναι η μείωση της ανάγκης για ιδιόκτητα plug - in και διαδικτυακές εφαρμογές όπως το Adobe Flash, το Microsoft Silverlight, το Apache Pivot, και η Sun JavaFX. Η HTML5 περιέχει το πρότυπο WebForms 2.0 που είναι επίσης της WHATWG ενώ οι συντάκτες της είναι ο Ίαν Χίκσον της εταιρίας Google και ο Ντέιβ Χίατ της εταιρίας Apple. Βασικοί κανόνες που έχουν οριστεί για την HTML5 είναι: Βάση για τα νέα χαρακτηριστικά να είναι οι HTML, CSS, DOM, και η JavaScript, Ελαχιστοποίηση των plug-ins Καλύτερη λειτουργία εντοπισμού λαθών Περισσότερο markup για να αντικατασταθεί το scripting, και Πλήρη συμβατότητα ανεξαρτήτως συσκευής. Νέα χαρακτηριστικά της είναι: Το στοιχείο canvas για το drawing Τα στοιχεία video και audio για αναπαραγωγή πολυμέσων Νέα στοιχεία περιεχομένου όπως τα footer, header, nav και section και Νέα στοιχεία δημιουργίας φόρμας όπως τα calendar, date, time, , url και search. Σελίδα 15 από 72

16 Συνοψίζοντας λοιπόν σε πρώτο στάδιο, η καινούργια έκδοση της HTML έχει φτιαχτεί έτσι ώστε να βοηθήσει τους developers να χτίσουν καλύτερες και πιο δομημένες web εφαρμογές και όχι μόνο έγγραφα, ενώ η δύναμη της πηγάζει κυρίως από τις προσθήκες API και τεχνολογιών που προσφέρουν ελευθερία και έλεγχο στους developers, και όχι τόσο από τα νέα tags, τα οποία είναι και το ευκολότερο μέρος εκμάθησης της νέας markup. (Mike Wooldridge, 2008) CSS και CSS3 Τα CSS (Cascading Style Sheets) είναι ένα είδος αρχείων που χρησιμεύουν στην διαμόρφωση μιας ιστοσελίδας. Περιέχουν οδηγίες σχετικά με το στυλ του κειμένου, το χρώμα του, την θέση του κλπ, μέσα σε μια σελίδα. Χρησιμοποιώντας τα CSS μπορούμε πολύ πιο εύκολα και γρήγορα να πειράξουμε την εμφάνιση μιας ιστοσελίδας και να διαλέξουμε την καλύτερη. Η βασική ιδέα τους είναι ότι χωρίζουμε την ιστοσελίδα σε «περιοχές» που έχουν κάποιο όνομα. Σε κάθε τέτοια περιοχή δίνουμε και μία ιδιότητα και ρυθμίζουμε κάποιες παραμέτρους της που ισχύουν μόνο για αυτή την περιοχή. Στην ίδια την σελίδα τώρα χρησιμοποιούμε tags που δηλώνουν ότι κάποιο κομμάτι ανήκει σε κάποια περιοχή και αυτό εμφανίζεται με τον κατάλληλο τρόπο. (Julie C., 2010) Τα πλεονεκτήματα της CSS συνοπτικά είναι: Ελαχιστοποίηση χρόνου φόρτωσης μιας σελίδας, αφού μικραίνει το μέγεθος των αρχείων μιας σελίδας. Ελαχιστοποίηση χρόνου γραφής κώδικα. Προσβασιμότητα από όλους τους φυλλομετρητές - περιηγητές - web browsers (π.χ. Explorer). Είναι πιστοποιημένο από το W3C, τον μεγαλύτερο οργανισμό Web Standards παγκοσμίως. 5. Ομοιόμορφη εμφάνιση όλων των σελίδων μιας ιστοσελίδας, αφού συνδέονται με το ίδιο αρχείο CSS. Είναι SEO friendly(search engine optimization). Οι μηχανές αναζήτησης δεν «μπερδεύονται» ανάμεσα στο περιεχόμενο και τη μορφοποίηση του, αλλά έχουν πρόσβαση στο περιεχόμενο σκέτο, οπότε είναι πολύ ευκολότερο να το καταγράψουν και να το αρχειοθετήσουν. Η CSS είναι σχετικά πολύ εύκολη γλώσσα στην εκμάθησή της. Η τελευταία αναθεώρηση ήταν πρόσφατη με την έκδοση CSS 3 που υποστηρίζεται από όλους τους σύγχρονους περιηγητές διαδικτύου (Browsers). (Mike Wooldridge, 2008) Δομή CSS

17 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Ένας κανόνας έχει το ίδιο όνομα με την ετικέτα HTML που θα εφαρμοστεί. Οι εντολές του κανόνα που θα εφαρμοστούν τοποθετούνται σε ένα μπλοκ που αρχίζει με τον χαρακτήρα "{ και τελειώνει με "}. Κάθε κανόνας αποτελείται από δύο τμήματα, τον επιλογέα και τους ορισμούς. (Julie C., 2010) Μπορούμε να ορίσουμε γενικούς κανόνες, που σημαίνει ότι οι εντολές του θα εφαρμοστούν σε όλες τις ετικέτες HTML που έχουν ίδιο όνομα με τον επιλογέα. Ένας τέτοιος κανόνας έχει την εξής μορφή: επιλογέας { ιδιότηταί: τιμή; ιδιότητα2: τιμή; } ιδιότητα-ν: τιμή; Οι εντολές αυτού του κανόνα εφαρμόζονται αυτόματα στις ετικέτες όταν συμπεριλαμβάνεται η ετικέτα <link rel="stylesheet" type="text/css" href= "αρχείο-css "> στην επικεφαλίδα. Μπορούμε να ορίσουμε κανόνες ειδικά για μια συγκεκριμένη ετικέτα. Αυτό επιτυγχάνεται με τη χρήση των κλάσεων. Η δομή ενός τέτοιου κανόνα είναι ως εξής: επιλογέας.όνομακλάσης { ιδιότητα1: τιμή; ιδιότητα2: τιμή; ιδιότητα-ν: τιμή; } Για να εφαρμόζονται οι εντολές αυτού του κανόνα στις ετικέτες πρέπει να χρησιμοποιηθεί η dass= όνομα_κλάσης σαν ιδιότητα στις ετικέτες. Με τον Σελίδα 17 από 72

18 τρόπο αυτό έχουμε τη δυνατότητα να εφαρμόζουμε τις μορφοποιήσεις μόνο στις ετικέτες που θέλουμε. (Mike Wooldridge, 2008) Μπορούμε να ορίσουμε κανόνες που θα εφαρμόζονται σε μια μόνο ετικέτα στην ιστοσελίδα. Ο κανόνας αυτός χρησιμοποιεί την ιδιότητα id, που είναι μοναδική για κάθε ετικέτα και εφαρμόζει τις εντολές μόνο στην ετικέτα που έχει σαν id τον επιλογέα. Η δομή ενός τέτοιου κανόνα είναι ως εξής: επιλογέας#'^_ετικέτας { ιδιότηταί: τιμή; ιδιότητα2: τιμή; ιδιότητα-ν: τιμή; } Μπορούμε να ορίσουμε κανόνες που εφαρμόζονται σε ορισμένα στοιχεία της σελίδας με τις ψευδοκλάσεις. Η δομή ενός τέτοιου κανόνα είναι ως εξής: επιλογέαςψευδοκλάση { ιδιότηταί: τιμή; ιδιότητα2: τιμή; } ιδιότητα-ν: τιμή; Γενικά η δημιουργία μιας εφαρμογής στο διαδίκτυο περιλαμβάνει πολλές σελίδες παρακάτω δίνουμε μια μικρή περιγραφή των διαφόρων όρων που χρησιμοποιούνται και θα μας είναι χρήσιμη στην δημιουργία της εφαρμογής μας. (Julie C., 2010) 1.3 PHP και JavaScript Ο προγραμματισμός από την πλευρά του εξυπηρετητή (server side scripting) αφορά μια Web Server τεχνολογία κατά την οποία η αίτηση ενός χρήστη πραγματοποιείται με ένα κώδικα, που τρέχει απευθείας στον εξυπηρετητή διαδικτύου (web server) και παράγει δυναμικά HTML ή άλλα αρχεία. Γενικά τα server-side scripts μπορούν να κάνουν τα παρακάτω: Να τροποποιήσουν δυναμικά το περιεχόμενο της σελίδας Να απαντήσουν σε ερωτήματα και δεδομένα χρηστών μέσα από φόρμες HTML

19 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Να δίνουν πρόσβαση σε δεδομένα και βάσεις δεδομένων και να τα επιστρέφουν στον φυλλομετρητή (browser). Η PHP είναι μια γλώσσα προγραμματισμού για την δημιουργία σελίδων web με δυναμικό περιεχόμενο. Μια σελίδα PHP περνά από επεξεργασία από ένα συμβατό εξυπηρετητή (server) του Παγκόσμιου Ιστού (π.χ. Apache), ώστε να παραχθεί σε πραγματικό χρόνο το τελικό περιεχόμενο, που θα σταλεί στον φυλλομετρητή (browser) των επισκεπτών σε μορφή κώδικα HTML. (Huches S., 2002) Πλεονεκτήματα της PHP Στην παρούσα εφαρμογή χρησιμοποιήθηκε η γλώσσα προγραμματισμού PHP, η επιλογή της οποίας βασίστηκε στα πλεονεκτήματα που παρουσιάζει, τα οποία μπορούν να συνοψιστούν στα εξής: Κόστος. Η PHP είναι γλώσσα ανοιχτού κώδικα που σημαίνει ότι ο πηγαίος κώδικας είναι διαθέσιμο προς όλους για χρήση, για τροποποίηση και αναδιανομή χωρίς κάποιο κόστος. Διαθεσιμότητα πηγαίου κώδικα. Αντίθετα με τα εμπορικά κλειστού κώδικα προϊόντα, ο ανοιχτός διαθέσιμος κώδικας της PHP προσφέρει την δυνατότητα τροποποίησης του. Έτσι, μπορεί να γίνει οποιαδήποτε διόρθωση ή αναβάθμιση από τον χρήστη ή από κάποια ομάδα ανεξάρτητων χρηστών, χωρίς εξάρτηση από κάποια εταιρία. Υποστήριξη. Η Zend, η εταιρία που υποστηρίζει την PHP, χρηματοδοτεί την ανάπτυξη της, προσφέροντας υποστήριξη και σχετικό λογισμικό σε εμπορική βάση. Απόδοση. Η PHP είναι πολύ αποδοτική. Με ένα φτηνό εξυπηρετητή (server) μπορούν να εξυπηρετηθούν εκατομμύρια επισκέψεις σε ημερήσια βάση. Η PHP είναι διαθέσιμη σε πολλά λειτουργικά συστήματα και συνήθως ο κώδικας δουλεύει χωρίς αλλαγές σε διαφορετικά λειτουργικά συστήματα που τρέχουν την PHP. Παραδείγματα λειτουργικών συστημάτων στα οποία τρέχει η PHP είναι τα Windows, Linux, Unix, Solaris, FreeBSD, IRIX. Διασύνδεση με πολλά διαφορετικά συστήματα βάσεων δεδομένων. Η PHP έχει δικές της συνδέσεις με πολλά συστήματα βάσεων δεδομένων όπως: MySQL, PostgreSQL, msql, Oracle, dbm, filepro, Hyperwave, Informix, InderBase, Sybase και άλλες. Έχει επίσης ενσωματωμένη SQL διασύνδεσης στο επίπεδο αρχείο Σελίδα 19 από 72

20 SQLite. Με την χρήση του standard ODBC μπορεί να συνδεθεί σε οποιαδήποτε βάση έχει πρόγραμμα οδήγησης ODBC (όπως τα προϊόντα της Microsoft). Ενσωματωμένες Βιβλιοθήκες. Η PHP έχει πολλές ενσωματωμένες βιβλιοθήκες που εκτελούν πολλές χρήσιμες λειτουργίες. Δυναμική δημιουργία εικόνων GIF, σύνδεση με άλλες υπηρεσίες δικτύων, ανάλυση XML, αποστολή , δημιουργία εγγράφων pdf. Ευκολία εκμάθησης. Η σύνταξη της PHP βασίζεται σε άλλες γλώσσες προγραμματισμού, κυρίως στην C και στην Perl. Οι γνωστές μας γλώσσες προγραμματισμού της οικογένειας C επιτρέπουν σε κάποιον να ξεκινήσει αμέσως τον προγραμματισμό στην PHP. Αντικειμενοστραφής υποστήριξη. Στην PHP υπάρχουν οι γνωστές από την C++ και την Java αντικειμενοστραφείς λειτουργίες όπως η κληρονομικότητα, οι ιδιωτικές και προστατευμένες ιδιότητες και μέθοδοι, οι αφηρημένες κλάσεις και μέθοδοι, οι διασυνδέσεις, οι συναρτήσεις δημιουργίας. Επίσης, υπάρχουν και άλλες λιγότερο δημοφιλείς λειτουργίες. (Gutmans A., 2004) Λειτουργικά Χαρακτηριστικά της PHP Η PHP είναι στην ουσία μια γλώσσα script (συμβάντων) και όχι γλώσσα προγραμματισμού. Αυτό σημαίνει ότι είναι σχεδιασμένη για να εκτελεί μια ενέργεια μετά από κάποιο συμβάν, όπως για παράδειγμα αν ο χρήστης πατήσει κάποιο link στην ιστοσελίδα. Επιπλέον η PHP λειτουργεί στην πλευρά του εξυπηρετητή (server), δηλαδή εγκαθίσταται στον εξυπηρετητή (server) και τα script που είναι γραμμένα σε αυτή χρησιμοποιούν πόρους από τον υπολογιστή - server για την εκτέλεση τους και τα αποτελέσματα της εκτέλεσης στέλνονται στον client σε μορφή html. Αυτός είναι και ο λόγος που η PHP δεν μπορεί να χρησιμοποιηθεί για αναδυόμενα μενού, άνοιγμα νέων παραθύρων, προσθήκη εφέ και ενεργειών με τη μετακίνηση του ποντικιού. Αντίθετα, αυτά μπορούν να γίνουν με άλλες γλώσσες script που χρησιμοποιούν τεχνολογία πελάτη (όπως η Javascript). Επιπλέον ο κώδικας της PHP παρεμβάλλεται σε κώδικα html (με κατάλληλη σήμανση στην αρχή και στο τέλος του κώδικα PHP). Ο κώδικας της PHP δεν εκτελείται αυτόνομα αλλά ταυτόχρονα (γραμμή προς γραμμή) με τον κώδικα της html. (Huches S., 2002) Η συγγραφή του κώδικα PHP είναι σχετικά εύκολη υπόθεση. Γράφεται ταυτόχρονα με τον html κώδικα και ενσωματώνεται σε αυτόν. Ο κώδικας της PHP ξεχωρίζει από την html με τα κατάλληλα tags έναρξης - τερματισμού τα οποία εξαρτώνται από τις ρυθμίσεις που έχουν γίνει στην

21 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας εγκατάσταση της PHP (συνήθως το tag έναρξης είναι <?php και του τερματισμού?>). Τα αρχεία που περιέχουν php scripts πρέπει να αποθηκευτούν με κατάλληλη κατάληξη (*. php). (Chen W., 2006) Όταν ενσωματωθεί κώδικας PHP σε μια ιστοσελίδα, εκτελούνται οι παρακάτω διαδικασίες: Ο επισκέπτης ζητάει μια ιστοσελίδα με την διεύθυνση της με την βοήθεια του φυλλομετρητή (browser). Ο φυλλομετρητής (browser) μεταβιβάζει την αίτηση στον εξυπηρετητή (server) που στην περίπτωση μας είναι ο Apache. Τότε η PHP επεξεργάζεται το αρχείο που αφορά την αίτητη στον Apache και εκτελεί το μέρος του κώδικα που την αφορά (βρίσκεται μέσα σε tags). Η PHP επιστρέφει τα αποτελέσματα σε μορφή html. Ο κώδικας html επιστρέφεται στον φυλλομετρητή (browser) του πελάτη. (Chen W., 2006) Η διαδικασία της συγγραφής του κώδικα PHP μπορεί να γίνει με έναν απλό text editor (όπως και στην HTML). Αυτή η μέθοδος προσφέρει τη μέγιστη εποπτεία του κώδικα στον προγραμματιστή αλλά είναι χρονοβόρα διαδικασία και επίπονη. Για την αντιμετώπιση των προβλημάτων αυτών μπορεί να γίνει χρήση κάποιων από τα πολλά εργαλεία που υπάρχουν, πολλά από τα οποία είναι ανοιχτού κώδικα (open source). Τα εργαλεία αυτά συνήθως προσφέρουν έτοιμε κάποιες δομές ή προσθέτουν κάποια χαρακτηριστικά στις σελίδες με ένα απλό κλικ. Οι δομές αυτές μπορεί να είναι αρκετές γραμμές κώδικα που θα απαιτούσε χρόνο για να γραφτεί με το χέρι. Όμως σε καμία περίπτωση δεν μπορούν να αντικαταστήσουν την δύναμη που προσφέρει η συγγραφή κώδικα με το χέρι. Δεν μπορεί ο προγραμματιστής να επαναπαυθεί στο ότι θα εισάγει μια δομή στον κώδικα του με ένα απλό κλικ. Έτσι είναι σύνηθες μετά την προσθήκη μιας δομής με αυτόν τον τρόπο να απαιτείται "χειροκίνητη παρέμβαση στον κώδικα. (Gutmans A., 2004) JavaScript Η JavaScript είναι μια γλώσσα script (συμβάντων) η οποία σχεδιάστηκε ειδικά για να δουλεύει με το World Wide Web. Έχει σαν σκοπό την παραγωγή δυναμικού περιεχομένου και την εκτέλεση Σελίδα 21 από 72

22 κώδικα από την πλευρά του πελάτη (client side scripting) σε ιστοσελίδες. Έχει παρόμοια σύνταξη με την C, όπως η PHP, αλλά η εκτέλεση του κώδικα της JavaScript δεν γίνεται από τον εξυπηρετητή (server), όπως η PHP, αλλά από τον φυλλομετρητή (browser) ιστοσελίδας. Με την JavaScript μπορούν να δημιουργηθούν σενάρια που να εκτελούν αυτόματες εργασίες, π.χ. όταν ανοίγει μια ιστοσελίδα. Επίσης μπορεί να εκτελεί ενέργειες ανταποκρινόμενη σε ένα συγκεκριμένο γεγονός, όπως όταν εστιάζει σε ένα πεδίο μιας φόρμας. Μπορούν να δημιουργηθούν σενάρια με πιο σύνθετες και πολύπλοκες εργασίες, όπως ο έλεγχος μιας φόρμας που υποβάλει ένας χρήστης και στη συνέχεια να προειδοποιεί τον χρήστη σε περίπτωση σφάλματος. Ένα αρχείο που περιέχει κώδικα JavaScript έχει την κατάληξη *.js. Μπορεί επίσης, όπως και η PHP, να ενσωματωθεί σε ένα αρχείο HTML αρκεί να περικλείεται από τις ετικέτες <script language= JavaScript > και </script>. 1.4 MySQL Η MySQL είναι ένα, ανοιχτού κώδικα (open source), σύστημα διαχείρισης σχεσιακών βάσεων δεδομένων. Το σύστημα διαχείρισης MySQL λοιπόν, δίνει την δυνατότητα της αποθήκευσης, αναζήτησης, ταξινόμησης, ομαδοποίησης και ανάκλησης δεδομένων με βάση την γλώσσα ερωτημάτων SQL. Το γεγονός ότι η MySQL είναι σχεσιακή συνεπάγεται ότι η οργάνωση των δεδομένων γίνεται σε διαφορετικούς πίνακες οι οποίοι σχετίζονται μεταξύ τους με κάποιο συγκεκριμένο τρόπο. Η MySQL επιπλέον μπορεί να ελέγχει την πρόσβαση στα δεδομένα, εξασφαλίζοντας έτσι την δυνατότητα η πρόσβαση να γίνεται από διαφορετικούς χρήστες. Κάθε χρήστης έχει συγκεκριμένα δικαιώματα πάνω στις βάσεις δεδομένων τα οποία του τα δίνει η MySQL. (Jeffery D., 1997), (Meloni J.C., 2009) Πλεονεκτήματα της MySQL Παρακάτω παρατίθενται μερικά από τα πλεονεκτήματα της MySQL που την καθιστούν ανταγωνιστική έναντι άλλων πακέτων διαχείρισης βάσεων δεδομένων. Τα βασικά πλεονεκτήματα της είναι:

23 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Απόδοση. Η MySQL είναι αρκετά γρήγορη. Πολλές δοκιμές που έχουν γίνει δείχνουν ότι υπερέχει σε ταχύτητα έναντι των ανταγωνιστών της. Κόστος. Η MySQL είναι ανοιχτού κώδικα (open source) και διατίθεται δωρεάν για προσωπική χρήση. Η εμπορική άδεια της διατίθεται σε χαμηλό κόστος. Αυτό σημαίνει ότι αν κα'ποιος θέλει να την χρησιμοποιήσει για εφαρμογές προσωπικής χρήσης ή για εφαρμογές που θα είναι ανοιχτού κώδικα δεν χρειάζεται να αγοράσει κάποια άδεια. Άδεια απαιτείται αν κάποιος τη χρησιμοποιήσει για εμπορικές εφαρμογές που δεν θα είναι ανοιχτού κώδικα. Ευκολία χρήσης. Η MySQL είναι αρκετά εύκολη στην εκμάθηση της, ακόμα και για κάποιον που δεν έχει ξαναχρησιμοποιήσει παρόμοια προϊόντα κατασκευής βάσεων δεδομένων. Η MySQL μπορεί να χρησιμοποιηθεί σε πολλά σύγχρονα λειτουργικά συστήματα. Είναι συμβατή με πολλές εκδόσεις των Microsoft Windows και με λειτουργικά Unix, όπως και με τις διάφορες εκδόσεις του δημοφιλούς λειτουργικού ανοιχτού κώδικα Linux. Πηγαίος κώδικας. Η MySQL ανήκει στην οικογένεια του λογισμικού ανοιχτού κώδικα, όπως αναφέρθηκε προηγουμένως. Συνεπώς, ο καθένας μπορεί να αποκτήσει και να τροποποιήσει τον πηγαίο κώδικα της, προσαρμόζοντάς τον στις ανάγκες του ή διορθώνοντας τυχόν bugs. Επιπλέον το γεγονός ότι είναι διαθέσιμος ο πηγαίος κώδικας βοηθάει στη συνεχή ανανέωση και διόρθωση της MySQL αφού εκατομμύρια άνθρωποι σε όλο τον κόσμο εργάζονται πάνω σε αυτή. Έτσι δεν χρειάζεται κάποιος να περιμένει μια νέα επίσημη έκδοση κάποιας εταιρίας για την διόρθωση ενός bug, αφού αυτό γίνεται πολύ γρήγορα από τους χρήστες της. Επιπλέον δεν χρειάζεται να ανησυχεί κάποιος για την μελλοντική υποστήριξη της και τη συνέχιση λειτουργίας της σε μελλοντικές συνθήκες. Υποστήριξη. Στη σελίδα υπάρχει μια τεράστια υποστήριξη πάνω στη MySQL με manual, tutorial, βοήθεια σε πιθανά προβλήματα. (Μανωλόπουλος Ι., 2006) Σχεδιασμός Αποδοτικών Βάσεων Δεδομένων Σελίδα 23 από 72

24 Οι σχεσιακές βάσεις δεδομένων αποτελούν ένα πολύτιμο εργαλείο στη διάθεση του προγραμματιστή. Πολλά σύγχρονα προβλήματα απαιτούν λύσεις μέσω λογισμικού το οποίο θα κάνει χρήση κάποιας βάσης δεδομένων. Ένα μεγάλο ζητούμενο σε αυτές τι περιπτώσεις είναι να γίνει ο καλύτερος και αποδοτικότερος δυνατός σχεδιασμός της απαιτούμενης βάσης δεδομένων. Αυτή η διαδικασία όμως δεν είναι καθόλου εύκολη. Δεν είναι εύκολη γιατί είναι πολλές οι παράμετροι που πρέπει να συμψηφιστούν ώστε να παραχθεί η βέλτιστη βάση δεδομένων που θα πληροί τις προδιαγραφές και τις απαιτήσεις. (Η. θ8γθΐ8-ηοιίπ8, 2002) Ο προγραμματιστής πρέπει να αποφασίσει ποιους πίνακες θα δημιουργήσει, τα πεδία του κάθε πίνακα, τις επιτρεπτές τιμές που πρέπει να αποθηκεύσει στο κάθε πεδίο, τις σχέσεις μεταξύ πινάκων, τα κλειδιά του κάθε πίνακα, τα ευρετήρια. Όλες αυτές οι παράμετροι είναι σχετιζόμενες μεταξύ τους. Συνεπώς αλλάζοντας τη μια από αυτές απαιτείται αυτόματος επαναπροσδιορισμός όλων των υπόλοιπων. (ΜθΙοπΙ ϋ.ο., 2009) Ξεκινώντας λοιπόν κάποιος να σχεδιάσει μια βάση δεδομένων θα πρέπει να έχει στο νου του κάποιες βασικές αρχές: Πρέπει να αποφεύγεται η αποθήκευση επαναλαμβανόμενων δεδομένων. Η επαναλαμβανόμενη αποθήκευση δεδομένων έχει το μειονέκτημα της σπατάλης χώρου όπως και το μειονέκτημα της πιθανότητας λανθασμένων ενημερώσεων στης βάσης δεδομένων. Ένα λάθος ενημέρωσης μπορεί να συμβεί σε μια τέτοια περίπτωση επειδή η ίδια αλλαγή πρέπει να συμβαίνει ταυτόχρονα σε περισσότερους του ενός πίνακες, σε περισσότερα του ενός πεδία. Προτιμώνται οι ατομικές στήλες, δηλαδή κάθε πεδίο είναι προτιμότερο να περιέχει μόνο ένα πράγμα. Η αποθήκευση περισσότερων πραγμάτων στα πεδία μιας στήλης δημιουργεί προβλήματα αναζήτησης. Επιλογή μοναδικών κλειδιών και ταυτόχρονα αποφυγή δημιουργίας πλεοναζόντων κλειδιών. Σε κάθε πίνακα πρέπει να υπάρχει ένα κλειδί - στήλη που θα είναι μοναδικό για κάθε εγγραφή, ώστε να είναι δυνατή η αναφορά στις εγγραφές με σύντομο και μονοσήμαντο τρόπο. Ταυτόχρονα πρέπει να αποφεύγεται η χρήση περισσότερων κλειδιών από αυτά που πραγματικά απαιτούνται. Καλό είναι να αποφεύγεται ο σχεδιασμός των βάσεων δεδομένων με τρόπο που να μένουν πολλά πεδία κενά. Αυτό αποτελεί

25 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας σπατάλη χώρου και δημιουργούνται προβλήματα με συναρτήσεις όταν ζητούν δεδομένα από κενά αριθμητικά πεδία. Καλό είναι πριν τον σχεδιασμό της βάσης δεδομένων να υπάρχει πρόβλεψη των ερωτημάτων που θα γίνονται σε αυτή. Έτσι θα επιτευχθεί ένας σχεδιασμός που θα δίνει πιο γρήγορα και εύκολα τα αποτελέσματα των ερωτημάτων. (Η. θ8γθΐ8-ηοιίπ8, 2002) Συμπεράσματα Συνοψίζοντας το κεφάλαιο περί των εργαλείων ανάπτυξης λογισμικού αξίζει να τονίσουμε πως αποτελούν μέρος της υλοποίησης της εφαρμογής και λόγω των χαρακτηριστικών και των ιδιαιτεροτήτων τους κρίθηκε σκόπιμο να αναφερθούν πριν από την διαδικασία επεξήγησης της δημιουργίας της εφαρμογής. Με αυτόν τον τρόπο υπάρχει διασαφήνιση των όρων και των εννοιών κατά την υλοποίηση. Έτσι λοιπόν, τα εργαλεία λογισμικού είναι ουσιαστικά εφαρμογές γραμμένες σε κάποια γλώσσα προγραμματισμού και επιτρέπουν στους προγραμματιστές και στους χρήστες τη συγγραφή κώδικα, τον χειρισμό συστημάτων υλικού και λογισμικού και την διαχείριση των βάσεων δεδομένων. Αυτά συνήθως αποτελούν πακέτα από συνθέσεις διαφόρων τμημάτων, δηλαδή έχουν κάποιο κειμενογράφο, ένα φιλικό user interface, κάποιο μεταγλωττιστή και ένα τελευταίο μέρος όπου γίνεται η εμφάνιση των αποτελεσμάτων. Σελίδα 25 από 72

26 Πιο συγκεκριμένα, χρησιμοποιήθηκε ο Apache http web server ο οποίος έχει συμβάλει δυναμικά στην ανάπτυξη του Παγκόσμιου Ιστού καθώς είναι εξαιρετικά αποτελεσματικός και ασφαλής και προσφέρεται δωρεάν. Έχει πολλά πλεονεκτήματα, ένα μέρος των οποίων αναλύθηκε παραπάνω και τα οποία τον καθιστούν ιδιαίτερα ανταγωνιστικό. Υπάρχει δυνατότητα ακόμη μεγαλύτερης εξέλιξης χωρίς αυτό να σημαίνει πως δεν καλύπτει αξιοπρεπέστατα τις ανάγκες της σημερινής πραγματικότητας. Η MySQL για την δημιουργία και διαχείριση της βάσης δεδομένων. Πρόκειται για μια ανοιχτού κώδικα βάση δεδομένων η οποία παρέχει υψηλές αποδόσεις, αξιοπιστία και ευκολίες στον χρήστη. Τρέχει σε πάνω από 20 πλατφόρμες λειτουργικών συστημάτων και περιέχει ενσωματωμένο ένα πλήρες και τεκμηριωμένο πακέτο χειρισμού. Η γλώσσα PHP που χρησιμοποιήθηκε για τη συγγραφή του κώδικα ήταν ένα πρόγραμμα γραμμένο σε Perl ενώ τρία χρόνια αργότερα οι προγραμματιστές της Zend την ξανά έγραψαν σε γλώσσα C και πήρε την σημερινή της μορφή. Είναι και αυτή open source και αποτελεί την ταχύτερη γλώσσα για διαδικτυακές εφαρμογές. Το Xampp Control Panel είναι μια πλατφόρμα ελεύθερου λογισμικού η οποία ενσωματώνει ένα πακέτο από τον Apache, τη MySQL, διερμηνείς και scripts PHP, Perl και Filezila. Σκοπό έχει την καλύτερη εξυπηρέτηση των χρηστών της μέσω του PhpMyAdmin και του SQLite, ενώ η εγκατάσταση της γίνεται αυτόματα απαλλάσσοντας έτσι τους χρήστες από διάφορες ρυθμίσεις που είναι απαιτητικές με την αυτόνομη εγκατάσταση των παραπάνω εργαλείων λογισμικού. Το PhpMyAdmin ως εργαλείο της MySQL παρέχει στους χρήστες του την καλύτερη και ευκολότερη διαχείριση μέσα από ένα φιλικό περιβάλλον χρήστη, το οποίο είναι κατά κάποιον τρόπο ο ενδιάμεσος μεταξύ της βάσης δεδομένων και του χρήστη. Μέσω αυτών των εργαλείων λοιπόν, πραγματοποιήθηκε, μετά την ανάλυση και την καθορισμό των απαιτήσεων, η ανάπτυξη της συγκεκριμένης εφαρμογής.

27 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας 2. Ανάλυση του Συστήματος της Εφαρμογής Εισαγωγή Ο στόχος αυτής της εφαρμογής είναι να σχεδιαστεί ένα σύστημα διαχείρισης συνταγών μαγειρικής. Ο πυρήνας του συστήματος είναι μια βάση δεδομένων που χρησιμοποιείται για την αποθήκευση συνταγών μαγειρικής. Το front - end του συστήματος είναι μια δυναμική ιστοσελίδα η οποία λειτουργεί ως γέφυρα μεταξύ των χρηστών και του συστήματος. Σε γενικές γραμμές, η βάση δεδομένων θα πρέπει να είναι σε θέση να αποθηκεύσει τις πληροφορίες μιας συνταγής μαγειρικής, η οποία συνήθως περιλαμβάνει τον τίτλο, την κατηγορία, τα υλικά και τις οδηγίες υλοποίησης. Η βάση δεδομένων θα πρέπει επίσης να υποστηρίζει τις ακόλουθες λειτουργίες: Βαθμολόγηση συνταγής Τροποποίηση συνταγής Διαγραφή συνταγής Αναζήτηση συνταγής από τον τίτλο Επιπλέον, το σύστημα διαχείρισης συνταγών υποστηρίζει τρεις τύπους χρηστών (τον απλό χρήστη, τον chef και τον διαχειριστή) και τους προσφέρει διαφορετικά δικαιώματα πρόσβασης, η βάση δεδομένων θα πρέπει να είναι σε θέση να αποθηκεύσει τις πληροφορίες τις πληροφορίες του χρήστη, το όνομα χρήστη και τον κωδικό πρόσβασης (εκτός από την περίπτωση του επισκέπτη). Στην front - end πλευρά του χρήστη, το σύστημα θα πρέπει να επιτρέπει στους χρήστες να συμπληρώσουν εύκολα την φόρμα εγγραφής και εισόδου, να επιλέξουν τις λειτουργίες που επιθυμούν να εκτελέσουν και να βλέπουν τα αποτελέσματα. 2.1 Τεχνολογία Ανάπτυξης Λογισμικού Ως σύστημα ορίζεται μια ομάδα ή ένα σύνολο αντικειμένων μεταξύ των οποίων υπάρχει αντίδραση, αλληλεπίδραση και αλληλεξάρτηση έτσι ώστε να δημιουργείται μία ενιαία οντότητα η οποία διαμορφώνεται βάση των συνθηκών του περιβάλλοντος μέσα στο οποίο υπάρχει και η δημιουργία του συνόλου αυτού έχει να επιτελέσει κάποιο σκοπό. Παντού γύρω μας υπάρχουν συστήματα διαφόρων τύπων τα οποία αλληλεπιδρούν και αλληλοεξαρτώνται. Κάθε σύστημα μπορεί να στηρίζεται σε ένα σύνολο μικρότερων συστημάτων τα οποία ονομάζονται υποσυστήματα. (Βεσκούδης Β., 2000) Σελίδα 27 από 72

28 Η χρήση των ηλεκτρονικών υπολογιστών και η εξάπλωση του διαδικτύου είναι ραγδαία με αποτέλεσμα να έχουν δημιουργηθεί νέες καταστάσεις και νέα δεδομένα. Αυτό έχει ως αποτέλεσμα να επιβάλλεται η δημιουργία κατάλληλων μοντέλων τα οποία έχουν διατυπωθεί μέσω εφαρμογών για την ταχύτατη επίλυση προβλημάτων τα οποία για τον άνθρωπο θα απατούσαν πολύ περισσότερο χρόνο. Έτσι λοιπόν ο ηλεκτρονικός υπολογιστής αποτελεί ένα σύστημα το οποίο και αυτό με την σειρά του αποτελείται από άλλα συστήματα όπως το υλικό και το λογισμικό. Το λογισμικό αποτελεί το σύνολο των προγραμμάτων, δηλαδή μια αλληλουχία οδηγιών προς το σύστημα για την εκτέλεση κάποιας συγκεκριμένης διεργασίας, καθώς και των εφαρμογών τις οποίες μπορεί να αναπτύξει ο χρήστης. (Βεσκούδης Β., 2000) Φτάνοντας στο σημείο της δημιουργίας εφαρμογών από των χρήστη αναπτύσσεται μια νέα επιστήμη αυτή της τεχνολογίας λογισμικού η οποία ασχολείται με την αναζήτηση και θέσπιση μεθόδων για την περιγραφή, κατασκευή και συντήρηση του λογισμικού. Έτσι λοιπόν έχουν αναπτυχθεί κάποιες μέθοδοι ή αλλιώς μοντέλα του κύκλου ζωής λογισμικού. (Χατζόγλου, 2005: 24) Οι βασικοί πυλώνες που διαθέτουν όλα τα μοντέλα είναι οι εξής: Η σύλληψη της ιδέας Η καταγραφή των απαιτήσεων Η ανάλυση των απαιτήσεων του συστήματος Η σχεδίαση της εφαρμογής Η ανάπτυξη του κώδικα Ο έλεγχος Η χρήση και συντήρηση Η απόσυρση Επομένως, το μοντέλο κύκλου ζωής λογισμικού είναι η περιγραφή των μεθόδων και των διαδικασιών που ακολουθούνται σε κάθε φάση της ανάπτυξης του λογισμικού από την σύλληψη ως την απόσυρση του λογισμικού. (Χατζόγλου, 2005: 27-28) Διακρίνονται δύο είδη σχεδίασης η λογική και η φυσική. Η πρώτη αφορά την ανάλυση του συστήματος όπου γίνεται μια γενική περιγραφή του συστήματος καθώς και η ανάλυση των απαιτήσεων. Ο φυσικός σχεδιασμός περιλαμβάνει την αυστηρή θέσπιση των προδιαγραφών που δόθηκαν κατά το λογικό σχεδιασμό καθώς και την ανάπτυξη του λογισμικού.

29 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Τέλος, υπάρχουν πολλές μέθοδοι ανάπτυξης (built and fix, καταρράκτη κ.α.) που σαν βασικό στόχο έχουν τα παραπάνω δηλαδή την ανάπτυξη του κύκλου ζωής λογισμικού. Επίσης περιέχουν πληροφορίες για την χρονική σειρά και τα κριτήρια μετάβασης από την μια φάση στην άλλη. Οι φάσεις αυτές είναι οι οδηγίες οι οποίες ομαδοποιούνται με βήματα και καθορίζουν τον τρόπο που αναπτύσσεται ένα προϊόν λογισμικού. Όλες οι μέθοδοι έχουν δυνατά και αδύνατα σημεία και συνήθως χρησιμοποιούνται δύο ή περισσότερα μοντέλα για την καλύτερη ανάλυση λογισμικού. Να τονιστεί ότι υπάρχουν και παραδοσιακές μέθοδοι ανάπτυξης όπως τα Διαγράμματα Ροής Δεδομένων, τα Διαγράμματα Ροής Συστημάτων και τα Διαγράμματα Ροής. (Χατζόγλου, 2005: 29-42) 2.2 Καταγραφή απαιτήσεων Η ακριβής και σωστή καταγραφή των απαιτήσεων είναι πολύ σημαντική για την περαιτέρω ανάπτυξη της εφαρμογής. Όπως αναφέραμε και στην εισαγωγή υπάρχουν τρία είδη χρηστών και συγκεκριμένα υπάρχει ο απλός χρήστης, ο σεφ και ο διαχειριστής. Παρακάτω θα δούμε αναλυτικά τις απαιτήσεις που αφορούν τον κάθε χρήστη. Οι απαιτήσεις που αφορούν τον απλό χρήστη είναι οι εξής: Ο απλός χρήστης έχει την δυνατότητα να κάνει είσοδο στο σύστημα γράφοντας σωστά το όνομα και τον κωδικό. Ακόμη μπορεί να κάνει αναζήτηση μιας συνταγής γράφοντας τον τίτλο της συνταγής, με πεζά ελληνικά γράμματα, ή μέρος του τίτλου. Έχει πρόσβαση στη λίστα των συνταγών. Τέλος, έχει την δυνατότητα να βαθμολογήσει τις συνταγές. Τώρα θα δούμε τις απαιτήσεις που αφορούν τον χρήστη σεφ: Ο σεφ έχει την δυνατότητα να κάνει είσοδο στο σύστημα γράφοντας σωστά το όνομα και τον κωδικό. Ακόμη μπορεί να κάνει αναζήτηση μιας συνταγής γράφοντας τον τίτλο της συνταγής, με πεζά ελληνικά γράμματα, ή μέρος του τίτλου. Έχει πρόσβαση στη λίστα των συνταγών. Έχει την δυνατότητα να βαθμολογήσει τις συνταγές. Μπορεί να δημιουργήσει μια νέα συνταγή. Επιπλέον, μπορεί να τροποποιήσει τις ήδη υπάρχουσες συνταγές. Σελίδα 29 από 72

30 Τέλος, έχει την δυνατότητα να διαγράψει όποια ή όποιες συνταγές επιθυμεί. Από την πλευρά του διαχειριστή οι απαιτήσεις είναι οι ακόλουθες: Ο διαχειριστής έχει την δυνατότητα να κάνει είσοδο στο σύστημα γράφοντας σωστά το όνομα και τον κωδικό. Ακόμη μπορεί να κάνει αναζήτηση μιας συνταγής γράφοντας τον τίτλο της συνταγής, με πεζά ελληνικά γράμματα, ή μέρος του τίτλου. Έχει πρόσβαση στη λίστα των συνταγών. Έχει την δυνατότητα να βαθμολογήσει τις συνταγές. Μπορεί να δημιουργήσει μια νέα συνταγή. Επιπλέον, μπορεί να τροποποιήσει τις ήδη υπάρχουσες συνταγές. Έχει την δυνατότητα να διαγράψει όποια ή όποιες συνταγές επιθυμεί. Μπορεί ακόμη, να τροποποιήσει τα δικαιώματα των χρηστών, να αλλάξει, δηλαδή, το επίπεδο που βρίσκεται κάθε χρήστης. Τέλος, μπορεί να διαγράψει κάποιον χρήστη από το σύστημα. Έτσι λοιπόν, έγινε μια καταγραφή των απαιτήσεων, όσον αφορά τους χρήστες, έγινε μια πρώτη προσέγγιση μιας πιο γενικής μορφής στα πλαίσια της οποίας θα υλοποιηθεί η εφαρμογή. Οπότε, θα έχουμε μια βάση δεδομένων στην οποία θα καταχωρούνται όλα εκείνα τα στοιχεία που απαιτούνται για την υλοποίηση μιας τέτοιας εφαρμογής. Πέρα από τις απαιτήσεις των χρηστών είναι απαραίτητο να καταγραφούν και οι απαιτήσεις σχετικά με τις συνταγές. Οι απαραίτητες πληροφορίες για κάθε συνταγή είναι ο τίτλος της, η κατηγορία στην οποία ανήκει (κύριο γεύμα, ορεκτικό και γλυκό), τα υλικά της, η υλοποίηση της και το όνομα του σεφ. Οπότε χρειαζόμαστε ένα σύστημα με τις εξής απαιτήσεις: Χρειάζεται η ύπαρξη μιας εφαρμογής η οποία θα μπορεί να παρουσιάζει τις συνταγές. Η εφαρμογή θα πρέπει να παρέχει την δυνατότητα εγγραφής και εισαγωγής στο σύστημα Όσον αφορά τον τρόπο παρουσίασης θα πρέπει να υπάρχουν οι απαραίτητες πληροφορίες όπως αναφέραμε και προηγουμένως. Θα πρέπει να μπορούν να δημιουργηθούν και να διαγραφούν συνταγές.

31 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Ακόμα, να μπορούν να γίνονται αλλαγές σε ήδη υπάρχουσες συνταγές. Να επιτρέπεται η βαθμολόγηση των συνταγών. Να επιτρέπεται στον διαχειριστή να τροποποιεί τα δικαιώματα των χρηστών και επιπλέον να έχει την δυνατότητα να διαγράψει κάποιον χρήστη. Να εμφανίζονται μηνύματα λάθους σε περίπτωσης που δεν έχουν δοθεί σωστά τα στοιχεία για εγγραφή και εισαγωγή στο σύστημα, καθώς και κατά την δημιουργία της συνταγής. Αυτές είναι οι εφαρμογές που θα πρέπει να υπάρχουν σε γενικές γραμμές στο συγκεκριμένο σύστημα. Από τα παραπάνω προκύπτει η ανάγκη καταγραφής των απαιτήσεων για την βάση δεδομένων για τις συνταγές μαγειρικής που θα δημιουργηθεί. Οι απαιτήσεις, λοιπόν, για την βάση δεδομένων των συνταγών είναι οι ακόλουθες: Να υπάρχει ένας πίνακας για τις κατηγορίες των συνταγών. Ένας πίνακας για τα υλικά. Εκτός του πίνακα των υλικών είναι απαραίτητη η δημιουργία και ενός πίνακα που θα κρατάει την μονάδα μέτρησης των υλικών. Ακόμη, χρειάζεται ο πίνακας με τις οδηγίες υλοποίησης. Ένας πίνακας που θα κρατάει το όνομα του σεφ στον οποίο ανήκει η συγκεκριμένη συνταγή. Κάπως έτσι ολοκληρώνεται ο καθορισμός των απαιτήσεων για την συγκεκριμένη εφαρμογή. Θα ακολουθήσει η ανάλυση των απαιτήσεων μέσω των διαγραμμάτων. Σελίδα 31 από 72

32 2.3 Ανάλυση απαιτήσεων Διάγραμμα Οντοτήτων - Συσχετίσεων Εικόνα 4: Διάγραμμα Οντοτήτων - Συσχετίσεων

33 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Διάγραμμα Περίπτωσης Χρήσης (Use Case Diagram) Το διάγραμμα περιπτώσεων χρήσης χρησιμοποιείται για να μοντελοποιήσει το πλαίσιο λειτουργίας του συστήματος καθώς και τις προδιαγραφές του. Το παρακάτω διάγραμμα περίπτωσης χρήσης χρησιμοποιήθηκε για τον καθορισμό του συστήματος της βάσης δεδομένων συνταγή. Αναζήτηση Συνταγής ) Q V Αναζήτηση ) ΑπΑος Χρήστης Εγγραφη D Κ 3S Αποσύνθεση! < ϋ ΞΗ Νεπ συνταγή W: ο ζ Διαχειριστής Τροποποίηση Συνταγής I Επεξεργασία 3 Διαχείριση Χρηστών * ) - Ά Επεξεργασία ί 3 Εικόνα 5: Διάγραμμα Περιπτώσεων Χρήσης Σελίδα 33 από 72

34 Συμπεράσματα Η ανάλυση μιας εφαρμογής αποτελεί το πρώτο βήμα, μαζί με την συγκέντρωση και την καταγραφή των απαιτήσεων, για την περαιτέρω ανάπτυξη μιας εφαρμογής. Γι αυτό το λόγο υπάρχουν ειδικά εργαλεία και τεχνικές ανάλυσης μιας εφαρμογής από τις πιο παραδοσιακές έως τις νεότερες. Μετά την καταγραφή των απαιτήσεων πραγματοποιήθηκε η ανάλυση απαιτήσεων η οποία περιελάμβανε το διάγραμμα οντοτήτων - συσχετίσεων (E-R Diagram) και το διάγραμμα περιπτώσεων χρήσης (Use Case Diagram). Έτσι λοιπόν, αφού ολοκληρώθηκε η λογική σχεδίαση στο επόμενο κεφάλαιο θα ασχοληθούμε με την φυσική σχεδίαση της εφαρμογής.

35 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας 3. Σχεδίαση της εφαρμογής Εισαγωγή Σε αυτό το κεφάλαιο γίνεται η περιγραφή της σχεδίασης της εφαρμογής η οποία ξεκίνησε από την ανάλυση του προηγούμενου κεφαλαίου. Γίνεται αναλυτική περιγραφή των σχέσεων, των πεδίων των πινάκων της Βάσης Δεδομένων, με την χρήση σχεδιαγραμμάτων και πινάκων καθώς και ανάλυση αυτών. Επίσης γίνεται παρουσίαση του τρόπου ανάπτυξης της εφαρμογής, δηλαδή τον τρόπο με τον οποίο αναπτύχθηκε ο κώδικας. 3.1 Βάση Δεδομένων εφαρμογής Η βάση δεδομένων γενικά αποτελεί μια συλλογή από δεδομένα τα οποία και οργανώνονται ώστε να εξυπηρετήσουν με τον καλύτερο δυνατό τρόπο διάφορες εφαρμογές. Στην παρούσα εργασία γίνεται χρήση της MySQL, η οποία είναι ένα λογισμικό που έχει σκοπό την καλύτερη και αποτελεσματικότερη διαχείριση των δεδομένων. (Ξένος 2000: 15-16) Η ανάπτυξη της παρούσας εφαρμογής έγινε με το Σχεσιακό Μοντέλο, όπου η αναπαράσταση όλων των δεδομένων γίνεται μέσω δισδιάστατων πινάκων που ονομάζονται οντότητες.(ξένος, 2000: 71-72) Οι οντότητες που αποτελούν τους πίνακες της βάσης συνδέονται μεταξύ τους με τις σχέσεις. Πριν προχωρήσουμε πιο κάτω στην περιγραφή του Σχεσιακού μοντέλου της βάσης δεδομένων να αναφερθεί ότι όλο αυτό γίνεται με στόχο την εξάλειψη των περιττών δεδομένων γι αυτό και εφαρμόζεται η κανονικοποίηση, δηλαδή η εργασία που έχει ως στόχο την εφαρμογή κανόνων στις σχέσεις, με σκοπό την ελάττωση των πλεοναζόντων δεδομένων, την εξασφάλιση της συμβατότητας και την απαλοιφή των προβλημάτων που έχουν σχέση με την διαχείριση των δεδομένων. Τέλος, να αναφερθεί ότι η βάση της παρούσας εφαρμογής ονομάζεται recipes και αποτελείται από οχτώ πίνακες, η περιγραφή των οποίων θα γίνει παρακάτω. Ακολουθεί η περιγραφή των πινάκων της βάσης δεδομένων. Στη βάση δεδομένων που θα αναλυθεί παρακάτω, μετά την διαδικασία της κανονικοποίησης καταλήξαμε στον αριθμό των οχτώ πινάκων που αποτελούν την Βάση. Οι πίνακες αυτοί είναι οι ακόλουθοι: Σελίδα 35 από 72

36 Πίνακας categories Εικόνα 6: Πίνακας categories Ο πίνακας categories περιλαμβάνει τις κατηγορίες των συνταγών και περιέχει τους κωδικούς των κατηγοριών και την στήλη title όπου περιγράφεται το όνομα κάθε κατηγορίας. Πίνακας chefs Εικόνα 7: Πίνακας chefs Ο πίνακας chefs περιλαμβάνει τους σεφ και περιέχει τους κωδικούς των chef και την στήλη name όπου περιγράφεται το όνομα κάθε κατηγορίας. Πίνακας materials Εικόνα 8: Πίνακας materials

37 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Ο πίνακας materials περιλαμβάνει τα υλικά των συνταγών και περιέχει δυο στήλες, μια με τους κωδικούς των υλικών και μια με τις ονομασίες των υλικών. Πίνακας measurements Εικόνα 9: Πίνακας measurements Ο πίνακας measurements περιλαμβάνει τις μονάδες μέτρησης των υλικών και περιέχει δύο πεδία, ένα με τους κωδικούς των μονάδων μέτρησης και ένα με τα ονόματα των μονάδων μέτρησης. Πίνακας recipes Εικόνα 10: Πίνακας recipes Ο πίνακας recipes περιλαμβάνει τις συνταγές και αποτελείται από εφτά πεδία τα οποία είναι τα εξής: Τον κωδικό της κάθε συνταγής. Την κατηγορία στην οποία ανήκει η συγκεκριμένη συνταγή. Σελίδα 37 από 72

38 Τον σεφ στον οποίο ανήκει η συγκεκριμένη συνταγή Τον τίτλο της συνταγής Τον τρόπο υλοποίησης της συνταγής. Την βαθμολογία της συνταγής Το ποσοστό που προκύπτει από τις βαθμολογίες της συγκεκριμένης συνταγής. Πίνακας details Εικόνα 11: Πίνακας details Ο πίνακας details περιλαμβάνει τον τρόπο υλοποίησης της συνταγής και περιέχει πέντε πεδία τα οποία είναι τα ακόλουθα: Τον κωδικό της υλοποίησης Την συνταγή στην οποία ανήκει αυτή η υλοποίηση Τα υλικά αυτής της συνταγής Τις μονάδες μέτρησης των υλικών Την ποσότητα των υλικών Πίνακας users Εικόνα 12: Πίνακας users

39 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Ο πίνακας users περιλαμβάνει τους χρήστες και αποτελείται από τέσσερα πεδία τα οποία είναι: ο κωδικός του κάθε χρήστη, το όνομά του, ο κωδικός πρόσβασης και το επίπεδο στο οποίο ανήκει. Πίνακας users_titles Εικόνα 13: Πίνακας users_titles Ο πίνακας ϋεθγε_μιθε περιλαμβάνει τα επίπεδα των χρηστών και περιέχει δύο πεδία, το επίπεδο και τον τίτλο του επιπέδου. Αφού αναλύσαμε τους πίνακες, θα δούμε τώρα την σχέση μεταξύ των πινάκων: Εικόνα 14: Σχέσεις Πινάκων Σελίδα 39 από 72

40 Παρατηρούμε ότι ο πίνακας users αν και αποτελεί οντότητα της βάσης δεν σχετίζεται άμεσα με κάποιους άλλους πίνακες της βάσης. Να σημειωθεί ότι ο πίνακας users περιέχει τους κωδικούς των χρηστών του συστήματος. 3.2 Παρουσίαση και Ανάλυση του PHP κώδικα Αρχείο index.php Εικόνα 15: index.php Αποτελεί την αρχική σελίδα της εφαρμογής και μέσω της μεθόδου GET γίνεται η αναζήτηση των συνταγών παίρνοντας τα στοιχεία από την βάση δεδομένων.

41 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Αρχείο user register.php Εικόνα 16: user_register.php (1) Μέχρι αυτό το σημείο γίνεται η σύνδεση με την βάση δεδομένων και με την μέθοδο POST επιτρέπεται η εισαγωγή των στοιχείων στην βάση δεδομένων. Παράλληλα γίνεται ο έλεγχος των σφαλμάτων και εμφανίζονται αντίστοιχα μηνύματα στον χρήστη. Σελίδα 41 από 72

42 <?ρ1~.ρ ίηοΐυκίβ ' ιτ.ο;1α1ε3/1 ιε3ε1εγ. ρηρ '?> 0<<4ϊν <:ΐ233="οοηίβη1;η> 1 Β Β <Ιι2>Εγγροκρή χρήστη</1ϊ2> < ΐο π η a c t iα n = "τ ιs e r _ r e c Γ is t e r.ρΐιρ" πΐ0ίη ο ϋ = "ΡΟεΤ" > <ά!ν> <ά!ν> < ΐ3 Ρ ε 1 ± θγ="π3βγπ3ω0" >Όνορο(: < / 1 ^ ε 1 > <ίηριΐε νρ2= " ί ε χ ν η&πι&=:"η3εγη3ΐηεη 1ι1="π36Γη3ΐηε"> < ΐ3 Ρ ε 1 ΐο ::= "ρ *ίο ^ _1 "> Κ ω δ ι κ ό ς Χ / Ι β Ρ ε Ι» <ϊηριαε ty p e = "p a s s w o r d n π3ΐηε="ρ333»τογδ._1η 13="ρ333»τοΓδ._1"> </ύίν> <ύ.1ν> < ΐ3 Ρ ε 1 ΐο ::= " ρ * ίο ^ _ 2 Γ'>Ειΐ0Γυάλ.η<Γΐι χ ω δ ικ ο ύ :< / ΐ3 Ρ ε 1 > <ϊηριαε tγ p e = "p a ssw o Γ d n π3ΐηε="ρ333»τογδ._2η 13="ρ333»τοΓδ._2"> </ύίν> <ίη ριιε εγρε="3χι1>ιηίεπ ν3ΐειε="εγγρο«ρήπ> <ίη ριιε t y p e = "h id d e n π η3ΐηε=π3 ο ε ίο η π ν3 ΐν ιβ = "Γ β 5 ί3 ε β Γ "> </ίαττι.> <?ργ.ρ ( Ϊ336ΐ ( ετγογ_γγ.35) ) :?> < ρ 0 ΐ3 3 3 = " β Γ Γ θ Γ πχ? ρ Ιιρ βοΐιο $βγγ0γ_πΐ33;? Χ / ρ > ίΐρ^.ρ βικϋί;?> * < / δ ϊ ν χ! end εοη εεη ε > <?ρ1~-ρ ίησίεκίε ' ΓΓ.ο:3\ιΐ03/ίοοε0ε. ρ'γ.ρ '?> Εικόνα 17: ϋβθΐ^γθςίβίθγ.ρήρ (2) Σε αυτό το τμήμα του κώδικα προσδιορίζεται ο τρόπος εμφάνισης της φόρμας εγγραφής προς τους χρήστες της εφαρμογής.

43 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Αρχείο user modify.php 1 H<?php J. s e s s i o n _ s t a r t (); 3 include 1database/db.php ; 4 include 1database/users db. php1 5 6 B i f ( $_ ΞΕΞΞΙΟΝ[1val i d 1] $_ ΞΕΞΞΙΟΝ[ level ] < J ){ header(1location: Index.php 1); 10 B if (isset ($_GET ;'action' ] ) ii $ GET [1a c t i o n 1] == 'delete')-! h $ u s e r _ i d = $_GET [' u s e r i d ' ]; delete u s e r ( $ u s e r id); h e a d e r (1Location: user m o d i f y. p h p 1} ; Susers = get_users{); L?> <?php include 'modules/header.php1?> Εικόνα 18: user_modify.php (1) Σε αυτό το τμήμα του κώδικα επιτρέπεται η προσπέλαση της βάσης δεδομένων από τους χρήστες του τρίτου επιπέδου (διαχειριστές) για την διαγραφή των χρηστών. Με την μέθοδο GET παίρνοντας το ^ του χρήστη από την βάση δεδομένων γίνεται η διαγραφή του χρήστη με το συγκεκριμένο ^. Σελίδα 43 από 72

44 Β<table class="modify-table"> 24 Ε 25 F Β Β Β Β <?php include 'module3/header.php'?> <h2>aiocxeipicii xpiiaiiav</h2> <thead> <tr> </tr> </thead> <tbcdy> <th>xpr oin9<:/tli> < th>em i he Boi/th> <th CGl3par. = "2">EUEpYEL(K</til> <?php foreach($u3ei3 as $user):?> <tr> </tr> <tdx?php echo $user[ 'username' ];? x/ td> <tdx?php echo $user['title'];? x/ td> <tdxa href="user_edit.php?user_id=<?php echo $u3er[ 'user id' ];?>">EnE epy<xai<x</ax/td> < t d X a href="user_modify.php?action=delete&user_id=<?php echo $user['userid'];?>" cla33="remove delete-user" data-id="<?php echo $user ['user id' ];?>">AiaYpo«i)ri</aX/td> <?php endforeach;?> </tbcdy> <a href="user add.php" class="user-add">aqpioupylct νέου χρήστη</3> 50 L<?php - include 'modules/footer.php'?> Εικόνα 19: user_modify.php (2) Υποδεικνύει τον τρόπο εμφάνισης της σελίδας για την διαχείριση των χρηστών. Πιο συγκεκριμένα γίνεται αρχικά η εμφάνιση των στοιχείων του κάθε χρήστη και στην συνέχεια δίνεται η δυνατότητα για διαγραφή του εκάστοτε χρήστη.

45 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Αρχείο user loqin.php Αυτό το τμήμα του κώδικα επιτρέπει την είσοδο των χρηστών στο σύστημα με την εισαγωγή του ονόματος και του κωδικού του χρήστη. Σε περίπτωση σφάλματος εμφανίζεται το αντίστοιχο μήνυμα. Σελίδα 45 από 72

46 <?php include modules/header.php'?> Ej3<div c l a 3 3 = " c o n t e n t " > <η2>ε[ποδος χρήστ i)</h2 > <form actior.= "user_login.php" method="post"> <d±v> <label for="nsername">όνομα:</label> cinput type="text" name="username" id="username"> </dlv> g < d i v > c / f c rir> < / d i v > <label for="password">κωδικ ό ς :</label> cinput type="password" name="password" id="password"> Cinput type="submit" value=" Eίσοδος"> <input type=nhidden" name="action" value="loginn> <?php if (isset($error_msg)) :?> <p cla3s=" error" X? php echo Serror_msg;? X / p > C?php endif;?> ΐ / ΰ ί ν κ! en d c o n t e n t > <?php include 'modules/footer.p h p 1?> Εικόνα 21: user_login.php (2) Αυτό το τμήμα του κώδικα αποτελεί την φόρμα εισαγωγής των χρηστών στο σύστημα. Παίρνει την μέθοδο POST του κώδικα που προηγήθηκε και πληκτρολογώντας σωστά το όνομα και τον κωδικό επιτρέπει την είσοδο στο σύστημα.

47 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Αρχείο user edit.php Εικόνα 22: user_edit.php (1) Εδώ γίνεται η επεξεργασία των χρηστών από τους διαχειριστές του συστήματος. Με την μέθοδο GET παίρνει το ID των χρηστών από την βάση δεδομένων και με την μέθοδο POST εμφανίζει το όνομα, τον κωδικό και το επίπεδο του κάθε χρήστη. Σελίδα 47 από 72

48 <?php include 'modules/header.php'?> <ίι2>επεξεργασία χρήστη</ίι2> <?php if (isset ($error_insg)):?> <p class="error"x?php echo $error msg;?x/p> <?php endif;?> U<form action="user_edit.php?user_id=<?php echo $user_id?>" method="post" id="update-user-form"> <div> <label for="username">όνομοι χρήστη:</label> <input type "text" namee"usernamen id="username" class="long" value="<?php echo $uaer[1username1];?>"> </div> <d±v> <label f or="password">kti)6 ικός χρήστη:</label> <input type*"text" name="password" id="password" echo $user['password'];?>"> </div> <div> <label for "level">επίπεδο χρήστη:</label> <select name "level" id "level"> <option value="l" <?php echo $user['level'] <option value="2" <?php echo $user['level'] <option value "3" <?php echo $user['level'] </select> </div> class="long" value="<?php ι? 'selected' ; '';?»Απλός χρήστης</ορ^οη> 2'? 'selected' : '';?»E8(p</option> 3'? 'selected' : '';?»Διαχε ιριστής</ορίϊοη> < input type5 '"submit" value="kdt<^g0pnon" id "update-user-button"> <input type5 '"hidden" name "action" value="update_user"> <input type5 '"hidden" nauie="user id" value="<?php echo $user id;?>" id="user-id"> </form> Εικόνα 23: user_edit.php (2) Αυτό το τμήμα κώδικα εμφανίζει την σελίδα για την επεξεργασία των στοιχείων των χρηστών από τους διαχειριστές του συστήματος.

49 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Αρχείο user add.php Εικόνα 24: user_add.php (1) Με αυτό το τμήμα του κώδικα επιτρέπεται η δημιουργία νέου χρήστη από τον διαχειριστή του συστήματος. Σελίδα 49 από 72

50 Εικόνα 25: ϋ8θγ_8άά.ρήρ (2) Με αυτόν τον τρόπο θα εμφανίζεται η σελίδα για την δημιουργία νέου χρήστη από τους διαχειριστές του συστήματος.

51 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Αρχείο recipes list.php Εικόνα 26: recipes_list.php (1) Με αυτό τον κώδικα επιτρέπεται η είσοδος στη βάση δεδομένων και η μέθοδος GET παίρνει από αυτήν τον πίνακα συνταγές. Σελίδα 51 από 72

52 <?php if(!empty($recipes)):?> 3<table cla33="modify-table"> 3 <thead> ] <tr> - </tr> </thead> <tfccdy> <th>tixxoç</th> <th>kdxiiyop ia</th> <th>ee?</th> <th>ba0p.</th> <?php foreach(srecipes as $recipe):?> <tr> <tdxa href="recipe_show.php?recipe_id=<?php echo $recipe[1recipeid1];?>"> - <?php echo Srecipe [1recipe_title );?></ax/td> <tdx?php echo $recipe [1recipe_category1J;?X/td> <tdx?php echo $recipe[1recipechef1];?x/td> <?php if($recipe[ rating_count1j 0):?> <td class=l,a-right">-</td> <?php else:?> <td class "a-right"x?php echo round($recipe[1rating1j / 0.5) * 0.5;?> / 5</td> <?php endif;?> - </tr> <?php endforeach;?> ~ </tbody> ~</tahle> <?php else :?> <ρ>δκν υπάρχουν αποχελέσμαια για lην αναζήχησή σας.</ρ> <?php endif;?> <?php include 1modules/footer.php?> Εικόνα 27: recipes_list.php (2) Αυτός είναι ο τρόπος εμφάνισης της λίστας των συνταγών.

53 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Αρχείο recipe show.php Με αυτό τον κώδικα επιτρέπεται η είσοδος στη βάση δεδομένων και η μέθοδος GET παίρνει από αυτήν τα στοιχεία του πίνακα για την κάθε συνταγή. Σελίδα 53 από 72

54 <?php include 'modules/header.php*?> <h2x?php echo Srecipe ['recipe_title '];?X/h2> H<div class="recipe"> <div> <Ιι3>Κατηγορία</1ι3> <px?php echo $recipe ['recipe_category'];?x/p> </div> <div class="materials"> <h3>y7iik0</h3> <ul> <?php foreach(srecipe['materials'] as Smaterial):?> < l i > <span class=,,titlemx? p h p echo Smaterial [1title 1];?x/span> <span class="quanti ty"x?php echo Smaterial ['quantity'];?> [<?php echo Smaterial ['measurement'] ;?X/span> </li> <?php endforeach;?> </ul> </div> <div> <Ιι3>Οδηγίες υλοπο ίησης</ιι3> <px?php echo Srecipe [1instructions '];?X/p> </div> <div> <ϊι3>όνομα Eeip</h3> <px?php echo Srecipe ['recipe_chef'];?x/p> </div> <div> <h3 >Βαθμολογ ia</h3> <?php if(srecipe['rating_count'] =0):?> <p>h συνταγή δεν έχει βαθμολογηθεί προς το παρόν.</ρ> <?php else:?> <Ρ> <?php echo round(srecipe['rating'] / 0.5) * 0.5;?>/5 μετά από <?php echo Srecipe['rating count'];?> βαθμολογήσεις. </p> <?php endif;?> </div> <form action "recipe_show.php?recipe_id=<?php echo Srecipe_id?>" method "POST" class "rating"> <label forβ "rating">bαθμoλόγηση:</label> <select namee"rating" id="rating"> <option value="null">-</option> <option value="ln>l</option> <option value="2">2</option> <option valuee"3n>3</option> <option value="4">4</option> <option value="5ri>5</option> </select> <input type="submitn value "Καταχώρηση"> <input type=r,hidden" name=mactionn value="rate"> </form> L </div> <?php include 'modules/footer.php'?> Εικόνα 29: recipe_show.php (2)

55 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Με αυτόν τον τρόπο εμφανίζεται η κάθε συνταγή και επιπλέον δίνεται η δυνατότητα στους χρήστες να βαθμολογήσουν των συνταγή. Αρχείο recipe modify.php Με αυτό το τμήμα του κώδικα επιτρέπεται η είσοδος στη βάση δεδομένων για την διαγραφή μιας συνταγής. Σελίδα 55 από 72

56 <?ρδρ ϊηοίτκΐβ,modules/header.php,?> <1ι2>Τροποπο ίηση συνταγής</1ι2> <;ΐ333="ιη<^ίίγ-ί3ΐ>ΐ0"> < ίι> <ε!ι>τί ιλος</ειι> <εΐι>εεφ</ε1ι> <ε1ι αοΐ3ρ3η="2">ευέργε ια</ε1ι> < /ίζ> </tjίe^d> 3 <ΧΐΈΰγ> <?ριιρ ογβ0^($γεο1ρβ3 33 ίγ β ο ίρ ε ):?> <ίζ> < ε ΰ > 0 href="γeαipe_show.php?γecipe_id=<?php βσΐιο $Γ βοίρβ['γ θ ο ί ρ ε ^ ΰ '] ;?>"> <?ρ!ιρ βοΐιο ίγεοίρβι 1Γ β ο ί ρ ^ ε ί ε ί ε ') ;? x / a x / t d > <εΰχ?ρίιρ εοΐιο $Γβσίρβ [ ' ιεοίρε_α1ιβ11] ;?></td> Η ; <εάχ& 6.Γεί="Γ0σίρβ_βΔίε.ρ1ιρ?Γ0σίρβ_ίΔ=<?ρΙιρ βσΐιο $Γεοϊρ6 [1ΓΕΰϊρθ ϊΰ1];?>">επεξεργο(σίοκ/βχ/εΰ> < ε ΰ > 0 ίΐγεί="γβαίρβ_ιιιοάίίγ,ρ1ιρ?3σείοη=άβ1βεβ&γβσίρθ_ίΰ=<?ρ1ιρ βσΐιο $Γβοίρε [ 1ιε ο ίρ 6 _ ίΰ '] ;?>" οΐ333="γειηονβ">διο(γροιφή</βχ/εΰ> < /ίζ> <?ριιρ endfoγeach;?> </ϋ3ΐ:1ε> <?php ίηοίπΰε 'πιοΰιιιθβ/ίοοεβι.ρίιρ'?> Εικόνα 31: ΓθεΙρθ_ηοάΙίγ.ρήρ (2) Έτσι γίνεται η εμφάνιση της λίστας των συνταγών στη σελίδα τροποποίηση συνταγής και δίνεται η δυνατότητα για επεξεργασία ή διαγραφή μιας συνταγής από την λίστα.

57 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Αρχείο recipe edit.php Αυτός ο κώδικας επιτρέπει την είσοδο στη βάση δεδομένων και με την μέθοδο GET παίρνει το ID της κάθε συνταγής ώστε να γίνει η επεξεργασία της. Σε περίπτωση σφάλματος εμφανίζει το αντίστοιχο μήνυμα λάθους. Σελίδα 57 από 72

58 Αρχείο recipe add.php ΟG IS Π <?php session start() ; include 1database/db.php'; include database/recipes db.php'; R i f (!$_SESSION[1valid1] $_SESSION['level ] < 2){ header('location: index.php'); - } H i f (isset($_p0st['action')) & $_P0ST['action J = add_recipe1){ $validity = validate_recipe_fields($_posx); if($validity = 'pass'){ $recipe_id = add_recipe($_post); header('location: recipe_show.php?recipe_id='. $recipe_id); } else { Serror msg * 'Συμπληρώστε όλα τα πεδία.'; - - Εικόνα 33: ΓθθΙρθ_8άά.ρήρ (1) Αυτός ο κώδικας επιτρέπει την είσοδο στη βάση δεδομένων για τους χρήστες που είναι επιπέδου 2 και πάνω. Σε περίπτωση σφάλματος εμφανίζει το αντίστοιχο μήνυμα λάθους <?php include 'modules/header.php'?> <Ιι2>Κ6(τοιχώρηση συνταγής</ιι2> <?php if(isset($error msg)):?> <p cla3s="error"x?php echo Serror msg;? X / p > <?php endif;?> EKform action="recipe_add.php" method*"post"> R <div> Clabel for="recipe_title">tιτλος:</label> <input type="text" name="recipe_title" id="recipe_title" cla33="long"> </div> R <div> Clabel for="recipe_category">kd^yopia:</label> Cselect name="recipe_category" id="recipe_category"> Coption value="kupio γεύμα" selected>kirplo γεύμα</ορίϊοη> coption value="opektικό">ορεκτ LK0</option> coption value*"enιδόρπιο">επi6ôpnioc/option> c/select> c/div>

59 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Εικόνα 34: recipe_add.php (2) <fieldset class="materials"> <legend>yxik<xc/legend> <table> <tbodγ> <tr> <td cla3s="material_titlem> </td> <label for="material_title_lm>yaiko:</label> cinput type*"text" naine»"material_title_lm id="material_title_l"> <td class="material_quantity"> <label for="material_quantity_l">iioa0tiiicc:</label> <input type="text" name="material_qaantity_l" id="material_quantity_l"> </td> </tr> <td class="materiadmeasurement"> Clafcel for="material_measurement_l">μονάδα:</label> <select r.ame="material measurement 1"> <option value="yp.">yp.</option> Coption value="mlm>ml</option> <option value*"xep.">xep.</option> Coption value* "φύλλα ">φύλλοκ/ορ^οη> </select> </td> Εικόνα 35: recipe_add.php (3) <div> <a href="#" id="add_material">npoo6iikii νέου υλικού [+]</a> </fieldset> </div> 5 <div> </div> <label for="recipe_instructions">06iiyieg υλοποinogg:</label> Ctextarea r.arr.e="recipe_instructions" id="recipe_instractions" cols="70" row3=n5nx/textarea> Clabel f or="chef_naiue">όνομα Σεφ:</label> <input type="text" name="chef_name" id="chef_name" clas3="long"> <input tvpe="submit" value="k<xi<xxupnoii"> <input type="hidden" nair.e="action" value="add_recipe"> -</foim> <?php include 'itodules/footer.php'?> Εικόνα 36: recipe_add.php (4) Τα τμήματα του κώδικα που παρουσιάζονται παραπάνω αποτελούν την σελίδα για την δημιουργία μιας συνταγής. Σελίδα 59 από 72

60 4. Εγχειρίδιο Χρήσης Εισαγωγή Η παρουσίαση του τρόπου χειρισμού του προγράμματος από τους χρήστες των διαφόρων επιπέδων που θα ακολουθήσει, είναι απλή και κατανοητή ακόμη και γι αυτούς που έχουν μόνο τις βασικές γνώσεις υπολογιστών. Κάθε κίνηση περιγράφεται γραπτώς, συνοδευόμενη από τα απαραίτητα screenshots, τα οποία δίνουν μια ολοκληρωμένη εικόνα στον χρήστη. Η παρουσίαση των διαδικασιών γίνεται με την σειρά που βρίσκονται και στην εφαρμογή. Το εγχειρίδιο χρήσης χωρίζεται στα παρακάτω μέρη: Αρχική οθόνη: Περιγράφει την αρχική οθόνη που εμφανίζεται όταν θέτουμε την εφαρμογή σε λειτουργία. Οθόνη Απλού χρήστη: Περιγράφονται οι λειτουργίες και οι διαδικασίες που εκτελεί ο απλός χρήστης, ο οποίος έχει τα λιγότερα δικαιώματα σε σχέση με τους χρήστες των άλλων επιπέδων. Μπορεί να κάνει αναζήτηση συνταγών και να δει τη λίστα των συνταγών. Οθόνη Σεφ: Περιγράφονται οι λειτουργίες και οι διαδικασίες που εκτελεί ο χρήστης σεφ. Μπορεί να κάνει εισαγωγή νέας συνταγής στη βάση δεδομένων και να τροποποιήσει/διαγράψει τις ήδη υπάρχουσες συνταγές και φυσικά ότι περιλαμβάνεται στα δικαιώματα του απλού χρήστη. Οθόνη Διαχειριστή: Περιγράφονται οι λειτουργίες και οι διαδικασίες που εκτελεί ο διαχειριστής (administrator) ο οποίο είναι και ο χρήστης με τα περισσότερα δικαιώματα. Έχει όλα τα δικαιώματα του σεφ με ένα επιπλέον δικαίωμα το οποίο είναι να επεμβαίνει και να τροποποιεί τα δικαιώματα των άλλων χρηστών.

61 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας 4.1 Αρχική οθόνη Η πρώτη οθόνη που εμφανίζεται όταν ξεκινά η εφαρμογή παρουσιάζεται παρακάτω: Αρχική Είσοδος η Εγγραφη Αναζήτηση συνταγής Αναζήτηση συνταγής Λίστα συνταγών *IIII» Εικόνα 37: Αρχική Οθόνη Πληκτρολογώντας στο πεδίο «Αναζήτηση συνταγής» τον τίτλο μιας συνταγής ή μιας λέξης κλειδί που αποτελεί μέρος του τίτλου μιας συνταγής και κάνοντας κλικ στο κουμπί «Αναζήτηση», εμφανίζεται η συνταγή ή οι συνταγές (με την λέξη κλειδί), εφόσον αυτές είναι διαθέσιμες. Κάνοντας κλικ στο σύνδεσμο «Λίστα συνταγών» εμφανίζεται η λίστα με τις συνταγές που είναι καταχωρημένες στο σύστημα. Εγγραφή χρήστη Κάνοντας κλικ στον σύνδεσμο «Εγγραφή» δίνεται η δυνατότητα για εγγραφή νέου μέλους στο σύστημα. Σελίδα 61 από 72

62 Τ ' Αρχική Είσοδος η Εγγραφη Αναζήτηση συνταγής Λίστα συνταγών Εγγραφη χρηστη Ονομα: Κωδικός: Επανάληψη κωδικού Εικόνα 38: Εγγραφή χρήστη Είναι απαραίτητο να συμπληρωθούν σωστά όλα τα πεδία. Σε περίπτωση που δεν γίνει αυτό εμφανίζεται μήνυμα λάθους, όπως φαίνεται παρακάτω: Αρχική Είσοδος ή Εγγραφή Αναζήτηση συνταγής Λίστα συνταγών Εγγραφη χρηστη Ονομα: Κωδικός: Επανάληψη κωδικού: Οι κωδικοί δεν ταιοιαιουν

63 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Εικόνα 39: Εγγραφή χρήστη - Μήνυμα λάθους Πληκτρολογώντας σωστά τα κείμενα στα πεδία και πατώντας το κουμπί «Εγγραφή» γίνεται άμεση εισαγωγή στο σύστημα με δικαιώματα απλού χρήστη. Αρχική Καλωσηρθες ΒΟΠδ Αποσύνθεση Αναζήτηση συνταγής Λίστα συνταγών Εγγραφη χρηστη Ονομα εοτια Κωδικός: Επανάληψη κωδικού: Εικόνα 40: Εγγραφή χρήστη - Στοιχεία Εισαγωγή χρήστη Κάνοντας κλικ στο σύνδεσμο «Εισαγωγή», για τους ήδη εγγεγραμμένους χρήστες, δίνεται η δυνατότητα εισαγωγής στο σύστημα με τα δικαιώματα που αντιστοιχούν στον εκάστοτε χρήστη. Σελίδα 63 από 72

64 Αρχική Είσοδος η Εγγραφη Αναζητηση συνταγής Λίστα συνταγών Είσοδος χρήστη Ονομα: Κωδικός: Εικόνα 41: Εισαγωγή χρήστη Είναι απαραίτητο να συμπληρωθούν σωστά όλα τα πεδία. Σε περίπτωση που δεν γίνει αυτό εμφανίζεται μήνυμα λάθους, όπως φαίνεται παρακάτω: Αρχική Είσοδος ή Εγγραφη Αναζήτηση συνταγής Λίστα συνταγών Είσοδος χρήστη Ονομα: Κωδικός: Συμπληρώστε σωστά τα στοιχεία Εικόνα 42: Εισαγωγή χρήστη - Μήνυμα λάθους

65 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Πληκτρολογώντας σωστά τα κείμενα στα πεδία και πατώντας το κουμπί «Είσοδος» γίνεται άμεση εισαγωγή στο σύστημα με δικαιώματα του εκάστοτε χρήστη. 4.2 Οθόνη Απλού χρήστη Ο απλός χρήστης έχει τα δικαιώματα του επισκέπτη, χωρίς την δυνατότητα κάποιας επιπλέον ενέργειας, με την προοπτική όμως να αλλάξει ο διαχειριστής τα δικαιώματα του. Παρακάτω παρουσιάζεται ο απλός χρήστης που δημιουργήθηκε προηγουμένως. Αρχική Καλωσήρθες Sofia Αποσύνθεση Αναζήτηση συνταγής Αναζήτηση συνταγής Λίστα συνταγών Εικόνα 43: Οθόνη απλού χρήστη 4.3 Οθόνη Σεφ Ο χρήστης με τα δικαιώματα του σεφ διαθέτει τις λειτουργίες του απλού χρήστη και επιπλέον την δυνατότητα να εισάγει συνταγές και να τις τροποποιεί ή ακόμα και να τις διαγράφει. Η οθόνη του χρήστη σεφ παρουσιάζεται παρακάτω: Σελίδα 65 από 72

66 ' Αρχική Καλωσηρθες επετ Αποσύνθεση Αναζητηση συνταγής Αναζήτηση συνταγής Λίστα συνταγών Νεα συνταγή Τροποποίηση συνταγής Εικόνα 44: Οθόνη σεφ Νέα συνταγή Κάνοντας κλικ στο σύνδεσμο «Νέα συνταγή» δίνεται η δυνατότητα στον χρήστη σεφ να εισάγει μία νέα συνταγή στη βάση δεδομένων. Παρακάτω αναλύονται τα πεδία που πρέπει να συμπληρωθούν ώστε να ολοκληρωθεί επιτυχώς η διαδικασία εισαγωγής νέας συνταγής.

67 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Αρχική Καλωσηρθες chef Αποσύνθεση Αναζητηση συνταγής Λίστα συνταγών Νεα συνταγή Τροποποίηση συνταγής Καταχωρηση συνταγής Τίτλος: Κατηγορία: Κύριο γεύμα Υλικά Υλικό Υλικό Ποσότητα: Ποσότητα: Μονάδά: ΥΡ - Μονάδά: Υλικό Ποσότητα: Μονάδά: ΥΡ Η γρ. - Προσθήκη νέου υλικου [+ ] Οδηγίες υλοποίησης: Ονομα Σεφ: Εικόνα 45: Νέα συνταγή Είναι απαραίτητο να συμπληρωθούν όλα τα πεδία που βρίσκονται στη φόρμα δημιουργίας νέας συνταγής. Πιο συγκεκριμένα: Σελίδα 67 από 72

68 Τίτλος: Στο πεδίο αυτό όπως είναι φανερό μπαίνει ο τίτλος της συνταγής με ελληνικούς χαρακτήρες. Κατηγορία: Από την λίστα επιλέγεται η κατηγορία στην οποία κατατάσσεται η εκάστοτε συνταγή. Υλικά: Στο πεδίο υλικό γράφεται το όνομα του υλικού με ελληνικούς χαρακτήρες. Στην ποσότητα, γράφεται η ποσότητα του υλικού αυτού με αριθμούς. Στην μονάδα, γίνεται επιλογή της μονάδας μέτρησης από την λίστα. Αν χρειάζεται η προσθήκη επιπλέον υλικών είναι εφικτό κάνοντας κλικ στο «Προσθήκη νέου υλικού». Αντίστοιχα συμπληρώνονται τα πεδία «Οδηγίες υλοποίησης» και «Όνομα Σεφ» Είναι απαραίτητο να συμπληρωθούν όλα τα στοιχεία, διαφορετικά εμφανίζεται μήνυμα λάθους. 4.4 Οθόνη Διαχειριστή Ο διαχειριστής (administrator) διαθέτει τις λειτουργίες του χρήστη σεφ με ένα επιπλέον δικαίωμα το οποίο είναι να επεμβαίνει και να τροποποιεί τα δικαιώματα των άλλων χρηστών. Η οθόνη του διαχειριστή παρουσιάζεται παρακάτω: Αρχική Καλωσηρθες admin Αποσύνθεση Αναζήτηση συνταγής Αναζήτηση συνταγής Λίστα συνταγών Νεα συνταγή Τροποποίηση συνταγής Διαχείριση χρηστών Εικόνα 46: Οθόνη Διαχειριστή Διαχείριση χρηστών

69 Πτυχιακή εργασία της Ελευθεριάδου Σοφίας Κάνοντας κλικ στο σύνδεσμο «Διαχείριση χρηστών» δίνεται η δυνατότητα στον διαχειριστή να επεξεργαστεί το επίπεδο των υπαρχόντων χρηστών ή ακόμα και να τους διαγράψει. Αρχική Καλωσήρθες admin I Αποσύνδεση Αναζήτηση συνταγής Λίστα συνταγών Νεα συνταγή Τροποποίηση συνταγής Διαχείριση χρηστών Διαχείριση χρηστών Χρήστης Επίπεδο admin Διαχειριστής Επεξεργασία Διαγραφή Επεξεργασία Ενέργεια Διαγραφή Απλός χρήστης Επεξεργασία Διαγραφή Δημιουργία νέου χρηστη Εικόνα 47: Διαχείριση Χρηστών Συμπεράσματα Η δημιουργία ενός εγχειριδίου χρήσης της εφαρμογής είναι ένα πολύ σημαντικό κομμάτι τόσο για τον χρήστη όσο και για τον προγραμματιστή. Όσον αφορά τον χρήστη βοηθά στη διευκρίνιση και στην εκμάθηση ενός καλύτερου χειρισμού της εφαρμογής και δίνει λύσεις σε τυχόν προβλήματα που ενδεχομένως να προκύψουν. Από την μεριά του προγραμματιστή τον βοηθά να αξιολογήσει καλύτερα την λειτουργικότητα και την ευχρηστία της εφαρμογής που έχει δημιουργήσει. Σελίδα 69 από 72

Ανάλυση, Σχεδιασμός και Ανάπτυξη Διαδραστικής Διαδικτυακής Εφαρμογής για την Διαχείριση Συνταγών Μαγειρικής

Ανάλυση, Σχεδιασμός και Ανάπτυξη Διαδραστικής Διαδικτυακής Εφαρμογής για την Διαχείριση Συνταγών Μαγειρικής Τ.Ε.Ι. ΑΜΘ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Ανάλυση, Σχεδιασμός και Ανάπτυξη Διαδραστικής Διαδικτυακής Εφαρμογής για την Διαχείριση Συνταγών Μαγειρικής ΠΑΠΑΣΠΥΡΟΥ ΑΛΕΞΙΟΣ ΑΕΜ:

Διαβάστε περισσότερα

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

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης Σελίδα 1από ΤΕΙ ΚΑΒΑΛΑΣ Πτυχιακή εργασία Δικτυακή Εφαρμογή διαχείρισης ηλεκτρονικών εγγράφων υπηρεσίας. ΕΙΣΑΓΩΓΗ Μιλτιάδης Κακλαμάνης Σελίδα 2από Κατάλογος περιεχομένων ΕΙΣΑΓΩΓΗ...1 Σχετιζόμενα πρόσωπα...3

Διαβάστε περισσότερα

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress ΚΟΤΣΟΓΙΑΝΝΙΔΗΣ ΛΑΖΑΡΟΣ Επιβλέπων καθηγητής Σφέτσος Παναγιώτης ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ Ως Ηλεκτρονικό Εμπόριο ή

Διαβάστε περισσότερα

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

Εργαλεία ανάπτυξης εφαρμογών internet Ι IEK ΟΑΕΔ ΚΑΛΑΜΑΤΑΣ ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΟΦΟΡΙΚΗΣ Εργαλεία ανάπτυξης εφαρμογών internet Ι Διδάσκουσα: Κανελλοπούλου Χριστίνα ΠΕ19 Πληροφορικής Εργαλεία και τεχνικές από την πλευρά του πελάτη Java Applet

Διαβάστε περισσότερα

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

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο FrontPage 2003 Πρακτικός Οδηγός Χρήσης Το FrontPage είναι ένα πρόγραμμα δημιουργίας ιστοσελίδων και δικτυακών τόπων που επιτρέπει το σχεδιασμό ιστοσελίδων μέσα από γραφικό περιβάλλον αλλά και την ταυτόχρονη

Διαβάστε περισσότερα

Κεφάλαιο 11: Εισαγωγή στην HTML. Εφαρμογές Πληροφορικής Κεφ. 11 Καραμαούνας Πολύκαρπος

Κεφάλαιο 11: Εισαγωγή στην HTML. Εφαρμογές Πληροφορικής Κεφ. 11 Καραμαούνας Πολύκαρπος Κεφάλαιο 11: Εισαγωγή στην HTML 1 11.1 Γενική εισαγωγή στην HTML Τι είναι η HTML HyperText Markup Language - Γλώσσα Χαρακτηρισμού Υπερ-Κειμένου είναι η βασική γλώσσα με την οποία πραγματοποιείται η δόμηση

Διαβάστε περισσότερα

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

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΟΜΕΑΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ, ΠΛΗΡΟΦΟΡΙΚΗΣ & ΙΚΤΥΩΝ Εργ. Τεχνολογίας Λογισμικού & Υπηρεσιών S 2 ELab Π Τ Υ Χ Ι Α

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

Διαβάστε περισσότερα

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

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος... 13. Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15 ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος... 13 Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15 1.1 Εισαγωγή... 16 1.2 Διαδίκτυο και Παγκόσμιος Ιστός Ιστορική αναδρομή... 17 1.3 Αρχές πληροφοριακών συστημάτων

Διαβάστε περισσότερα

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

6 Εισαγωγή στο Wordpress 3.x Περιεχόμενα 1 Εγκατάσταση του WordPress... 11 Ελάχιστες απαιτήσεις... 11 Easy PHP... 12 Εγκατάσταση Easy PHP... 12 Βήματα εγκατάστασης EasyPHP με εικόνες... 13 Το EasyPHP στα Ελληνικά... 17 Κατέβασμα και

Διαβάστε περισσότερα

Τεχνικός Εφαρμογών Πληροφορικής

Τεχνικός Εφαρμογών Πληροφορικής Τεχνικός Εφαρμογών Πληροφορικής ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΕΙΣΑΓΩΓΗ Εξάμηνο: 2014Β Διδάσκουσα: Ηλεκτρονική Τάξη: Κανελλοπούλου Χριστίνα_ΠΕ19 Πληροφορικής Περιεχόμενα 1.Τι είναι η Php; 2.Πως γίνετε η γραφή

Διαβάστε περισσότερα

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

Προγραμματισμός διαδικτυακών εφαρμογών με PHP ΕΣΔ516: Τεχνολογίες Διαδικτύου Προγραμματισμός διαδικτυακών εφαρμογών με PHP Ερωτήματα μέσω Περιεχόμενα Περιεχόμενα Λογισμικό για εφαρμογές Web Η τριεπίπεδη αρχιτεκτονική (3-tier architecture) Εισαγωγή

Διαβάστε περισσότερα

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΜΕ ΘΕΜΑ: ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΜΕ ΘΕΜΑ: ΘΕΟΔΟΣΙΟΥ ΝΙΚΗ Α.Μ. 103/04 ΠΑΠΑΠΕΤΡΟΥ ΦΩΤΕΙΝΗ Α.Μ. 134/04 Εξεταστική Επιτροπή Επιβλέπουσα Καθηγήτρια : Σατρατζέμη Μαρία, Καθηγήτρια Μέλη : Ευαγγελίδης

Διαβάστε περισσότερα

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

1 ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΑΣ ΓΕΩΠΟΝΙΑΣ - ΤΜΗΜΑ ΦΥΤΙΚΗΣ ΠΑΡΑΓΩΓΗΣ 1 2 Περιεχόμενα 1. Εισαγωγή... 5 2. Επεξήγηση των εργαλείων που χρησιμοποιήθηκαν για την δημιουργία της ιστοσελίδας... 6 2.1 Γλώσσα προγραμματισμού ΗΤML για την δημιουργία της Ιστοσελίδας... 6 2.2 Γλώσσα

Διαβάστε περισσότερα

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

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ της Πλατφόρμας Τηλεκατάρτισης ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή...2 2. Αρχική σελίδα, Εισαγωγή & Περιβάλλον Συστήματος...3 2.1. Αρχική σελίδα εισαγωγής...3 2.2. Εισαγωγή στην Πλατφόρμα Τηλε-κατάρτισης...4

Διαβάστε περισσότερα

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

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες Εισαγωγή-Σκοπός. Τρόποι δημιουργίας δυναμικών ιστοσελίδων. Dynamic Web Pages. Dynamic Web Page Development Using Dreamweaver. Τρόποι δημιουργίας δυναμικών

Διαβάστε περισσότερα

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7 Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 Μέρος 1 1 Βασικοί όροι... 11 2 Βασική δομή κώδικα HTML... 25 3 Μορφοποίηση κειμένου... 39 4 Μορφοποίηση παραγράφων... 51 5 Εισαγωγή εικόνας... 63 6 Λίστες με

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ Κεφάλαιο 2. Το περιβάλλον του παγκόσμιου Ιστού Επιμέλεια: Καραγιάννης Σπύρος Καθηγητής ΠΕ19 Πλεονεκτήματα παγκόσμιου Ιστού Εξυπηρετητής Ιστού & Ιστοσελίδες Κύριες

Διαβάστε περισσότερα

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο)

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο) TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Επιστημονικός συνεργάτης Εργαστηρίου: Στέλλα Λάμπουρα Εαρινό εξάμηνο Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ.

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ. ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ Ηλεκτρονική Υποβολή Α.Π.Δ. ΠΕΡΙΕΧΟΜΕΝΑ 1) Είσοδος στην εφαρμογή 2) Δημιουργία Περιόδου Υποβολής 2.α) Ακύρωση Περιόδου Υποβολής 3) Μέθοδος Υποβολής: Συμπλήρωση Φόρμας 3.α) Συμπλήρωση

Διαβάστε περισσότερα

XAMPP Apache MySQL PHP javascript xampp

XAMPP Apache MySQL PHP javascript xampp XAMPP Το xampp είναι ένα δωρεάν πρόγραμμα με το οποίο μπορούμε να κάνουμε εγκατάσταση τον Apache, τη MySQL και την PHP. Apache. Ο Apache είναι ένας Web Server. Είναι δηλαδή πρόγραμμα το οποίο τρέχει μόνιμα

Διαβάστε περισσότερα

Ανάπτυξη Υπηρεσίας Καταλόγου LDAP με τα στοιχεία του προσωπικού του TEI Πειραιά. Νίκος Πασσαράς. Εισηγητής: Πρεζεράκος Γεώργιος

Ανάπτυξη Υπηρεσίας Καταλόγου LDAP με τα στοιχεία του προσωπικού του TEI Πειραιά. Νίκος Πασσαράς. Εισηγητής: Πρεζεράκος Γεώργιος ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΙΔΡΥΜΑ ΠΕΙΡΑΙΑ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ανάπτυξη Υπηρεσίας Καταλόγου LDAP με τα στοιχεία του προσωπικού του TEI Πειραιά Νίκος Πασσαράς

Διαβάστε περισσότερα

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

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο Το περιβάλλον εργασίας Ανοίγοντας την Ελληνική Έκδοση του FrontPage, για πρώτη φορά, η εικόνα που θα συναντήσουμε είναι αυτή της Εικόνας 1 με τα Μενού Εντολών και τη Γραμμή Εργαλείων, στο πάνω μέρος της

Διαβάστε περισσότερα

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

Εργαλεία ανάπτυξης εφαρμογών internet Ι IEK ΟΑΕΔ ΚΑΛΑΜΑΤΑΣ ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΟΦΟΡΙΚΗΣ Εργαλεία ανάπτυξης εφαρμογών internet Ι Διδάσκουσα: Κανελλοπούλου Χριστίνα ΠΕ19 Πληροφορικής 4 φάσεις διαδικτυακών εφαρμογών 1.Εφαρμογές στατικής πληροφόρησης

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΔΙΑΔΡΑΣΤΙΚΗΣ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΕΞΥΠΗΡΕΤΗΣΗ ΑΣΘΕΝΩΝ ΣΥΜΒΕΒΛΗΜΕΝΟΥΣ ΜΕ ΤΟΝ Ε.Ο.Π.Υ.

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΔΙΑΔΡΑΣΤΙΚΗΣ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΕΞΥΠΗΡΕΤΗΣΗ ΑΣΘΕΝΩΝ ΣΥΜΒΕΒΛΗΜΕΝΟΥΣ ΜΕ ΤΟΝ Ε.Ο.Π.Υ. Τ.Ε.Ι ΚΑΒΑΛΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΔΙΑΔΡΑΣΤΙΚΗΣ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΕΞΥΠΗΡΕΤΗΣΗ ΑΣΘΕΝΩΝ» ΟΝΟΜΑΤΕΠΩΝΥΜΑ ΣΠΟΥΔΑΣΤΩΝ : ~ΔΕΛΗΓΙΑΝΝΗ ΚΥΡΙΑΚΗ, 1925~

Διαβάστε περισσότερα

Κεφάλαιο 6 ο. Διαχείριση στοιχείων λογισμικού

Κεφάλαιο 6 ο. Διαχείριση στοιχείων λογισμικού Κεφάλαιο 6 ο Διαχείριση στοιχείων λογισμικού Διδακτικοί στόχοι Να περιγραφούν οι κύριοι τύποι λογισμικού Να εξεταστεί το λογισμικό συστήματος και τα λειτουργικά συστήματα Να αναλυθούν οι πιο σημαντικές

Διαβάστε περισσότερα

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ

Διαβάστε περισσότερα

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

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή 1 Πίνακας Περιεχομένων 1. Εισαγωγή... 4 1.1 Περιβάλλον Moodle...4 1.2 Χρήση ονόματος χρήστη και κωδικού...4 1.3 Δημιουργία νέου μαθήματος...4 1.3.1

Διαβάστε περισσότερα

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED σχεδιασμός ιστοσελίδας ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED σχεδιασμός ιστοσελίδας ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED σχεδιασμός ιστοσελίδας ΕΚΔΟΣΗ 1.0 ΤΙ ΕΙΝΑΙ ΤΟ ADVANCED Οι Advanced θεματικές ενότητες είναι είναι κατάλληλες για άτομα που επιθυμούν να συνεχίσουν σπουδές στο χώρο της

Διαβάστε περισσότερα

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Λαμπαδαρίδης Αντώνιος el04148@mail.ntua.gr Διπλωματική εργασία στο Εργαστήριο Συστημάτων Βάσεων Γνώσεων και Δεδομένων Επιβλέπων: Καθηγητής Τ. Σελλής Περίληψη

Διαβάστε περισσότερα

Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού

Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΔΙΑΤΜΗΜΑΤΙΚΟ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Διπλωματική Εργασία με θέμα: Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού Καραγιάννης Ιωάννης Α.Μ.

Διαβάστε περισσότερα

Εισαγωγή Κεφάλαιο 1: Εγκατάσταση της Access Κεφάλαιο 2: Βάσεις δεδομένων και δομικά στοιχεία της Access

Εισαγωγή Κεφάλαιο 1: Εγκατάσταση της Access Κεφάλαιο 2: Βάσεις δεδομένων και δομικά στοιχεία της Access ΠΕΡΙΕΧΟΜΕΝΑ Εισαγωγή...15 Κεφάλαιο 1: Εγκατάσταση της Access 2002...17 Τι είναι το Office XP;...17 Τεχνικές απαιτήσεις του Office XP...17 Πρόσθετα απαιτούμενα για την αξιοποίηση εξειδικευμένων χαρακτηριστικών...18

Διαβάστε περισσότερα

Αλεξιάδης Γεώργιος (ΠΕ86) -

Αλεξιάδης Γεώργιος (ΠΕ86) - 11.1 Γενική Εισαγωγή στην HTML Τι είναι η HTML; HyperText Markup Language (Γλώσσα Χαρακτηρισμού Υπερ-Κειμένου) Βασίζεται στην SGML (Standard Generalized Markup Language) που είναι ένα πολύ μεγαλύτερο σύστημα

Διαβάστε περισσότερα

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

Βασικές Έννοιες Web Εφαρμογών ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Τεχνολογίες και Εφαρμογές Διαδικτύου Βασικές Έννοιες Web Εφαρμογών Κατερίνα Πραματάρη Τεχνολογίες και Εφαρμογές Διαδικτύου Περιεχόμενα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εγχειρίδιο Συντονιστή Τηλεδιασκέψεων Υπηρεσίας e:presence

Εγχειρίδιο Συντονιστή Τηλεδιασκέψεων Υπηρεσίας e:presence Εγχειρίδιο Συντονιστή Τηλεδιασκέψεων Υπηρεσίας e:presence Έκδοση 1.3 Ιούνιος 2014 Περιεχόμενα Εφαρμογή Διαχείρισης Τηλεδιασκέψεων... 2 Προβολή τηλεδιασκέψεων... 3 Προσθήκη τηλεδιάσκεψης... 4 Τροποποίηση

Διαβάστε περισσότερα

Όταν αποθηκεύετε μία παρουσίαση, την ονομάζετε και καθορίζετε πού θα την αποθηκεύσετε

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

Διαβάστε περισσότερα

Τι είναι ένα σύστημα διαχείρισης περιεχομένου; δυναμικό περιεχόμενο

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

Διαβάστε περισσότερα

Περιεχόμενα. Πρόλογος... xiii

Περιεχόμενα. Πρόλογος... xiii Περιεχόμενα Πρόλογος... xiii Κεφάλαιο 1 ο Εισαγωγή στις τεχνολογίες Διαδικτύου... 1 1.1 Σύντομη ιστορία του Διαδικτύου... 3 1.2 Σύνδεση στο Διαδίκτυο μέσω Παρόχου (ISP)... 6 1.3 Μοντέλα Επικοινωνίας...

Διαβάστε περισσότερα

Social Network : Programming on FACEBOOK

Social Network : Programming on FACEBOOK Social Network : Programming on FACEBOOK Συντελεστές: Παύλος Τούλουπος Ευθυμία Παπαδοπούλου Ξάνθη Μάρκου Κοινωνικά Δίκτυα Κοινωνικό δίκτυο προέρχεται από την ψυχολογία αφορά μια κοινωνική δομή ατόμων τα

Διαβάστε περισσότερα

Vodafone Business Connect

Vodafone Business Connect Vodafone Business Connect Vodafone Business WebHosting Αναλυτικός Οδηγός Χρήσης MSSQL Manager Αναλυτικός οδηγός χρήσης: MS SQL Manager Vodafone Business Connect - Υπηρεσίες φιλοξενίας εταιρικού e-mail

Διαβάστε περισσότερα

Σύστημα διαχείρισης περιεχομένου (Content Management System)

Σύστημα διαχείρισης περιεχομένου (Content Management System) Τι είναι ένα CMS Σύστημα διαχείρισης περιεχομένου (Content Management System) Λογισμικό το οποίο χρησιμοποιείται για την οργάνωση, ταξινόμηση και αρχειοθέτηση πληροφορίας Χρησιμοποιούνται για τη δημιουργία

Διαβάστε περισσότερα

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

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ: ΕΙΔΟΣ ΜΑΘΗΜΑΤΟΣ: Μικτό Γενικός σκοπός είναι να αποκτήσει ο καταρτιζόμενος τις αναγκαίες γνώσεις σχετικά με εργαλεία και τις τεχνικές για

Διαβάστε περισσότερα

Δημοσίευση στο Διαδίκτυο

Δημοσίευση στο Διαδίκτυο ΕΣΔ200 Δημιουργία Περιεχομένου ΙI Δημοσίευση στο Διαδίκτυο Περιεχόμενα - Βιβλιογραφία Ενότητας Περιεχόμενα Εισαγωγή Δημοσίευση μιας ταινίας στο παγκόσμιο ιστό Βασικά στοιχεία HTML Τεχνικές δημιουργίας

Διαβάστε περισσότερα

hel-col@otenet.gr Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής (ΠΕ19 MSc) Ελληνικό Κολλέγιο Θεσσαλονίκης kparask@hellenic-college.

hel-col@otenet.gr Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής (ΠΕ19 MSc) Ελληνικό Κολλέγιο Θεσσαλονίκης kparask@hellenic-college. Χρήση της Διεπαφής Προγραμματισμού Εφαρμογής Google Maps για τη δημιουργία διαδραστικού χάρτη με τα Μνημεία Παγκόσμιας Πολιτιστικής Κληρονομιάς της ΟΥΝΕΣΚΟ στη Θεσσαλονίκη Εμμανουήλ Τσάμης 1, Κωνσταντίνος

Διαβάστε περισσότερα

Πρόλογος... 7 ΕΙΔΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

Πρόλογος... 7 ΕΙΔΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος... 7 ΕΙΔΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ Α Δομή και λειτουργία προσωπικού υπολογιστή...11 ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ Β Δομή και χρήση λειτουργικών συστημάτων DOS, UNIX και λειτουργικού

Διαβάστε περισσότερα

Αικατερίνη Καμπάση, PhD. Τμήμα Προστασίας και Συντήρησης Πολιτισμικής Κληρονομιάς Α.Τ.Ε.Ι. Ιονίων Νήσων

Αικατερίνη Καμπάση, PhD. Τμήμα Προστασίας και Συντήρησης Πολιτισμικής Κληρονομιάς Α.Τ.Ε.Ι. Ιονίων Νήσων Αικατερίνη Καμπάση, PhD Τμήμα Προστασίας και Συντήρησης Πολιτισμικής Κληρονομιάς Α.Τ.Ε.Ι. Ιονίων Νήσων Ζάκυνθος 2011 2 ΠΕΡΙΕΧΟΜΕΝΑ ΕΝΟΤΗΤΑ 1: ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ 5 1.1 Βάσεις Δεδομένων 7 1.2

Διαβάστε περισσότερα

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων Ενότητα 4 Επεξεργασία πινάκων 36 37 4.1 Προσθήκη πεδίων Για να εισάγετε ένα πεδίο σε ένα πίνακα που υπάρχει ήδη στη βάση δεδομένων σας, βάζετε τον κέρσορα του ποντικιού στο πεδίο πάνω από το οποίο θέλετε

Διαβάστε περισσότερα

Στρατηγική ανάπτυξη δικτυακού κόμβου

Στρατηγική ανάπτυξη δικτυακού κόμβου ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Παντελής Παντελίδης Στρατηγική ανάπτυξη δικτυακού κόμβου Επιβλέπουσα Καθηγήτρια: Μάρω Βλαχοπούλου Εξετάστρια:

Διαβάστε περισσότερα

Σχεδίαση και ανάπτυξη ιστοχώρου του εργαστηρίου Μηχανικής Λογισμικού. Παληόπουλος Αποστόλης-Παπαναγιώτου Παναγιώτης

Σχεδίαση και ανάπτυξη ιστοχώρου του εργαστηρίου Μηχανικής Λογισμικού. Παληόπουλος Αποστόλης-Παπαναγιώτου Παναγιώτης Σχεδίαση και ανάπτυξη ιστοχώρου του εργαστηρίου Μηχανικής Λογισμικού Π λ ό λ Α όλ Π ώ Παληόπουλος Αποστόλης-Παπαναγιώτου Παναγιώτης Σκοπός και χρησιμότητα της δημιουργίας portal για το τομέα Μικροϋπολογιστών.

Διαβάστε περισσότερα

ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr. Εγχειρίδιο Χρήσης Μελών ΔΕΠ

ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr. Εγχειρίδιο Χρήσης Μελών ΔΕΠ ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr Εγχειρίδιο Χρήσης Μελών ΔΕΠ Αναζήτηση Δημόσιου Περιεχομένου Η διεύθυνση ιστού της νεάς πλατφόρμας διαχείρισης βιντεοδιαλέξεων Δήλος είναι: http://delos.uoa.gr

Διαβάστε περισσότερα

Διαφορές single-processor αρχιτεκτονικών και SoCs

Διαφορές single-processor αρχιτεκτονικών και SoCs 13.1 Τα συστήματα και η επικοινωνία μεταξύ τους γίνονται όλο και περισσότερο πολύπλοκα. Δεν μπορούν να περιγραφούνε επαρκώς στο επίπεδο RTL καθώς αυτή η διαδικασία γίνεται πλέον αρκετά χρονοβόρα. Για αυτό

Διαβάστε περισσότερα

Μονάδα Διασφάλισης Ποιότητας. ΜΟΔΙΠ Πανεπιστημίου Δυτικής Μακεδονίας. Κωδικός Πράξης ΟΠΣ: Επιχειρησιακό Πρόγραμμα:

Μονάδα Διασφάλισης Ποιότητας. ΜΟΔΙΠ Πανεπιστημίου Δυτικής Μακεδονίας. Κωδικός Πράξης ΟΠΣ: Επιχειρησιακό Πρόγραμμα: Μονάδα Διασφάλισης Ποιότητας Πανεπιστημίου Δυτικής Μακεδονίας Κωδικός Πράξης ΟΠΣ: 335662 Τίτλος Πράξης: ΜΟΔΙΠ Πανεπιστημίου Δυτικής Μακεδονίας Επιχειρησιακό Πρόγραμμα: Άξονας Προτεραιότητας: Στοιχεία επιστημονικά

Διαβάστε περισσότερα

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

Δυναμικές Ιστοσελίδες στο Πανελλήνιο Σχολικό Δίκτυο Δυναμικές Ιστοσελίδες στο Πανελλήνιο Σχολικό Δίκτυο Δρ. Χρήστος Όροβας Τεχνικός Υπεύθυνος 1 Διαδικασία «Φόρτωσης» μιας Ιστοσελίδας Internet Explorer, Mozilla, Chrome, κτλ HTTP Server ΠΣΔ Αίτημα για επικοινωνία

Διαβάστε περισσότερα

ΟΓΗΓΙΕΣ ΧΡΗΣΗΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΜΗΤΡΩΟΥ ΑΠΟΒΛΗΤΩΝ. Draft version

ΟΓΗΓΙΕΣ ΧΡΗΣΗΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΜΗΤΡΩΟΥ ΑΠΟΒΛΗΤΩΝ. Draft version ΟΓΗΓΙΕΣ ΧΡΗΣΗΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΜΗΤΡΩΟΥ ΑΠΟΒΛΗΤΩΝ Draft version Θεσσαλονίκη, Ιούλιος 2016 ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ... 4 1. ΓΕΝΙΚΑ... 5 1.1. Πρόσβαση... 5 1.2. Χρήστες... 5 2. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΑΤΦΟΡΜΑ ΗΜΑ... 6 2.1.

Διαβάστε περισσότερα

Εφαρμογή Βάσης Δεδομένων για την Εθελοντική Αιμοδοσία στο ΑΤΕΙ-Θ

Εφαρμογή Βάσης Δεδομένων για την Εθελοντική Αιμοδοσία στο ΑΤΕΙ-Θ Εφαρμογή Βάσης Δεδομένων για την Εθελοντική Αιμοδοσία στο ΑΤΕΙ-Θ Επιβλέπων καθηγητής Δημήτρης Αχιλ. Δέρβος Πτυχιακή εργασία του Πετράκη-Πυρετζίδη Στέφανου Σκοπός Δημιουργία βάσης δεδομένων Ανάπτυξη διαδικτυακής

Διαβάστε περισσότερα

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

Μια καλή επιλογή θα ήταν www.epipla-onomasas.gr (χωρίζοντας τις λέξεις με παύλα -) ή Τι είναι ένα CMS CMS ή Σύστημα Διαχείρισης Περιεχομένου (Content Management System) ονομάζουμε ένα λογισμικό που μας βοηθά να ελέγχουμε και να διαχειριζόμαστε έναν ιστότοπο δημόσιας ή περιορισμένης πρόσβασης.

Διαβάστε περισσότερα

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο)

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο) TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Εαρινό εξάμηνο 2014-2015 Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ «ΨΗΦΙΑΚΩΝ ΑΡΘΡΩΝ» ΜΕ ΧΡΗΣΗ ΚΑΙ ΜΕΘΟΔΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΔΙΑΔΙΚΤΥΟΥ HTML, JAVASCRIPT,

Διαβάστε περισσότερα

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25 Περιεχόμενα Κεφάλαιο 1 Εισαγωγή στην Access...9 Γνωριμία με την Access... 12 Δημιουργία βάσης δεδομένων... 18 Άνοιγμα και κλείσιμο βάσης δεδομένων... 21 Ερωτήσεις ανακεφαλαίωσης... 22 Πρακτική εξάσκηση...

Διαβάστε περισσότερα

Χρήστος Στασινός. ουλεύοντας με τη. Microsoft Access ΑΘΗΝΑ

Χρήστος Στασινός. ουλεύοντας με τη. Microsoft Access ΑΘΗΝΑ Χρήστος Στασινός ουλεύοντας με τη Microsoft Access ΑΘΗΝΑ Κάθε γνήσιο αντίγραφο έχει την υπογραφή του συγγραφέα Έκδοση 1η, Copyright 1998 Έκδοση 2η, Copyright 2007 ISBN: 978-960-8105-97-3 ΕΚΔΟΣΕΙΣ ΝΕΩΝ

Διαβάστε περισσότερα

Τίτλος Βιβλίου: Εισαγωγή στο Wordpress 3.x. Copyright 2012, Γιώργος Μπίκας/Εκδόσεις Κλειδάριθμος

Τίτλος Βιβλίου: Εισαγωγή στο Wordpress 3.x. Copyright 2012, Γιώργος Μπίκας/Εκδόσεις Κλειδάριθμος Τίτλος Βιβλίου: Εισαγωγή στο Wordpress 3.x Copyright 2012, Γιώργος Μπίκας/Εκδόσεις Κλειδάριθμος Εκδόσεις Κλειδάριθμος Έδρα: Στουρνάρη 27Β Αθήνα 106 82 Τηλ.: 210 52.37.635 Fax: 210 52.37.677 email: info@klidarithmos.gr

Διαβάστε περισσότερα

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

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας. Η Πυξίδα Απασχόλησης είναι ένα πλήρως παραμετροποιήσιμο portal που απευθύνεται σε Κέντρα Επαγγελματικής Κατάρτισης, Δήμους, Εκπαιδευτικούς Οργανισμούς και Εταιρίες Εύρεσης Εργασίας, με στόχο τόσο την μηχανογράφηση

Διαβάστε περισσότερα

6.2 Υπηρεσίες Διαδικτύου

6.2 Υπηρεσίες Διαδικτύου 6.2 Υπηρεσίες Διαδικτύου 1 / 34 Όλες οι υπηρεσίες στο Διαδίκτυο, όπως και πολλές εφαρμογές λογισμικού, στηρίζονται στο μοντέλο Πελάτη Εξυπηρετητή. 2 / 34 Σύμφωνα με αυτό το μοντέλο ο Εξυπηρετητής οργανώνει,

Διαβάστε περισσότερα

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

Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy Σ ε λ ί δ α 1 Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy Περιεχόμενα 1. Download Arebas Easy... 2 2. Εγκατάσταση Arebas Easy... 3 3. Εγγραφή στον Arebas Server... 7 4. Παραμετροποίηση Arebas Easy...

Διαβάστε περισσότερα

ΑΣΚΗΣΗ. Συγκομιδή και δεικτοδότηση ιστοσελίδων

ΑΣΚΗΣΗ. Συγκομιδή και δεικτοδότηση ιστοσελίδων Γλωσσική Τεχνολογία Ακαδημαϊκό Έτος 2010-2011 ΑΣΚΗΣΗ Συγκομιδή και δεικτοδότηση ιστοσελίδων Σκοπός της άσκησης είναι η υλοποίηση ενός ολοκληρωμένου συστήματος συγκομιδής και δεικτοδότησης ιστοσελίδων.

Διαβάστε περισσότερα

Γιώργος Χρ. Μακρής. Σύγχρονες Γλώσσες Σήμανσης του Διαδικτύου. Αναπαράσταση Μαθηματικών κειμένων στο διαδίκτυο. Η Γλώσσα MathML

Γιώργος Χρ. Μακρής. Σύγχρονες Γλώσσες Σήμανσης του Διαδικτύου. Αναπαράσταση Μαθηματικών κειμένων στο διαδίκτυο. Η Γλώσσα MathML Σύγχρονες Γλώσσες Σήμανσης του Διαδικτύου. Αναπαράσταση Μαθηματικών κειμένων στο διαδίκτυο. Η Γλώσσα MathML Γιώργος Χρ. Μακρής Θεσσαλονίκη, Μάρτιος 2012 Αναπαράσταση Μαθηματικών Κειμένων στο διαδίκτυο

Διαβάστε περισσότερα

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης Μικρομεσαίες Επιχειρήσεις και Καινοτομία Ηλεκτρονικό Εμπόριο H δυνατότητα των καταναλωτών και των εμπορικών καταστημάτων να κάνουν

Διαβάστε περισσότερα

Η HTML 5 θα αλλάξει το Web?

Η HTML 5 θα αλλάξει το Web? Η HTML 5 θα αλλάξει το Web? (ή αλλιώς, έρχεται το τέλος των plugins?) Αλέξανδρος Καράκος Εργαστήριο Προγραµµατισµού και Επεξεργασίας Πληροφοριών Internet 2... Είναι ένα ξεχωριστό µέσο δηµοσίευσης πληροφοριών

Διαβάστε περισσότερα

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

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ 1 ΠΕΡΙΕΧΟΜΕΝΑ 1. ΑΝΑΛΥΣΗ ΜΕΝΟΥ ΕΦΑΡΜΟΓΗΣ... 4 2. ΕΠΕΞΗΓΗΣΗ ΚΕΝΤΡΙΚΟΥ ΜΕΝΟΥ ΚΑΡΤΕΛΑΣ... 5 3. ΔΗΜΙΟΥΡΓΙΑ ΠΕΛΑΤΗ... 6 4. ΑΝΑΖΗΤΗΣΗ ΠΕΛΑΤΗ... 6 5. ΕΠΕΞΕΡΓΑΣΙΑ/ΔΙΑΓΡΑΦΗ

Διαβάστε περισσότερα

Ποιες είναι οι κύριες ετικέτες που χρησιμοποιεί η HTML για την περιγραφή της συνολικής δομής μιας ιστοσελίδας;

Ποιες είναι οι κύριες ετικέτες που χρησιμοποιεί η HTML για την περιγραφή της συνολικής δομής μιας ιστοσελίδας; Τι είναι η HTML; Η HTML είναι το ακρωνύμιο των λέξεων HyperText Markup Language, δηλαδή Γλώσσα Χαρακτηρισμού Υπερ Κειμένου και βασίζεται στη γλώσσα SGML, Standard Generalized Markup Language, που είναι

Διαβάστε περισσότερα

Η Βίβλος σχετικά με το JDBC. Περιέχει τρία βασικά tutorials στα οποία θα βασιστεί το μάθημα και περιγράφει όλες τις τάξεις και τις μεθόδους που

Η Βίβλος σχετικά με το JDBC. Περιέχει τρία βασικά tutorials στα οποία θα βασιστεί το μάθημα και περιγράφει όλες τις τάξεις και τις μεθόδους που 1 Η Βίβλος σχετικά με το JDBC. Περιέχει τρία βασικά tutorials στα οποία θα βασιστεί το μάθημα και περιγράφει όλες τις τάξεις και τις μεθόδους που μπορούμε να χρησιμοποιήσουμε σε μία JDBC εφαρμογή. Υπάρχει

Διαβάστε περισσότερα

ΕΦΑΡΜΟΓΗ ΔΙΑΧΕΙΡΙΣΗΣ ΙΣΤΟΣΕΛΙΔΩΝ ΜΕΛΩΝ ΔΕΠ, ΤΜΗΜΑΤΟΣ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΑΤΡΩΝ ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΠΛΟΗΓΗΣΗΣ ΚΑΙ ΧΡΗΣΗΣ

ΕΦΑΡΜΟΓΗ ΔΙΑΧΕΙΡΙΣΗΣ ΙΣΤΟΣΕΛΙΔΩΝ ΜΕΛΩΝ ΔΕΠ, ΤΜΗΜΑΤΟΣ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΑΤΡΩΝ ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΠΛΟΗΓΗΣΗΣ ΚΑΙ ΧΡΗΣΗΣ 2013 ΕΦΑΡΜΟΓΗ ΔΙΑΧΕΙΡΙΣΗΣ ΙΣΤΟΣΕΛΙΔΩΝ ΜΕΛΩΝ ΔΕΠ, ΤΜΗΜΑΤΟΣ ΜΑΘΗΜΑΤΙΚΩΝ ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΠΛΟΗΓΗΣΗΣ ΚΑΙ ΧΡΗΣΗΣ Περιήγηση στις δυνατότητες του λογισμικού και στον τρόπο χρήσης του ΟΜΑΔΑ ΕΡΓΟΥ ΔΙΕΥΘΥΝΣΗΣ

Διαβάστε περισσότερα

Το συγκεκριμένο εγχειρίδιο δημιουργήθηκε για να βοηθήσει την κατανόηση της διαδικασίας Office Management (Ημερολόγιο Λογιστή). Παρακάτω προτείνεται

Το συγκεκριμένο εγχειρίδιο δημιουργήθηκε για να βοηθήσει την κατανόηση της διαδικασίας Office Management (Ημερολόγιο Λογιστή). Παρακάτω προτείνεται Office Management Το συγκεκριμένο εγχειρίδιο δημιουργήθηκε για να βοηθήσει την κατανόηση της διαδικασίας Office Management (Ημερολόγιο Λογιστή). Παρακάτω προτείνεται μια αλληλουχία ενεργειών την οποία

Διαβάστε περισσότερα

TCExam 10.0. Ερευνητικό και Ακαδημαϊκό Ινστιτούτο Τεχνολογίας Υπολογιστών, christak@cti.gr 2

TCExam 10.0. Ερευνητικό και Ακαδημαϊκό Ινστιτούτο Τεχνολογίας Υπολογιστών, christak@cti.gr 2 TCExam 10.0 Χ.Χριστακούδης 1, Γ. Ανδρουλάκης 2 1 Ερευνητικό και Ακαδημαϊκό Ινστιτούτο Τεχνολογίας Υπολογιστών, christak@cti.gr 2 Τμήμα Διοίκησης Επιχειρήσεων, Πανεπιστήμιο Πατρών, gandroul@upatras.gr TCEXam

Διαβάστε περισσότερα

Κεφάλαιο 4: Λογισμικό Συστήματος

Κεφάλαιο 4: Λογισμικό Συστήματος Κεφάλαιο 4: Λογισμικό Συστήματος Ερωτήσεις 1. Να αναφέρετε συνοπτικά τις κατηγορίες στις οποίες διακρίνεται το λογισμικό συστήματος. Σε ποια ευρύτερη κατηγορία εντάσσεται αυτό; Το λογισμικό συστήματος

Διαβάστε περισσότερα

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

Οδηγίες Χρήσης της MySQL ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΗΜΕΙΩΣΕΙΣ ΣΕ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Οδηγίες Χρήσης της MySQL Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Νοέμβριος 2007 1 Περιεχόμενα Εισαγωγή...2

Διαβάστε περισσότερα

Οδηγίες Χρήσης Πλατφόρμας Ασύγχρονης Τηλεκπαίδευσης (Moodle) του Τμήματος ΔΕΤ

Οδηγίες Χρήσης Πλατφόρμας Ασύγχρονης Τηλεκπαίδευσης (Moodle) του Τμήματος ΔΕΤ Οδηγίες Χρήσης Πλατφόρμας Ασύγχρονης Τηλεκπαίδευσης (Moodle) του Τμήματος ΔΕΤ -Για τους Φοιτητές- Έκδοση 1.2 Οκτώβριος 2015 Υπεύθυνος Σύνταξης: Χρήστος Λάζαρης (lazaris@aueb.gr) Πίνακας Περιεχομένων Εισαγωγή...

Διαβάστε περισσότερα

Διαχείριση Πολιτισμικών Δεδομένων

Διαχείριση Πολιτισμικών Δεδομένων Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Διαχείριση Πολιτισμικών Δεδομένων Ενότητα 6: Εισαγωγή στις Βάσεις Δεδομένων Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και

Διαβάστε περισσότερα

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

ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών World Wide Web (WWW) Θέματα Επεξεργασία δεδομένων στο Web Δημιουργία απλών σελίδων HTML Περιγραφή κάποιων XHTML στοιχείων (tags) Εξέλιξης του WWW Το WWW

Διαβάστε περισσότερα

Διαχείριση Βάσης Δεδομένων (dbadmin)

Διαχείριση Βάσης Δεδομένων (dbadmin) Published on PRISMA Win Help - Megasoft (http://docs.megasoft.gr) Home > Εμπορική Διαχείριση > Διαχείριση Βάσης Δεδομένων (dbadmin) Διαχείριση Βάσης Δεδομένων (dbadmin) Μέσα από τη διαχείριση βάσης δεδομένων

Διαβάστε περισσότερα

Περιεχόμενα. Γαβαλάς Δαμιανός Τρέχον status της HTML

Περιεχόμενα. Γαβαλάς Δαμιανός Τρέχον status της HTML Δικτυακά Πολυμέσα ΙΙ Διάλεξη #2 η : Βασικές έννοιες σχεδιασμού στο web Γαβαλάς Δαμιανός dgavalas@aegean.gr Περιεχόμενα Τρέχον status της HTML Μετάβαση από την HTML στην XHTML Κλέ Καλές πρακτικές συγγραφής

Διαβάστε περισσότερα

Blog στο Wordpress. Επιμέλεια: Δέγγλερη Σοφία

Blog στο Wordpress. Επιμέλεια: Δέγγλερη Σοφία Blog στο Wordpress Επιμέλεια: Δέγγλερη Σοφία Περιεχόμενα Μετάβαση στο blog Σύνδεση ως διαχειριστής Πίνακας ελέγχου Εμφάνιση Ρυθμίσεις Άρθρα Σελίδες Πολυμέσα Σύνδεσμοι Widgets Μετάβαση στο blog Πληκτρολογούμε

Διαβάστε περισσότερα

ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ.

ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ. ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ. Οδηγός Διαχειριστή Το m-learning Toolkit είναι μια ολοκληρωμένη πλατφόρμα εξ αποστάσεως εκπαίδευσης που έχει σχεδιαστεί για να υπάρχει η δυνατότητα της πρόσβασης

Διαβάστε περισσότερα

Διαγραφή Επιλέγετε Διαγραφή για να διαγράψετε μία ήδη υπάρχουσα διαδικασία εισαγωγής ASCII

Διαγραφή Επιλέγετε Διαγραφή για να διαγράψετε μία ήδη υπάρχουσα διαδικασία εισαγωγής ASCII Published on PRISMA Win Help - Megasoft (http://docs.megasoft.gr) Home > Διαχείριση Βάσης Δεδομένων (dbadmin) > Αρχεία Αρχεία Εισαγωγή από αρχείο ASCII Με την εργασία αυτή έχετε την δυνατότητα να εισάγετε

Διαβάστε περισσότερα

Οδηγός γρήγορης εκκίνησης

Οδηγός γρήγορης εκκίνησης Οδηγός γρήγορης εκκίνησης Το Microsoft Word 2013 έχει διαφορετική εμφάνιση από προηγούμενες εκδόσεις. Γι αυτό το λόγο, δημιουργήσαμε αυτόν τον οδηγό για να ελαχιστοποιήσουμε την καμπύλη εκμάθησης. Γραμμή

Διαβάστε περισσότερα

A J A X AJAX Γιάννης Αρβανιτάκης

A J A X AJAX Γιάννης Αρβανιτάκης A J A X AJAX Γιάννης Αρβανιτάκης 04/07/08 AJAX Στην πράξη 2 Autocomplete AJAX Στην πράξη 3 Webmail (google, yahoo) AJAX Στην πράξη 4 Flickr AJAX Στην πράξη 5 Google Docs AJAX Στην πράξη 6 Google maps http://maps.google.com/

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAVIS-V1-2012 TRAVIS Λογισμικό Διαχείρισης Παραβάσεων Φωτοεπισήμανσης Το σύστημα διαχείρισης παραβάσεων φωτοεπισήμανσης

Διαβάστε περισσότερα

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

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ. Τρίτη, 7 Φεβρουαρίου 2012 ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ Τρίτη, 7 Φεβρουαρίου 2012 Για την εταιρεία ACTS : Παπαγεωργίου Κων/νος Ποτιέ 21/ Χανιά, ΤΚ 73100 AΦΜ: 065439343 Τηλ./Fax:

Διαβάστε περισσότερα

Γαβαλάς αµιανός

Γαβαλάς αµιανός Πανεπιστήµιο Αιγαίου Σχολή Κοινωνικών Επιστηµών Τµήµα Πολιτισµικής Τεχνολογίας Και Επικοινωνίας ικτυακά Πολυµέσα Ι (Β Έτος, 3ο εξ) Εργαστήριο #1ο: Εισαγωγή στην HTML Γαβαλάς αµιανός dgavalas@aegean.gr

Διαβάστε περισσότερα

Γλώσσες Σήµανσης (Markup Languages) Τεχνολογία ιαδικτύου και Ηλεκτρονικό Εµπόριο

Γλώσσες Σήµανσης (Markup Languages) Τεχνολογία ιαδικτύου και Ηλεκτρονικό Εµπόριο Γλώσσες Σήµανσης (Markup Languages) Τεχνολογία ιαδικτύου και Ηλεκτρονικό Εµπόριο 1 Γλώσσες Σήµανσης Γλώσσες σήµανσης: Αρχικά για τον καθορισµό εµφάνισης σελίδων, γραµµατοσειρών. Στη συνέχεια επεκτάθηκαν

Διαβάστε περισσότερα

Περιεχόμενα. Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών Μέρος 2: Χρήση υπολογιστή και διαχείριση αρχείων Πρόλογος...

Περιεχόμενα. Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών Μέρος 2: Χρήση υπολογιστή και διαχείριση αρχείων Πρόλογος... Περιεχόμενα Πρόλογος...11 Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών... 13 1.1 Εισαγωγή στους υπολογιστές... 15 1.2 Μονάδες μέτρησης... 27 1.3 Οι βασικές λειτουργίες ενός ηλεκτρονικού υπολογιστή...

Διαβάστε περισσότερα

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access Κεφάλαιο 2 Χειρισμός πινάκων... 27

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access Κεφάλαιο 2 Χειρισμός πινάκων... 27 Περιεχόμενα Κεφάλαιο 1 Εισαγωγή στην Access... 9 Γνωριμία με την Access... 12 Δημιουργία βάσης δεδομένων... 22 Άνοιγμα και κλείσιμο βάσης δεδομένων... 24 Ερωτήσεις ανακεφαλαίωσης... 25 Πρακτική εξάσκηση...

Διαβάστε περισσότερα

CSS Εργαστήριο 1. Εισαγωγή - Σύνταξη - Εφαρμογή στην HTML

CSS Εργαστήριο 1. Εισαγωγή - Σύνταξη - Εφαρμογή στην HTML CSS Εργαστήριο 1. Εισαγωγή - Σύνταξη - Εφαρμογή στην HTML Εισαγωγή Το CSS (Cascading Style Sheets ή Επικαλυπτόμενα Φύλλα Στυλ) μας επιτρέπει να αλλάξουμε τον τρόπο με τον οποίο παρουσιάζονται τα στοιχεία

Διαβάστε περισσότερα

Οι διαδικασίες ενος CMS είναι σχεδιασμένες για να:

Οι διαδικασίες ενος CMS είναι σχεδιασμένες για να: CMS Content Management System Σύστημα Διαχείρισης Περιεχομένου Ένα σύστημα διαχείρισης περιεχομένου (CMS) είναι μια συλλογή απο διαδικασίες που χρησιμοποιούνται για τη διαχείριση της ροής εργασίας σε ένα

Διαβάστε περισσότερα

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

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΠΕΛΑΤΩΝ ELTA Courier. Ιούνιος ELTA Courier Διεύθυνση Πληροφορικής

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΠΕΛΑΤΩΝ ELTA Courier. Ιούνιος ELTA Courier Διεύθυνση Πληροφορικής ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΠΕΛΑΤΩΝ ELTA Courier Ιούνιος 2018 ELTA Courier Διεύθυνση Πληροφορικής itsupport@elta-courier.gr Σελίδα 1 Ο χρήστης καλείται να πληκτρολογήσει τον κωδικό του Πελάτη, τον Χρήστη

Διαβάστε περισσότερα

Οδηγός γρήγορης εκκίνησης του PowerSuite

Οδηγός γρήγορης εκκίνησης του PowerSuite Το PowerSuite είναι η ολοκληρωμένη λύση απόδοσης για τον υπολογιστή σας. Ενσωματώνοντας το RegistryBooster, το DriverScanner και το SpeedUpMyPC σε ένα ενιαίο περιβάλλον εργασίας σάρωσης, το PowerSuite

Διαβάστε περισσότερα

Αν Ναι, δείτε πως με το λογισμικό axes μπορείτε!

Αν Ναι, δείτε πως με το λογισμικό axes μπορείτε! Θέλετε να μάθετε πως μπορείτε να έχετε πρόσβαση στις 5250 οθόνες μέσω browser, χωρίς αλλαγή στις υπάρχουσες εφαρμογές και χωρίς εγκατάσταση στον client? Αν Ναι, δείτε πως με το λογισμικό axes μπορείτε!

Διαβάστε περισσότερα