• Nenhum resultado encontrado

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

N/A
N/A
Protected

Academic year: 2023

Share "ΑΝΑΠΤΥΞΗ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ ΑΛΙΕΩΝ ΜΕ EVENT TRIGGERS."

Copied!
91
0
0

Texto

(1)

Τ.Ε.Ι ΚΑΒΑΛΑΣ

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

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

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

ΥΛΟΠΟΙΗΣΗ :

Κουκλίδης Γεώργιος Α.Ε.Μ : 1442 Σταμκοπούλου Γεωργία Α.Ε.Μ : 1600

ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ : Τσινάκος Αύγουστος

Καβάλα, Μάιος 2011

(2)

Σελίδα 1 από 90

(3)

Σελίδα 2 από 90

Ευχαριστίες

Αρχικά θα θέλαμε να ευχαριστήσουμε τον επιβλέπων καθηγητή μας Δρ.

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

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

(4)

Σελίδα 3 από 90

Περιεχόμενα

Πρόλογος ... 6

Επισκόπηση Κεφαλαίων ... 8

Κεφάλαιο 1 ... 9

1.Εισαγωγή ... 9

1.1 Έρευνα και συγκέντρωση υλικού... 9

1.2 Απαιτούμενος Εξοπλισμός ... 10

1.2.1 Εργαλεία που χρησιμοποιήθηκαν ... 10

1.2.1.1 Λειτουργικό σύστημα... 10

1.2.1.2 Εξυπηρετητής Ιστού (Web Server) – Apache ... 10

1.2.1.3 Σύστημα Διαχείρισης Βάσεων Δεδομένων (ΣΔΒΔ) ... 11

1.2.1.4 PHP ... 11

1.2.1.5 Dreamweavercs4 ... 12

1.2.1.6 PhpMyAdmin ... 12

1.3 Σύνοψη ... 14

Κεφάλαιο 2 ... 15

2.1 Λειτουργικές Απαιτήσεις της Εφαρμογής ... 15

2.1.1 Λειτουργικές Απαιτήσεις που αφορούν τον Χρήστη. ... 15

2.1.2 Λειτουργικές Απαιτήσεις που αφορούν τον Διαχειριστή του Συστήματος ... 16

2.2 Προδιαγραφές ... 17

2.2.1 Προδιαγραφές Διεργασιών Χρήστη ... 17

2.2.2 Προδιαγραφές Διεργασιών Διαχειριστή... 19

2.3 Διαγράμματα Ροής ... 22

2.3.1 Διάγραμμα Ροής Χρήστη/Επισκέπτη ... 22

2.3.2 Διάγραμμα Ροής Διαχειριστή ... 23

2.4 Σύνοψη ... 25

Κεφάλαιο 3 ... 26

3.1 Προϊόντα Λογισμικού ... 26

3.1.1 Phpmyedit ... 26

3.1.2 Phpmailer ... 28

3.1.3 Sms ... 30

(5)

Σελίδα 4 από 90

3.2 Η ανάγκη για Βάση Δεδομένων ... 33

3.2.1 Βάση Δεδομένων της Ιστοσελίδας του GreekFishermen ... 34

3.2.2 Μοντέλο Οντοτήτων-Συσχετίσεων ... 36

3.3 Σύνοψη ... 39

Κεφάλαιο 4 ... 40

4.1 Οδηγός σωστής και εύκολης χρήσης της ιστοσελίδας. ... 40

4.1.1Περιγραφή Λειτουργίας της Ιστοσελίδας μας όσων αφορά τους χρήστες. ... 40

4.1.1.1 Είσοδος Χρήστη ... 40

4.1.1.2 Δημιουργία Λογαριασμού Χρήστη ... 43

4.1.1.3 Αρχική ... 45

4.1.1.4 Προφίλ Χρήστη ... 46

4.1.1.5 Άδειες ... 50

4.1.1.6 Επαγγελματίες ... 51

4.1.1.7 Ερασιτέχνες ... 55

4.1.1.8 Σκάφη ... 56

4.1.2 Περιγραφή Λειτουργίας της Ιστοσελίδας μας όσων αφορά τον διαχειστή ... 62

4.1.2.1 Είσοδος Διαχειριστή... 62

4.1.2.2 Πίνακας Χρηστών ... 64

4.1.2.3 Φόρμα Αποστολής Εmail Διαχειριστή ... 64

4.1.2.4 Φόρμα Αποστολής Sms Διαχειριστή ... 66

4.1.2.5 Αναζήτηση στον πίνακα Χρηστών ... 66

4.1.2.6 Προσθήκη Χρηστών... 67

4.1.2.7 Επεξεργασία στοιχείων Χρήστη... 68

4.1.2.8 Πίνακας Αδειών ... 69

4.1.2.9 Πίνακας Σκαφών ... 70

4.1.2.10 Πίνακας Εργαζομένων ... 71

4.1.2.11 Ειδική Αναζήτηση Διαχειριστή ... 72

4.1.2.12 Ενημέρωση Χρηστών από τον Διαχειριστή ... 73

4.1.2.13 Αποσύνδεση Διαχειριστή από την εφαρμογή ... 74

4.2 Σύνοψη ... 75

Κεφάλαιο 5 ... 76

5.1 Επίλογος- Ανασκόπηση Πτυχιακής Εργασίας ... 76

5.1.1 Συμπεράσματα ... 76

(6)

Σελίδα 5 από 90

5.1.2Δυσκολίες που συναντήσαμε ... 77

5.1.3 Υλοποίηση της εφαρμογής ... 77

5.1.4 Μελλοντική Εξέλιξη της Εφαρμογής ... 78

Παράρτημα ... 79

Εγκατάσταση απαιτούμενω προγραμμάτων ... 79

Τρόπος εγκατάστασης WebServer - Apache ... 79

Σχήμα Σχέσεων ... 84

Σελίδες Επίσκεψης ... 87

Σελίδες Χρήστη ... 87

Σελίδες Διαχειριστή... 88

Βιβλιογραφία ... 90

(7)

Σελίδα 6 από 90

Πρόλογος

Ο τίτλος της πτυχιακής αυτής εργασίας είναι «Ανάπτυξη Διαδικτυακής Εφαρμογής Δεδομένων Αλιέων με event triggers.» Η εφαρμογή ζητήθηκε για χρήση από αλιείς, είτε επαγγελματίες είτε ερασιτέχνες.

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

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

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

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

Η εφαρμογή στηρίζεται στην δυναμική γλώσσα προγραμματισμού PHP. Απαραίτητη προϋπόθεση για την λειτουργία ενός τέτοιου web-site είναι η ύπαρξη βάσης δεδομένων (ΒΔ) για να γίνει δυνατή η αποθήκευση και η διαχείριση των αδειών και σκαφών και πολλών παραμέτρων καθώς και ένα σύστημα διαχείρισης βάσεων δεδομένων. Για την

(8)

Σελίδα 7 από 90

τελευταία ανάγκη επιλέχτηκε η MySQL. Και τα δύο πακέτα λογισμικού διατίθενται δωρεάν.

Το παρόν κείμενο της εργασίας περιλαμβάνει πέντε κεφάλαια τα οποία παρουσιάζονται συνοπτικά παρακάτω.

(9)

Σελίδα 8 από 90 Επισκόπηση Κεφαλαίων

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

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

Το τρίτο κεφάλαιο αναλύει εκτενέστερα τον τρόπο με τον οποίο υλοποιήθηκαν

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

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

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

(10)

Σελίδα 9 από 90

ΚΕΦΑΛΑΙΟ 1

1. Εισαγωγή

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

1.1 Έρευνα και Συγκέντρωση Υλικού

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

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

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

(11)

Σελίδα 10 από 90

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

1.2 Απαιτούμενος Εξοπλισμός

 Γλώσσες: html, php, stylesheets (css)

 Mysql

 PHP –apache http server

 Dreamweaver

Η εφαρμογή αυτή αναπτύχθηκε με χρήση του εργαλείου DreamWeaver το οποίο υποστηρίζει την γλώσσα Php και την βάση δεδομένων MySql. Επίσης χρησιμοποιήθηκε και η PhpMyAdmin η οποία είναι απαραίτητη για την δημιουργία της βάσης δεδομένων.

1.2.1 Εργαλεία που χρησιμοποιήθηκαν

1.2.1.1 Λειτουργικό σύστημα

Λόγω της μεγαλύτερης εξοικείωσης με το περιβάλλον των Windows, η ιστοσελίδα GreekFishermen δημιουργήθηκε και αναπτύχθηκε στο λειτουργικό σύστημα Windows 7.Από εκεί και πέρα, τα εργαλεία που χρησιμοποιήθηκαν διατίθενται δωρεάν στο internet. Για μόνο ένα από αυτά (Dreamweaver cs4) απαιτείται η σχετική άδεια χρήσης.

1.2.1.2 Εξυπηρετητής Ιστού (Web Server) – Apache

Ο web server που επιλέχθηκε είναι ο Apache. Ο Apache HTTP Server αποτελεί μια προσπάθεια ανάπτυξης από κοινού του λογισμικού εξυπηρετητή, από μια ομάδα εθελοντών από όλο τον κόσμο με τις διαδικασίες επικοινωνίας, σχεδιασμού και ανάπτυξης να πραγματοποιούνται μέσω διαδικτύου.

(12)

Σελίδα 11 από 90

Το λογισμικό αυτό εξυπηρετεί στατικό αλλά και δυναμικό περιεχόμενο στο περιβάλλον του παγκόσμιου ιστού, καθώς πολλά προϊόντα λογισμικού σχεδιάζονται ώστε να δουλεύουν σε περιβάλλον Apache.

 Συνοπτικά, ο Apache http server υποστηρίζει:

 Γλώσσες προγραμματισμού για servers

 Σχήματα ταυτοποίησης

 Περιβάλλοντα γλωσσών όπως οι Perl, Python, PHP

 Επεκτάσεις ταυτοποίησης

 Πρωτόκολλα SSL και TLS

 Λειτουργία επανεγγραφής των URL

 Φιλτράρισμα μέσω mod_incluce και mod_ext_filter

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

Η MySQL είναι ένα πολύ γρήγορο και δυνατό σύστημα διαχείρισης σχεσιακών βάσεων δεδομένων. Μια βάση δεδομένων επιτρέπει να γίνεται αποθήκευση, αναζήτηση, και να ανακαλεί τα δεδομένα μας αποτελεσματικά. Ο διακομιστής MySQL ελέγχει την πρόσβαση στα δεδομένα μας για να διασφαλίσει ότι πολλοί χρήστες θα μπορούν να δουλεύουν ταυτόχρονα, για να παρέχει γρήγορη πρόσβαση και για να διασφαλίσει ότι μόνο οι πιστοποιημένοι χρήστες θα μπορούν να έχουν πρόσβαση. Συνεπώς, η MySQL είναι ένας πολυνηματικός διακομιστής πολλαπλών χρηστών. Χρησιμοποιεί την SQL (Structured Query Language), την γλώσσα ερωτημάτων για βάσεις δεδομένων παγκόσμια.

1.2.1.4 Php

Η PHP είναι μια γλώσσα script από την πλευρά του διακομιστή, σχεδιασμένη ειδικά για το Web. Μέσα σε μια σελίδα html μπορεί να ενσωματθεί κώδικας PHP, που θα

(13)

Σελίδα 12 από 90

εκτελείται κάθε φορά που κάποιος θα επισκέπτεται την σελίδα. Ο PHP κώδικας μεταφράζεται στον διακομιστή Web και δημιουργεί κώδικα html ή άλλη έξοδο που θα δει ο επισκέπτης.

Αρχικά η PHP ήταν ακρώνυμο του Personal Home Page (προσωπική αρχική σελίδα), αλλά άλλαξε σύμφωνα με τη σύμβαση GNU και τώρα είναι ακρώνυμο του PHP Hypertext Preprocessor (προεπεξεργαστής κειμένου PHP).

1.2.1.5 Dreamweaver cs4

Το λογισμικό πακέτο DreamWeaver cs4 της εταιρείας adobe είναι ένα πρόγραμμα δημιουργίας και επεξεργασίας ιστοσελίδων, δηλαδή κώδικα HTML, που είναι ιδιαίτερα εύκολο και φιλικό στη χρήση του. Το DreamWeaver είναι ιδανικό στο να μπορούμε να δημιουργήσουμε γρήγορα φόρμες (forms), πλαίσια (frames), πίνακες (tables) και άλλα αντικείμενα της HTML. Είναι, όμως, ιδιαίτερα καλό όταν δίνεται σε μια ιστοσελίδα η δυνατότητα να κάνει κάτι. Επίσης, το πρόγραμμα αυτό μπορεί να χρησιμοποιηθεί και για τη δημιουργία εφαρμογών πολυμέσων.

Το DreamWeaver έχει δυνατότητες για δημιουργία δυναμικής HTML (DHMTL) και επιτρέπει απόλυτη τοποθέτηση περιεχομένων, δημιουργία επιπέδων (layers) και συγγραφή (scripts). Περιέχει δικές του συμπεριφορές (behaviors), που είναι έτοιμα scripts τα οποία μπορούμε να προσθέσουμε πολύ εύκολα σε ένα αντικείμενο.

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

1.2.1.6 PhpMyAdmin

Η phpMyAdmin είναι ένα εργαλείο με γραφικό περιβάλλον (GUI) που αποτελείται από ένα σύνολο php scripts με το οποίο διαχειρίζονται οι βάσεις δεδομένων που είναι μέσω web. Η phpMyAdmin μπορεί να διαχειριστεί ένα ολόκληρο mysql server ή ακόμα και απλές βάσεις δεδομένων όπου ο κάθε χρήστης έχει ένα λογαριασμό και μπορεί να δημιουργήσει και να διαχειριστεί τις δικές του βάσεις δεδομένων. Ό,τι δηλαδή μπορεί να γίνει από την γραμμή εντολών της MySQL, μπορεί να γίνει πολύ πιο εύκολα από την phpMyAdmin.

(14)

Σελίδα 13 από 90

 Συνοπτικά, με την phpMyAdmin δίνονται οι παρακάτω δυνατότητες:

 δημιουργία και διαγραφή βάσεις δεδομένων

 δημιουργία , διαγραφή και χειρισμός πινάκων

 διαγραφή, προσθήκη και επεξεργασία πεδίων πινάκων

 εκτέλεση ερωτημάτων και εξαγωγή αποτελεσμάτων σε οποιαδήποτε μορφή (text, sql, csv κτλ)

 δυνατότητα εξαγωγής (back-up) πεδίων, πίνακων αλλά και ολόκληρων βάσεων δεδομένων.

Εικόνα 1: Εισαγωγή στην PhpMyAdmin

Εικόνα 2: Η PhpMyAdmin παρουσιάζοντας τους πίνακες

(15)

Σελίδα 14 από 90 1.3 Σύνοψη

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

(16)

Σελίδα 15 από 90

ΚΕΦΑΛΑΙΟ 2

2.1 Λειτουργικές Απαιτήσεις της Εφαρμογής

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

Οι απαιτήσεις της ιστοσελίδας καταγράφηκαν με βάση τις ανάγκες που προϋποθέτουν την σωστή λειτουργία της. Παρακάτω αναφέρονται όλες οι απαιτήσεις της εφαρμογής για τον χρήστη και τον διαχειριστή του συστήματος.

2.1.1 Λειτουργικές Απαιτήσεις που αφορούν τον Χρήστη.

1. Δυνατότητα εγγραφής στην ιστοσελίδα.

2. Όταν κάνει εγγραφή λαμβάνει email με τα στοιχεία του λογαριασμού του.

3. Δυνατότητα εισόδου στην ιστοσελίδα με το όνομα χρήστη που επέλεξε ο χρήστης και τον αριθμό πρόσβασης.

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

5. Δυνατότητα αλλαγής κωδικού πρόσβασης από τον χρήστη.

6. Ύπαρξη χρήσιμων αρχείων pdf και κατάλληλων Φ.Ε.Κ στην αρχική σελίδα για σωστή ενημέρωση-πληροφόρηση του χρήστη.

7. Δυνατότητα εισαγωγής αδειών και σκαφών του χρήστη καθώς και του προσωπικού που εργάζεται στο σκάφος.

8. Ενημέρωση του μέλους-χρήστη για την λήξη των αδειών με αποστολή email και sms αυτόματα από την εφαρμογή.

9. Δυνατότητα επεξεργασίας σε οποιοδήποτε στοιχείο επιθυμεί.

(17)

Σελίδα 16 από 90

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

11. Δυνατότητα αποστολής email στον διαχειριστή του συστήματος για οποιαδήποτε πληροφορία ή αλλαγή κάποιου από τα στοιχεία που δεν μπορεί να αλλάξει μόνος του.

2.1.2 Λειτουργικές Απαιτήσεις που αφορούν τον Διαχειριστή του Συστήματος

1. Αναζήτηση συγκεκριμένων αδειών στην βάση δεδομένων.

2. Εισαγωγή χρήστη.

3. Επεξεργασία στοιχείων χρήστη.

4. Διαγραφή χρήστη.

5. Αναζήτηση χρηστών με όποιο πεδίο θέλει.

6. Αναζήτηση κάθε είδους άδειας, είτε βάσει ημερομηνίας, είτε όνομα χρήστη κ.ά.

7. Αποστολή email και sms στους χρήστες.

8. Εξαγωγή όλων των στοιχείων της βάσης σε φύλλο excel.

9. Δημιουργία Αντιγράφων Ασφαλείας(back-up).

10. Ενημέρωση και αναζήτηση χρηστών με ληξιπρόθεσμες άδειες, με email και sms.

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

(18)

Σελίδα 17 από 90

2.2 Προδιαγραφές

2.2.1 Προδιαγραφές Διεργασιών Χρήστη

Τίτλος Δημιουργία Λογαριασμού

Περιγραφή Ο χρήστης κάνει εγγραφή στην

ιστοσελίδα.

Είσοδος Πληκτρολογεί όλα τα απαιτούμενα

στοιχεία (Όνομα, Επώνυμο κ.τ.λ).

Έξοδος Στοιχεία Χρήστη.

Πηγή Χρήστης.

Προορισμός Σελίδα για είσοδο του χρήστη.

Τίτλος Είσοδος στην ιστοσελίδα

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

Είσοδος Ο χρήστης πληκτρολογεί το όνομα χρήστη

και τον κωδικό πρόσβασης για να κάνει είσοδο.

Έξοδος Σελίδα για επιτυχή σύνδεση.

Πηγή Χρήστης.

Προορισμός Εμφάνιση Αρχικής σελίδας .

Τίτλος Υπενθύμιση Στοιχείων

Περιγραφή Αποστολή email για επαναφορά των

στοιχείων εισόδου στην εφαρμογή.

Είσοδος Ο χρήστης κάνει κλικ στον σύνδεσμο για

υπενθύμιση στοιχείων.

Έξοδος Επιτυχής αποστολή email.

Πηγή Χρήστης.

Προορισμός Εμφάνιση σελίδας για είσοδο χρήστη.

(19)

Σελίδα 18 από 90

Τίτλος Καταχώρηση Άδειας

Περιγραφή Προσθήκη άδειας που έχει στην κατοχή

του ο χρήστης.

Είσοδος Ο χρήστης επιλέγει την άδεια που θέλει να προσθέσει και συμπληρώνει κάποια απαραίτητα στοιχεία της.

Έξοδος Σελίδα για επιτυχή καταχώρηση και

επιστροφή στην αρχική.

Πηγή Χρήστης.

Προορισμός Επιτυχής καταχώρηση άδειας.

Τίτλος Καταχώρηση Σκάφους

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

του ο χρήστης.

Είσοδος Ο χρήστης συμπληρώνει τα απαραίτητα

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

Έξοδος Σελίδα για επιτυχή καταχώρηση και

επιστροφή στην αρχική.

Πηγή Χρήστης.

Προορισμός Επιτυχής καταχώρηση σκάφους .

Τίτλος Επεξεργασία Προφίλ

Περιγραφή Επεξεργασία των προσωπικών στοιχείων

σε περίπτωση λάθους.

Είσοδος Ο χρήστης επεξεργάζεται τα στοιχεία που

θέλει.

Έξοδος Αποθήκευση νέων στοιχείων.

Πηγή Χρήστης.

Προορισμός Επιτυχής καταχώρηση νέων στοιχείων.

(20)

Σελίδα 19 από 90

Τίτλος Επεξεργασία Άδειας/Σκάφους

Περιγραφή Επεξεργασία των στοιχείων στην φόρμα άδειας ή σκάφους αντίστοιχα.

Είσοδος Ο χρήστης επεξεργάζεται τα στοιχεία που

θέλει.

Έξοδος Αποθήκευση νέων στοιχείων.

Πηγή Χρήστης.

Προορισμός Επιτυχής καταχώρηση νέων στοιχείων.

Τίτλος Αποστολή email στον διαχειριστή

Περιγραφή Ο χρήστης αποστέλλει email για

επαναφορά στοιχείων ή για οποιαδήποτε άλλη πληροφορία.

Είσοδος Ο χρήστης γράφει το μήνυμα στην φόρμα

αποστολής email.

Έξοδος Επιτυχής αποστολή email.

Πηγή Χρήστης.

Προορισμός Λήψη email από τον διαχειριστή.

2.2.2 Προδιαγραφές Διεργασιών Διαχειριστή

Τίτλος Εισαγωγή/Διαγραφή Χρήστη

Περιγραφή Εισαγωγή ή Διαγραφή χρήστη από την

βάση δεδομένων.

Είσοδος Επιλογή χρήστη που θέλει να διαγράψει ή

πληκτρολόγηση νέου χρήστη.

Έξοδος Διαγραφή χρήστη από την βάση ή

εισαγωγή νέου.

Πηγή Διαχειριστής.

Προορισμός Εμφάνιση αποτελεσμάτων.

(21)

Σελίδα 20 από 90

Τίτλος Αναζήτηση

Χρηστών/Αδειών/Σκαφών/Προσωπικού

Περιγραφή Αναζήτηση με βάση το πεδίο που

επιθυμεί.

Είσοδος Επιλέγει ή πληκτρολογεί το πεδίο με το

οποίο θέλει να γίνει η αναζήτηση.

Έξοδος Αποτελέσματα στοιχείων.

Πηγή Διαχειριστής.

Προορισμός Εμφάνιση αποτελεσμάτων.

Τίτλος Αναζήτηση/Ενημέρωση χρηστών με

ληξιπρόθεσμες άδειες.

Περιγραφή Αναζήτηση με βάση το πεδίο που

επιθυμεί.

Είσοδος Επιλέγει ή πληκτρολογεί το πεδίο με το

οποίο θέλει να γίνει η αναζήτηση.

Έξοδος Αποτελέσματα στοιχείων/Emailκαι Sms.

Πηγή Διαχειριστής.

Προορισμός Εμφάνιση αποτελεσμάτων αποστολή

email και sms στους συγκεκριμένους χρήστες.

(22)
(23)

Σελίδα 22 από 90 2.3 Διαγράμματα Ροής

2.3.1Διάγραμμα Ροής Χρήστη/Επισκέπτη

Σχήμα 1 :Διάγραμμα Ροής Χρήστη

Κεντρική Σελίδα

Αρχική Προφίλ

Χρήστη

Σκάφη Επαγγελματίες

Άδειες Ερασιτέχνες

Επεξ/σία Στοιχείων Καταχ/ση

Άδειας Οδηγίες

Πλοήγησης

Επαγγελ /κή Ατομική

Άδεια

Επαγγελ /κές Άδειες Σκαφών

Επαγγελ /τικά Σκάφη

Ερασιτ/

κή Ατομική

Άδεια

Ερασιτ/κέ ς Άδειες Σκαφών

Ερασιτ/κά Σκάφη

Καταχ/ση Σκάφους

Καταχ/

ση Προσω

πικού

Πίνακας Προσωπ

ικού

Εγγραφή Είσοδος Χρήστη Είσοδος Διαχειριστή

(24)

Σελίδα 23 από 90

2.3.2 Διάγραμμα Ροής Διαχειριστή

Σχήμα 2 : Διάγραμμα Ροής Διαχειριστή

Είσοδος Διαχειριστή

Χρήστες Άδειες Σκάφη Εργαζόμενοι Ειδική Αναζήτηση

Επεξεργασία Επεξεργασία Επεξεργασία Επεξεργασία Αναζήτηση Αδειών

Ενημέρωση Χρηστών

(25)
(26)

Σελίδα 25 από 90

2.4 Σύνοψη

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

(27)

Σελίδα 26 από 90

ΚΕΦΑΛΑΙΟ 3

3.1 Προιόντα Λογισμικού

3.1.1 Phpmyedit

Το phpMyEdit παράγει κώδικα PHP για την εμφάνιση / επεξεργασία πινάκων MySQL σε μορφή HTML. Το μόνο που χρειάζεται να κάνει κάποιος είναι να γράψει ένα απλό πρόγραμμα το οποίο περιέχει τις παραμέτρους της βάσης δεδομένων που θέλει να επεξεργαστεί και καλώντας ένα βοηθητικό πρόγραμμα το οποίο περιλαμβάνεται στο πακέτο δημιουργείται ο πινάκας με όλες τις ρυθμίσεις που θέλει ο χρήστης να έχει.

Περιλαμβάνει ένα τεράστιο σύνολο των λειτουργιών επεξεργασίας ενός πίνακα (επεξεργασία, αλλαγή, προβολή, αντιγραφή και εισαγωγή), το φιλτράρισμα, αναζητήσεις πίνακα, και άλλα (βλ. εικόνα 3). Είναι ανοιχτού κώδικα και δεν χρειάζεται κάποια ειδική άδεια για να χρησιμοποιηθεί και μπορεί κανείς να το κατεβάσει από την εξής σελίδα http://www.phpmyedit.org/.

Εικόνα 3 : Λειτουργίες επεξεργασίας της Phpmyedit

(28)

Σελίδα 27 από 90 Εικόνα 4 : Δημιουργία κώδικα

Για την εγκατάστασή του, η διαδικασία είναι πολύ απλή, καθώς αποτελείται από κομμάτια κώδικα τα όποια είναι γραμμένα σε php και το μόνο που πρέπει να γίνει είναι η σωστή παραμετροποίηση κάθε script ώστε να παραχθεί ο html κώδικας για τoν πίνακα που πρέπει. (βλ.εικόνα 5).

Εικόνα 5 : Html κώδικας για τον πίνακα staff

Πατώντας το submit στην παραπάνω εικόνα (βλ. εικόνα 4) δημιουργεί αυτόματα τον κώδικα για τον πινάκα staff της βάσης δεδομένων με όλες τις επιλογές που δόθηκαν από τον χρήστη. (βλ. εικόνα 5).

(29)

Σελίδα 28 από 90

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

3.1.2 Phpmailer

Η PHPMailer είναι μια κλάση PHP που παρέχει ένα πακέτο συναρτήσεων για να στέλνει sms. Τα δύο βασικά χαρακτηριστικά είναι ότι στέλνουν HTML e-sms και e-sms με συνημμένα. Η PHPMailer υποστηρίζει σχεδόν όλες τις πιθανότητες για την αποστολή e-sms: με την γνωστή συνάρτηση της php sms (), Sendmail, qmail και απευθείας στον SMTP server. Μπορείτε να χρησιμοποιήσετε οποιοδήποτε χαρακτηριστικό του SMTP e-mail, πολλούς παραλήπτες, CC, BCC. Για να την κατεβάσει κάποιος θα πρέπει να επισκεφτεί αυτή την σελίδα http://phpmailer.worxware.com/ η οποία δεν χρειάζεται κάποια ειδική άδεια χρήσης

καθώς είναι ένας κώδικας ανοιχτός σε όλους.

Παρότι είναι δυνατόν να σταλούν email με την συνάρτηση mail της php η PHPMailer καθιστά εύκολο να σταλούν email γιατί επιτρέπει την επισύναψη αρχείων, την αποστολή μηνύματος ηλεκτρονικού ταχυδρομείου σε μορφή HTML και δίνει ακόμα την δυνατότητα στο να χρησιμοποιήσει ο χρήστης το δικό του διακομιστή SMTP που στην περίπτωση της εφαρμογής αυτής ήταν ο Gmail.

Έτσι λοιπόν στην εφαρμογή χρειάστηκε για την αποστολή email να ανοίξει ένας λογαριασμός email στο gmail και να χρησιμοποιηθεί ο smtp server του Gmail σαν email server της εφαρμογής αυτής. Παρακάτω ακολουθεί ένα παράδειγμα ρύθμισης του script της phpmailer ώστε να μπορέσει να συνδεθεί με τον server και να στείλει email (βλ. εικόνα 6).

(30)

Σελίδα 29 από 90

Εικόνα 6 : Ρύθμιση ενός script της phpmailer για σύνδεση με τον server Για να στείλει η εφαρμογή μας email πρέπει να ρυθμιστούν σωστά τα εξής:

$mail->Host = "smtp.gmail.com"; // SMTP server

$mail->SMTPSecure = "ssl"; // Πρωτόκολλο ασφαλείας

$mail->Port = 465; // Θύρα επικοινωνίας

$mail->Username = "greekfishermen@gmail.com"; // GMAIL username

$mail->Password = "greekfishermen1"; // GMAIL password

Με αυτό τον τρόπο συνδέεται με τον server και στέλνει ό,τι μήνυμα έχει δοθεί στο:

$mail->Body = 'Το μήνυμα που θα σταλεί'; //το περιεχόμενο του email

Και για το που θα το στείλει ορίζεται στην εξής συνάρτηση:

$mail->Add Address(test@test.go); // το email του παραλήπτη.

Όλες οι επιλογές που έχουνε δοθεί περνάνε μέσα στην κλάση phpmailer η όποια στην συνέχεια ελέγχει αν όλα είναι σωστά και αν μπορεί το email να σταλεί από τον server ή όχι.

(31)

Σελίδα 30 από 90 3.1.3 Sms

Για να υλοποιηθεί η αποστολή sms από την εφαρμογή χρησιμοποιήθηκε ένας server που κάνει αυτήν την συγκεκριμένη δουλεία. Ο server αυτός είναι ο http://www.smsbox.gr/

Η χρήση του smsbox.gr επιτρέπει την σύνδεση με τον server και στην εύκολη αποστολή sms από την εφαρμογή.

Για την αποστολή ενός sms θα πρέπει απλά να καλείται ένα url της μορφής :

http://www.smsbox.gr/httpapi/sendsms.php?username=xxx&password=xxx&text=xxx&

from=xxx&to=xxx

Επίσης γίνεται με το να σταλούν οι παράμετροι στο url:

http://www.smsbox.gr/httpapi/sendsms.php χρησιμοποιώντας την μέθοδο POST.

Για να μπορέσει να χρησιμοποιηθεί η υπηρεσία αυτή χρειάστηκε η δημιουργία κωδικών στον server καθώς και η αγορά ενός πακέτου sms μηνυμάτων ώστε να μπορεί να είναι εφικτή η αποστολή μηνυμάτων από την εφαρμογή στις περιπτώσεις που απαιτείται. Το username είναι το όνομα χρήστη στην υπηρεσία, το password είναι ο κωδικός, το text είναι το κείμενο του μηνύματος, το from είναι ο αποστολέας και το to είναι το τηλέφωνο του παραλήπτη.

Έτσι για παράδειγμα αν κληθεί το παρακάτω url :

http://www.smsbox.gr/httpapi/sendsms.php?username=user&password=passwd&text=

my+first+sms%21&from=mysite&to=6941231231

θα σταλεί ένα sms στο τηλέφωνο 6941231231 με κείμενο “my first sms!” και αποστολέα “mysite”. Το user είναι το όνομα χρήστη και το passwd είναι ο κωδικός χρήστη. To text και το from πρέπει να είναι «url encoded». Έτσι το κενό μετατρέπεται σε + και το ! σε %21. Οι γλώσσες προγραμματισμού έχουν έτοιμες συναρτήσεις για μετατροπή ενός κειμένου σε url encoded μορφή. Ο αποστολέας μπορεί να είναι μέχρι 11 λατινικούς χαρακτήρες ή 13 ψηφία. Στην περίπτωση των λατινικών χαρακτήρων επιτρέπεται η εισαγωγή των γραμμάτων του λατινικού αλφάβητου (διάκριση πεζών – κεφαλαίων), τα ψηφία 0-9, τους χαρακτήρες ! ( ) * # % . , ? - = + ; & και τον κενό χαρακτήρα.

(32)

Σελίδα 31 από 90

Το κείμενο μπορεί να είναι μέχρι 612 λατινικούς ή ελληνικούς χαρακτήρες. Οι χαρακτήρες [ , ], { , } , ~ , ^ , | , \ και € απαιτούν 2 bytes και έτσι υπολογίζονται για 2 χαρακτήρες. Αν το κείμενο είναι πάνω από 612 χαρακτήρες ο server μας επιστρέφει σχετικό μήνυμα και τα μηνύματα δεν στέλνονται.

Το format που χρησιμοποιείται είναι το GSM 7-bit. Με αυτό το format μπορούμε να στείλουμε ελληνικά sms (μόνο κεφαλαία) μέχρι 160 χαρακτήρες (με χρέωση ένα sms).

Διαφορετικά θα έπρεπε να χρησιμοποιηθεί unicode και το ένα sms θα ήταν μέχρι 70 χαρακτήρες.

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

Για παράδειγμα τα α και ά θα γίνουν λατινικό A και τα ϊ , ί , ι θα γίνουν λατινικό Ι.

Για τους υπόλοιπους χαρακτήρες πρέπει να γίνει η εξής μετατροπή : Γ %13

Δ %10 Θ %19 Λ %14 Ξ %1Α Π %16 Σ %18 Φ %12 Ψ %17 Ω %15

€ %80

Όταν γίνεται μια κλήση στον server όπως παραπάνω ο server επεξεργάζεται τα μηνύματα και στέλνει πίσω μία απάντηση. Αυτή η απάντηση είναι σημαντική, θα πρέπει να διαβαστεί και μετά μπορεί να κληθεί πάλι για να σταλεί και άλλο-α μηνύματα. Δηλαδή δεν πρέπει να καλείται ταυτόχρονα η sendsms.php του server αλλά σε κάθε κλήση θα πρέπει να στείλει την απάντηση ο server και μετά να ξανακαλείται για την αποστολή των υπολοίπων μηνυμάτων.

Η απάντηση του server για το πρώτο sms είναι της μορφής : 20 9534538 306941231231

(33)

Σελίδα 32 από 90

Ο πρώτος αριθμός (20) είναι η κατάσταση του μηνύματος, ο δεύτερος (9534538) είναι το id του μηνύματος (μοναδικό για κάθε μήνυμα) και ο τρίτος είναι ο αριθμός που στείλαμε στην μορφή 3069...

Αν σταλεί σε περισσότερα από 1 τηλέφωνα η απάντηση είναι της μορφής : 20 9534538 306941231231

20 9534539 306971231231 20 9534540 306931231231 41 9534541 0941231231

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

40 : δεν υπάρχουν διαθέσιμα sms στον λογαριασμό του χρήστη 41 : ο αριθμός είναι λάθος (όχι 10 ψηφία ή άγνωστο πρόθεμα) 60 : το μήνυμα δεν έγινε δεκτό

Παρακάτω ακολουθείται ο τρόπος χρήσης στην εφαρμογή.

Στην συγκεκριμένη συνάρτηση σε php μπορεί να καταλάβει κανείς πως καλείται το url και πως πρέπει να περαστούν οι παράμετροι από την εφαρμογή για να στείλει ένα sms.

$From = "GrFishermen"; // Ο αποστολέας

$To = $mobile; // το νούμερο του κινητού

$text = $bodysms; // το μήνυμα

//$User = urlencode($User); //το όνομα χρήστη που έχουμε στον server boxsms //$Pass = urlencode($Pass); //o κωδικός που έχουμε στον server boxsms

$From = urlencode($From); // κωδικοποίηση σε url

$To = urlencode($To); // κωδικοποίηση σε url

$text = mb_convert_case($text, MB_CASE_UPPER, "UTF-8"); //αλλαγή σε κεφαλαία

$text = urlencode($text); // κωδικοποίηση σε url

$text = to7bit($text); // καλείται η συνάρτηση 7bit για αντιστοιχία χαρακτήρων

(34)

Σελίδα 33 από 90

$f=fopen('http://www.smsbox.gr/httpapi/sendsms.php?username=ονομα&password=κω δικος&from='.$From.'&to='.$To.'&text='.$text, 'r');

$content = '';

while ($line = fread($f, 1024)) {

$content .= $line;

echo "$content"; // απάντηση του server }

fclose($f);

3.2 Η ανάγκη για Βάση Δεδομένων

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

Αυτό οφείλεται κυρίως στις Βάσεις Δεδομένων. Με τον όρο «Βάση Δεδομένων»

δηλαδή μια συλλογή ολοκληρωμένων εγγραφών που περιέχει αυτοπεριγραφή, δηλαδή:

 Το λεξικό των δεδομένων

 Τον τύπο και την μορφή των δεδομένων

 Συσχέτιση των δεδομένων

 Τυχόν περιορισμούς επί των δεδομένων

Για την δημιουργία και τη συντήρηση των βάσεων δεδομένων χρησιμοποιούμε ειδικά πακέτα λογισμικού, τα «Συστήματα Διαχείρισης Βάσεων Δεδομένων» (Databases Management System – DBMS), ένα από τα οποία είναι η MySQL που χρησιμοποιήθηκε στην παρούσα διαδυκτιακή εφαρμογή.

Η χρησιμότητα των βάσεων δεδομένων αλλά και η ανάγκη διασύνδεσής τους με εφαρμογές του Web φαίνεται από τα σημαντικά πλεονεκτήματα που δίνει η χρήση τους:

 Δεν υπάρχουν διασκορπισμένα στοιχεία, αντιθέτως τα στοιχεία είναι οργανωμένα έτσι ώστε να μην υπάρχει επανάληψη δεδομένων

(35)

Σελίδα 34 από 90

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

 Ανεξαρτησία προγραμμάτων και δεδομένων

 Δυνατότητα προσπέλασης και διαχείρισης της πληροφορίας από απομακρυσμένα μεταξύ τους σημεία.

3.2.1 Βάση Δεδομένων της Ιστοσελίδας του GreekFishermen Η βάση δεδομένων της ιστοσελίδας αποτελείται από 15 πίνακες.

Στον παρακάτω πίνακα γίνεται περιγραφή των πινάκων της βάσης δεδομένων.

ΠΙΝΑΚΑΣ ΠΕΡΙΓΡΑΦΗ

Adeies Καταχώρηση αδειών του χρήστη και των

χαρακτηριστικών της κάθε άδειας.

Admin Καταχωρείται το όνομα χρήστη και ο

κωδικός πρόσβασης του διαχειριστή.

Boats Καταχώρηση σκάφους και των

χαρακτηριστικών του.

eidos_skafous Πίνακας με τα είδη σκάφους (κοινό,

πνευστό, ταχύπλοο)

ipodinami Πίνακας με κατηγορίες ιπποδύναμης της

μηχανής σκάφους.

katigoria_skafwn Καταχώρηση κατηγορίας σκάφους με

βάση τα μέτρα.

ostraka Πίνακας με τον τύπο Οστράκου (Δίθυρο

Μαλάκιο, Γαστερόποδο) όταν υπάρχει.

pelagika_psaria Επιλογή τύπου Πελαγικού Ψαριού

(Κόκκινος ή Μακρύπτερος τόνος) από τον χρήστη όταν υπάρχει.

(36)

Σελίδα 35 από 90

staff Καταχώρηση στοιχείων του προσωπικού

κάθε σκάφους.

states Λίστα με όλους τους νομούς με σκοπό να

επιλέγονται από τον χρήστη και να καταχωρούνται στην βάση δεδομένων.

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

typoi_kinitira Υπάρχουν όλοι οι τύποι κινητήρα ώστε ο χρήστης να επιλέγει τον τύπο κινητήρα της μηχανής του.

users Καταχώρηση προσωπικών στοιχείων του

κάθε χρήστη κατά τη δημιουργία λογαριασμού.

xaraktiristiko_skafous Πίνακας που περιέχει όλα τα

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

xromata Πίνακας με καταχωρημένα τα βασικά

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

(37)

Σελίδα 36 από 90

3.2.2 Μοντέλο Οντοτήτων-Συσχετίσεων

Το Μοντέλο Οντοτήτων Συσχετίσεων (Entity Relationship Model, ER Model) είναι μια διαγραμματική αναπαράσταση της δομής μιας βάσης δεδομένων και χρησιμοποιείται κατά τη φάση του λογικού σχεδιασμού της βάσης. Δηλαδή, δεν ασχολείται με τον τρόπο που αποθηκεύονται τα δεδομένα της βάσης, αλλά με την ταυτοποίηση των δεδομένων και με τον τρόπο με τον οποίο αυτά συσχετίζονται μεταξύ τους. Οι βασικές (θεμελιώδεις) έννοιες του μοντέλου αυτού είναι οι εξής :

 Οντότητες

 Ιδιότητες ή Χαρακτηριστικά

 Συσχετίσεις

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

Με βάση τα παραπάνω προέκυψε και το Μοντέλο Οντοτήτων- Συσχετίσεων (ΜΟΣ) της παρούσας εφαρμογής το οποίο παρουσιάζεται στην παρακάτω εικόνα που ακολουθεί.

(38)
(39)

Σελίδα 38 από 90 Σχήμα 3 : Μοντέλο Οντοτήτων-Συσχετίσεων (Μ.Ο.Σ)

(40)

Σελίδα 39 από 90 3.3 Σύνοψη

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

(41)

Σελίδα 40 από 90

ΚΕΦΑΛΑΙΟ 4

4.1 Οδηγός σωστής και εύκολης χρήσης της ιστοσελίδας.

4.1.1Περιγραφή Λειτουργίας της Ιστοσελίδας μας όσων αφορά τους χρήστες.

4.1.1.1Είσοδος Χρήστη

Μόλις κάποιος χρήστης μπει στην σελίδα GreekFishermen θα δει την φόρμα (βλ.

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

Στα πεδία της σελίδας ‘Είσοδος Χρήστη’, στο ‘Όνομα χρήστη’ και στον ‘Κωδικό Πρόσβασης’ μπορούν να χρησιμοποιηθούν είτε χαρακτήρες είτε αριθμοί είτε σύμβολα.

Όταν ο χρήστης εισάγει τα στοιχεία του πατώντας το κουμπί ελέγχονται τα στοιχεία που εισήγαγε στην φόρμα με αυτά που υπάρχουν στην βάση δεδομένων του συστήματος. Εάν όντως υπάρξει ταυτοποίηση των στοιχείων η εφαρμογή ανακατευθύνει τον χρήστη στην Αρχική Σελίδα (βλ. εικόνα7).

Εικόνα 7 : Επιτυχής σύνδεση στο σύστημα

Εάν γίνει λάθος εισαγωγή στοιχείων εμφανίζεται μήνυμα λάθους(βλ. εικόνα 8)

(42)

Σελίδα 41 από 90 Εικόνα 8 : Μήνυμα αποτυχίας σύνδεσης με το σύστημα

Εικόνα 9: Φόρμα εισόδου χρήστη στην εφαρμογή

Σε περίπτωση που ο χρήστης ξεχάσει τον Όνομα Χρήστη ή τον Κωδικό Χρήστη έχει την δυνατότητα να τα ανακτήσει πατώντας στον σύνδεσμο Υπενθύμιση Στοιχείων όπου εμφανίζεται η φόρμα στην οποία ο χρήστης πρέπει να εισάγει το email με το οποίο είχε κάνει εγγραφή στην ιστοσελίδα (βλ. εικόνα 10).

(43)

Σελίδα 42 από 90 Εικόνα 10: Αποστολή email για υπενθύμιση στοιχείων

Όταν πατήσει το κουμπί ‘Αποστολή’ ελέγχεται αν το email υπάρχει στην βάση δεδομένων του συστήματος εμφανίζοντας μήνυμα επιτυχούς αποστολής (βλ. εικόνα 11) και στέλνεται ενημερωτικό email με τα στοιχεία του χρήστη.

Εικόνα 11: Επιτυχής Αποστολή Email

Στην περίπτωση που ο χρήστης πατήσει το κουμπί Αποστολή και γίνει έλεγχος με την βάση και δεν υπάρχει στην βάση το emai lτότε εμφανίζεται μήνυμα λάθους (βλ. εικόνα 12).

Referências

Documentos relacionados

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