ΣΔΥΝΟΛΟΓΙΚΟ ΔΚΠΑΙΓΔΤΣΙΚΟ ΙΓΡΤΜΑ (ΣΔΙ) ΓΤΣΙΚΗ ΜΑΚΔΓΟΝΙΑ

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

Download "ΣΔΥΝΟΛΟΓΙΚΟ ΔΚΠΑΙΓΔΤΣΙΚΟ ΙΓΡΤΜΑ (ΣΔΙ) ΓΤΣΙΚΗ ΜΑΚΔΓΟΝΙΑ"

Transcript

1 ΣΔΥΝΟΛΟΓΙΚΟ ΔΚΠΑΙΓΔΤΣΙΚΟ ΙΓΡΤΜΑ (ΣΔΙ) ΓΤΣΙΚΗ ΜΑΚΔΓΟΝΙΑ ΠΑΡΑΡΣΗΜΑ ΚΑΣΟΡΙΑ ΣΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗ & ΣΔΥΝΟΛΟΓΙΑ ΤΠΟΛΟΓΙΣΩΝ ΠΣΤΥΙΑΚΗ ΔΡΓΑΙΑ Σνπ Ρνχζζνπ Γεψξγηνπ Α.Δ.Μ. 304 «Αλάπηπμε Portal & Forum γηα ην Σ.Δ.Ι. Καζηνξηάο κε ηε ρξήζε ηεο PHP & ΜySQL γιψζζαο» Δπηβιέπσλ: Γξ. ηακπνπιηδήο Μηραήι Καζεγεηήο Δθαξκνγψλ Καζηνξηά Ννέκβξηνο 2010

2 2

3 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ ΣΔΥΝΟΛΟΓΙΚΟ ΔΚΠΑΙΓΔΤΣΙΚΟ ΙΓΡΤΜΑ (ΣΔΙ) ΓΤΣΙΚΗ ΜΑΚΔΓΟΝΙΑ ΠΑΡΑΡΣΗΜΑ ΚΑΣΟΡΙΑ ΣΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗ & ΣΔΥΝΟΛΟΓΙΑ ΤΠΟΛΟΓΙΣΩΝ ΠΣΤΥΙΑΚΗ ΔΡΓΑΙΑ Σνπ Ρνχζζνπ Γεψξγηνπ Α.Δ.Μ. 304 «Portal And Forum Development For T.E.I. Kastorias Using PHP & MySql Language.» Δπηβιέπσλ: Γξ. ηακπνπιηδήο Μηραήι Καζεγεηήο Δθαξκνγψλ Δγθξίζεθε απφ ηελ ηξηκειή εμεηαζηηθή επηηξνπή ηελ 4 ε Ννεκβξίνπ ηακπνπιηδήο Μηραήι ηλάηθαο Ισάλλεο Νηθνιάνπ ππξίδσλ Καζεγεηήο Δθαξκνγψλ Πξντζηάκελνο Σκήκαηνο Καζεγεηήο Δθαξκνγψλ Καζηνξηά Ννέκβξηνο

4 Copyright 2010 Ρνύζζνο Γεώξγηνο Απαγνξεχεηαη ε αληηγξαθή, απνζήθεπζε θαη δηαλνκή ηεο παξνχζαο εξγαζίαο, εμ νινθιήξνπ ή ηκήκαηνο απηήο, γηα εκπνξηθφ ζθνπφ. Δπηηξέπεηαη ε αλαηχπσζε, απνζήθεπζε θαη δηαλνκή γηα ζθνπφ κε θεξδνζθνπηθφ, εθπαηδεπηηθήο ή εξεπλεηηθήο θχζεο, ππφ ηελ πξνυπφζεζε λα αλαθέξεηαη ε πεγή πξνέιεπζεο θαη λα δηαηεξείηαη ην παξφλ κήλπκα. Οη απφςεηο θαη ηα ζπκπεξάζκαηα πνπ πεξηέρνληαη ζε απηφ ην έγγξαθν εθθξάδνπλ απνθιεηζηηθά ηνλ ζπγγξαθέα θαη δελ αληηπξνζσπεχνπλ ηηο επίζεκεο ζέζεηο ηνπ Σ.Δ.Ι. Γπηηθήο Μαθεδνλίαο. 4

5 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Δπραξηζηίεο ηνλ επηβιέπσλ Δπίθνπξν Καζεγεηή ηακπνπιηδή Μηράιε, γηα ηελ πνιχηηκε θαζνδήγεζή ηνπ ζηα πιαίζηα ηεο πηπρηαθήο κνπ εξγαζίαο θαζψο θαη γηα ηηο ζπκβνπιέο πνπ έδσζε φιν απηφ ην δηάζηεκα πξνθεηκέλνπ λα ηελ θέξσ εηο πέξαο. Δπίζεο ηνλ επραξηζηψ γηα ηηο ηδηαίηεξεο γλψζεηο πνπ κνπ κεηέδσζε γηα ηνλ ρξφλν πνπ κνπ αθηέξσζε θαη γηα ηηο ηδηαίηεξεο επαγγεικαηηθέο αμίεο πνπ κνπ δίδαμε. ηελ νηθνγέλεηά κνπ (θαη ηνλ επξχηεξν θχθιν ηεο) πνπ κε ζηήξημε ςπρνινγηθά θαη νηθνλνκηθά κε θάζε δπλαηή πξνζπάζεηα θαη ζηέξεζε φια απηά ηα ηέζζεξα ρξφληα ψζηε λα θηάζσ ζην ηειηθφ ζηάδην ησλ ζπνπδψλ κνπ θαη λα ραξψ ηα νθέιε ηεο ηξηηνβάζκηαο εθπαίδεπζεο ηνπ ηκήκαηνο Πιεξνθνξηθήο Καη Σερλνινγίαο Τπνινγηζηψλ. ηελ αξξαβσληαζηηθηά κνπ θαη κέιινπζα ζχδπγφ κνπ Βαζηιηθή, γηα ηελ αδηάθνπε ππνζηήξημε, ελζάξξπλζε, αγάπε θαη ππνκνλή πνπ κνπ δείρλεη θαη γηα ην γεγνλφο φηη είλαη ζπλερψο ζην πιεπξφ κνπ. 5

6 Πεξίιεςε ηε ζχγρξνλε επνρή καο, ε αλάγθε ησλ αλζξψπσλ γηα ελεκέξσζε θαη επηθνηλσλία έρεη απμεζεί. Οη λέεο ηερλνινγηθέο εμειίμεηο έρνπλ θαηαθέξεη ψζηε ην δηαδίθηπν λα είλαη έλα κέζν φπνπ κπνξεί λα θαιχςεη απηέο ηηο αλάγθεο. Η εξγαζία απηή θαηά ηελ εηζαγσγή αζρνιείηαη κε ηελ αλάγθε γηα ελεκέξσζε θαη επηθνηλσλία πνπ έρνπλ νη ζπνπδαζηέο (θνηηεηέο) ηνπ Σ.Δ.Ι Καζηνξηάο γηα ζέκαηα πνπ θαηά θχξην ιφγν αθνξνχλ ηελ ζρνιή καο θαη φρη κφλν. ηε ζπλέρεηα κειεηάηαη ε αλάπηπμε κηαο δηαδηθηπαθήο (web) εθαξκνγήο ππεξεζίαο (Portal & Forum) κέζσ ηεο 3-tier αξρηηεθηνληθήο κε ζθνπφ λα θαιχςεη ηηο αλάγθεο πνπ εηπψζεθαλ παξαπάλσ θαη λα απνηειεί έλα ζεκείν πξφζβαζεο γηα ελεκέξσζε θαη επηθνηλσλία κεηαμχ θνηηεηψλ, θαζεγεηψλ θαη άιισλ ρξεζηψλ. Έπεηηα εμεηάδεηαη ε πινπνίεζε κηα ηέηνηαο εθαξκνγήο κε ηα ζχγρξνλα εξγαιεία πνπ δηαηίζεληαη κέζσ ηνπ δηαδηθηχνπ. Tέινο, ε εξγαζία θαηαιήγεη ζηα ζπκπεξάζκαηα πνπ πξνθχπηνπλ απφ ηελ αλάπηπμε ηνπ Portal θαη Forum θαη αθνινπζνχλ ηδέεο γηα ηελ πεξεηαίξσ βειηίσζή ηνπ. Βαζηθή Οξνινγία Portal Πφξηαι Forum Φφξνπκ PHP MySql Ηιεθηξνληθή Πφξηα ή πχιε, πνπ ζθνπφ έρεη λα πξνζθέξεη ππεξεζίεο πξνο ην άηνκν ην νπνίν εηζέξρεηαη ζε απηή κέζσ ηνπ δηαδηθηχνπ θαη ζα απνηειεί ην ζεκείν εηζφδνπ ηνπ ζε έλα ζχζηεκα Ηιεθηξνληθή θνηλφηεηα ζπδεηήζεσλ - ειεθηξνληθφ ζχζηεκα ζρέζεσλ κεηαμχ πξνζψπσλ (κέιε), ζηα νπνία πξνζθέξνληαη δπλαηφηεηεο γηα λα αλαπηχμνπλ ηηο αλαγθαίεο αηνκηθέο θαη ζπιινγηθέο ηθαλφηεηεο πιεξνθφξεζεο θαη δηαιφγνπ κε ζθνπφ ηελ αληαιιαγή πιεξνθνξηψλ πάλσ ζε έλα θνηλφ ζέκα πνπ ηνπο αθνξά. Hypertext Preprocessor Δίλαη κία General Purpose Scripting Language (γεληθνχ ζθνπνχ γιψζζα ζπγγξαθήο ζελαξίνπ) ε νπνία είλαη θαηάιιειε γηα αλάπηπμε δηαδηθηπαθψλ εθαξκνγψλ. Δθηειείηαη ζηελ πιεπξά ηνπ Server (Server - Side Scripting) My Structed Query Language Η δνκεκέλε γιψζζα εξσηήζεσλ είλαη έλα αλνηθηνχ θψδηθα ζχζηεκα δηαρείξηζεο ζρεζηαθψλ βάζεσλ δεδνκέλσλ. 6

7 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Περιεχόμενα 1 ν ΚΔΦΑΛΑΙΟ Δηζαγσγή Καη θνπφο Σεο Δξγαζίαο Portal & Forum Η ζεκαζία ηνπο Αξρηηεθηνληθή ηεο Δθαξκνγήο Γνκή Σεο εξγαζίαο ν ΚΔΦΑΛΑΙΟ Αλάιπζε Σεο Δθαξκνγήο Λφγνη Αίηηα αλάπηπμεο Δχξνο ρξήζεο θαη ρξεζηψλ Γιψζζεο Πξνγξακκαηηζκνχ θαη ηερλνινγίεο πνπ ρξεζηκνπνηήζεθαλ Σν Open Source Software ( Λνγηζκηθφ αλνηρηνχ θψδηθα) Η PHP γιψζζα Η ζεκαζία ηεο PhP Ιζηνξηθά ζηνηρεία Σξφπνη ρξήζεο ηεο Πιενλεθηήκαηα ηεο PhP Η MySql Βάζε Γεδνκέλσλ Δηζαγσγηθά ζηνηρεία βάζεσλ δεδνκέλσλ ηνηρεία Γιψζζαο ν ΚΔΦΑΛΑΙΟ Σξηψλ Δπηπέδσλ Αξρηηεθηνληθή (3-Tier) χγρξνλα εξγαιεία αλάπηπμεο, ζρεδίαζεο θαη εθηέιεζεο ηεο εθαξκνγήο Xampp PhPBB Δξγαιεία Macromedia Dreamweaver 8,Adobe Photoshop CS3,WinMerge ν ΚΔΦΑΛΑΙΟ Portal & Forum Δπίπεδν δεδνκέλσλ Αλάπηπμε θαη δηαρείξεζε ηεο βάζεο δεδνκέλσλ ζην PhPMyAdmin Portal & Forum Δπίπεδν Λεηηνπξγίαο Αλάπηπμε Παξακεηξνπνίεζε θψδηθα PhP Portal & Forum Δπίπεδν Παξνπζίαζεο Αλάπηπμε Δθαξκνγήο User Interface (UI) ν ΚΔΦΑΛΑΙΟ

8 5.1 πκπεξάζκαηα Θέκαηα γηα βειηηψζεηο ηεο εθαξκνγήο Πεξηερόκελα DVD ΒΙΒΛΙΟΓΡΑΦΙΑ Απφ Έληππε Ύιε Απφ E-books Απφ Σν Γηαδίθηπν Παξάξηεκα Α Σκήκαηα Κώδηθα ζε PhP Παξάξηεκα Β Σκήκαηα Κώδηθα ζε Html ΠΙΝΑΚΑΣ ΕΙΚΟΝΩΝ Εικόνα 1 Αρχιτεκτονικι Σθσ Εφαρμογισ Portal & Forum Εικόνα 2 Χριςτεσ Portal & Forum Εικόνα 3 Λειτουργία PHP HTML MYSQL - APACHE Εικόνα 4 Παράδειγμα Client Server Εφαρμογισ Εικόνα 5 3 Tier Αρχιτεκτονικι Εικόνα 6 3 Tier Αρχιτεκτονικι Επίπεδα και λειτουργίεσ Εικόνα 7 Ετοιμολογία, Δομι Xampp Εικόνα 8 Οδθγόσ Εγκατάςταςθσ Xampp 1/ Εικόνα 9 Οδθγόσ Εγκατάςταςθσ Xampp 2/ Εικόνα 10 Οδθγόσ Εγκατάςταςθσ Xampp 3/ Εικόνα 11 Οδθγόσ Εγκατάςταςθσ Xampp 4/ Εικόνα 12 Οδθγόσ Εγκατάςταςθσ Xampp 5/ Εικόνα 13 Xampp Εκτζλεςθ, Apache & MySql Εικόνα 14 Xampp Εκτζλεςθ, Εμφάνιςθ Μενοφ Εικόνα 15 PhPbb Εγκατάςταςθ Εικόνα 16 PhPbb Ρυκμίςεισ Εικόνα 17 Φάκελοσ Εφαρμογισ Εικόνα 18 Αρχικό ςχεςιακό μοντζλο δομισ αρχείων του PhPbb Εικόνα 19 Dreamweaver, Επεξεργαςία αρχείου login.html Εικόνα 20 Photoshop Cs3 - Πρόγραμμα Επεξεραγαςίασ Εικόνασ Logo Portal & Forum Εικόνα 21 PhPMyAdmin Δθμιουργία Και Διαχείριςθ Βάςεων Δεδομζνων Εικόνα 22 Δθμιουργία Πινάκων και Πεδίων τθ Βάςθ Δεδομζνων Εικόνα 23 Δθμιουργία Πίνακα - Ειςαγωγι τοιχείων τα Πεδία Εικόνα 24 Αποτζλεςμα Δθμιουργία Πίνακα Και Πεδίων Εικόνα 25 Επεξεργαςία SQL κώδικα Εικόνα 26 PhPMyAdmin Ειςαγωγι, Εξαγωγι, Import Εικόνα 27 Δομι rgv Βάςθσ δεδομζνων για το Portal & Forum Εικόνα 28 Σο Portal και τα τμιματά του Εικόνα 29 Dreamweaver, Menu Δθμιουργία Αρχείου PhP

9 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Εικόνα 30 Dreamweaver, oroi_xrhshs.php Εικόνα 31 Δομι Frames Portal & Forum Εφαρμογισ Εικόνα 32 Dreamweaver, Customization Overall_header.html Πάνω Frame εφαρμογισ Εικόνα 33 Dreamweaver, Customization Overall_header.html Textfield Αναηιτθςθσ Εικόνα 34 Overall_header.html Πάνω Frame εφαρμογισ Εικόνα 35 Dreamweaver, Customization jumpbox.html Πρόςκετο Frame εφαρμογισ Εικόνα 36 jumpbox.html Πρόςκετο Frame εφαρμογισ Εικόνα 37 Dreamweaver, Customization Overall_footer.html Κάτω Frame εφαρμογισ Εικόνα 38 Overall_footer.html Κάτω Frame εφαρμογισ Εικόνα 39 φνκεςθ και δόμθςθ ςελίδασ.html με frames Εικόνα 40 Portal,Αρχικι ελίδα Εφαρμογισ (UI) Εικόνα 41 Portal,Σμιμα Εγγραφισ Χριςτθ Εικόνα 42 Portal,Σμιμα φνδεςθσ Χριςτθ Εικόνα 43 Portal,Σμιμα Forum Εικόνα 44 Portal,Σμιμα Αναηιτθςθσ Εικόνα 45 Portal, Όροι Χριςθσ Εικόνα 46 Portal, Προςωπικό Απόρρθτο Εικόνα 47 Portal, υχνζσ Ερωτιςεισ

10 ΔΙΑΓΩΓΗ ηε ζπγθεθξηκέλε εξγαζία έρσ αζρνιεζεί κε ηε αλάπηπμε ελφο Web Portal ε αιιηψο κηαο δηαδηθηπαθήο Πχιεο θαη ηε ζχλδεζή ηνπ κε έλα Forum ε αιιηψο κηα ειεθηξνληθήο πιαηθφξκαο ζπδεηήζεσλ γηα ην ΣΔΙ Καζηνξηάο θπξίσο κε ηε ρξήζε ηεο PhP θαη MySql κε ηε βνήζεηα ηνπ αλνηρηνχ ινγηζκηθνχ PhPbb. Γηα λα επηηεπρζεί θάηη ηέηνην επηθαιέζηεθα θπξίσο ηηο γλψζεηο ζε γιψζζεο πξνγξακκαηηζκνχ πνπ απνθφκηζα θαζ φιε ηε δηάξθεηα ησλ ζπνπδψλ κνπ ζην ηκήκα πιεξνθνξηθήο θαη ηερλνινγίαο ππνινγηζηψλ αιιά θαη άιισλ γισζζψλ πνπ κνπ δφζεθε ε επθαηξία λα κάζσ απφ ηελ πξνζσπηθή κνπ έξεπλα πάλσ ζε απηή ηε κειέηε θαη αλάπηπμε εθαξκνγήο πνπ έρσ αλαιάβεη. Ωο θνηηεηήο θη εγψ ζην Σ.Δ.Ι. Καζηνξηάο, έλησζα ηελ πιεξφηεηα αιιά θαη ηηο ειιείςεηο ηεο ζρνιή καο ζε θάπνηεο παξνρέο ηεο, θαη ζπλεηδεηνπνίεζα ηελ αλάγθε γηα κηα εθαξκνγή ζαλ θαη απηή πνπ πινπνηείηαη ζε απηή ηελ εξγαζία. Πηζηεχσ φηη θάζε θνηηεηήο πνπ έρεη ηε ζέιεζε, κπνξεί λα ζπλεηζθέξεη κε ηνλ ηξφπν ηνπ ζηε ζρνιή γηα ηε βειηίσζή ηεο, σο εθδήισζε εθηίκεζεο γηα απηά πνπ ήδε ηνπ έρεη πξνζθέξεη. Απηφ ήηαλ θαη ην ζεκαληηθφηεξν απφ ηα θίλεηξά κνπ γηα ηελ αλάπηπμε απηήο ηεο εθαξκνγήο, πξάγκα πνπ ζπλέβαιε ζην λα ζέζσ σο ζηφρν ηελ πινπνίεζή ηεο, θαη λα ππάξρεη έλα ζεκαληηθφ βνήζεκα γηα φια ηα κέιε ηνπ Σ.Δ.Ι. Καζηνξηάο. Η αγάπε κνπ γηα ηνλ πξνγξακκαηηζκφ θαη ν δήινο κνπ γηα ηε δεκηνπξγία κηαο εθαξκνγήο πνπ ζα έρεη λφεκα θαη ζθνπφ ζηε δηάξθεηα ησλ ζπνπδψλ ησλ θνηηεηψλ κε έθεξε ζην ζεκείν λα πιεζηάζσ ηνλ Κχξην ηακπνπιηδή Μηράιε θαζεγεηή εθαξκνγψλ θαη επηβιέπσλ θαζεγεηή ηεο εξγαζίαο κνπ θαη θαηφπηλ ζπδήηεζεο απνθαζίζακε γηα ηελ απφ θνηλνχ καο ζπλεξγαζία. Η ελζάξξπλζή ηνπ,ε θαζνδήγεζή ηνπ, αιιά θαη ε επηκνλή ηνπ λα ζπλδπάδσ πξνγξακκαηηζηηθφ λνπ θαη θαληαζία, φπσο αθξηβψο κε δίδαμε θαη ζηα καζήκαηά ηνπ, κε ψζεζαλ λα θάλσ ην θαιχηεξν γηα ηελ πηπρηαθή κνπ εξγαζία. 10

11 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 1 ν ΚΔΦΑΛΑΙΟ 1.1 Δηζαγσγή Καη θνπόο Σεο Δξγαζίαο Η πηπρηαθή κνπ εξγαζία αθνξά ηελ αλάπηπμε θαη ην ζηήζηκν ελφο Πφξηαι δειαδή κηαο Πχιεο ππεξεζηψλ πξνο ηνπο θνηηεηέο πνπ ζα απνηειεί ην ζεκείν εηζφδνπ ησλ ρξεζηψλ γηα νηηδήπνηε θαη αλ επηζπκνχλ απηνί κε ζθνπφ λα ην ρξεζηκνπνηνχλ σο βάζε γηα ηελ ελεκέξσζή ηνπο, αλαθνξηθά κε ην Σ.Δ.Ι. Καζηνξηάο. Δπίζεο ε πηπρηαθή εξγαζία δελ αθνξά κφλν ηελ αλάπηπμε ελφο Πφξηαι αιια θαη ελφο Φφξνπκ κε ηελ βνήζεηα ηνπ αλνηρηνχ ινγηζκηθνχ PhPbb φπνπ εθ εμήο ζα αλαθέξνληαη ζην θείκελν ψο Portal θαη Forum, κηα online εθαξκνγή ππεξεζία πνπ βξίζθεηαη ζε έλαλ ηζηφηνπν θαη νη ρξήζηεο πνπ απνηεινχληαη απφ θνηηεηέο θαη θαζεγεηέο, κπνξνχλ λα ελεκεξψλνληαη, λα ηνπνζεηήζνπλ ηηο απφςεηο ηνπο, απνξίεο ηνπο, ζεκεηψζεηο ηνπο, αλαθνηλψζεηο ηνπο πάλσ ζε έλα ζέκα πνπ ζρεηίδεηαη κε ηα ζπνπδαζηηθά ηεθηαηλφκελα ηνπ Σ.Δ.Ι. εκεηψλεηαη φηη νη δπλαηφηεηεο ηεο εθαξκνγήο ε νπνία ζην θείκελν ζα ζπλαληάηαη θαη σο ειεθηξνληθή θνηλφηεηα, ζα θαλνχλ ηδηαίηεξα ρξήζηκεο ζε πεξηφδνπο εμεηαζηηθήο, εθεί δειαδή πνπ απμάλεηαη θαη ε αλάγθε γηα άκεζε θαη καδηθή ελεκέξσζε.θνπφο ηεο εθαξκνγήο απηήο είλαη νη ρξήζηεο λα κπνξνχλ λα ππνβάινπλ εξσηήζεηο, λα κνηξάδνληαη πιεξνθνξίεο, λα ζπδεηνχλ ηηο ηδέεο ηνπο, λα ελεκεξψλνληαη άκεζα, λα βξίζθνπλ βνεζήκαηα θαη άιιν πιηθφ γηα ηα καζήκαηα ηνπο θαη ελ ηέιεη λα κπνξνχλ λα έρνπλ ζηελ δηάζεζή ηνπο κηα ελαιιαθηηθή ππεξεζία πξνο ρξήζε κε ηα άιια κέιε ηνπ Σ.Δ.Ι. ζε πεξίπησζε κε δηαζεζηκφηεηαο ησλ ππαξρφλησλ ππεξεζηψλ πνπ πξνζθέξεη. 1.2 Portal & Forum Η ζεκαζία ηνπο Portal νξίδεηαη σο ην κέζν, δειαδή κηα πφξηα ή πχιε, πνπ ζθνπφ έρεη κπαίλνληαο ζε απηή ηελ πχιε, λα πξνζθέξεη ππεξεζίεο πξνο ηνπο θνηηεηέο πνπ ζα απνηεινχλ ην ζεκείν εηζφδνπ ζε έλα ζχζηεκα κε ζθνπφ λα ηε ρξεζηκνπνηνχλ σο βάζε γηα ηελ ελεκέξσζή ηνπο. ηε ζπγθεθξηκέλε εξγαζία ην Portal νδεγεί ζε έλα Forum θαη ζρεηίδεηαη απνθιεηζηηθά κε ην Σ.Δ.Ι. Καζηνξηάο φπσο αλαθέξζεθε. ε απηή ηελ εθαξκνγή ζπγθεληξψλνληαη δηάθνξνη άλζξσπνη πνπ δελ ζεκαίλεη απαξαίηεηα φηη έρνπλ άκεζε ζρέζε κε ην Σ.Δ.Ι. 11

12 Forum ε αιιηψο κπνξεί λα ιερζεί θαη σο ειεθηξνληθή θνηλφηεηα ζπδεηήζεσλ είλαη έλα ζχζηεκα ζρέζεσλ κεηαμχ πξνζψπσλ, ζηα νπνία πξνζθέξνληαη νη αληηθεηκεληθέο δπλαηφηεηεο γηα λα αλαπηχμνπλ ηηο αλαγθαίεο αηνκηθέο θαη ζπιινγηθέο ηθαλφηεηεο πιεξνθφξεζεο, δηαιφγνπ, δηακφξθσζεο ζέζεσλ θαη δηαζχλδεζεο δξάζεσλ ησλ πξνζψπσλ θαη ζπκκεηέρνπλ ζηηο δηαδηθαζίεο ηνπ Forum. Σα κέιε ηνπ Forum δελ απνθαζίδνπλ σο ζψκα θαη δελ εθθξάδνπλ ζέζεηο ή δηαθεξχμεηο πνπ δεζκεχνπλ φινπο ή φιεο ή ηελ πιεηνλφηεηα φζσλ κεηέρνπλ ζε απηφ πνπ ζηελ ζπγθεθξηκέλε πεξίπησζε ην ζχλνιν απηψλ ζα είλαη θνηηεηέο. Καλέλαο θαη θακία, δελ εμνπζηνδνηείηαη λα αληηπξνζσπεχεη ή λα εθθξάδεη ζέζεηο ζην φλνκα ηνπ Forum ε ηνπ Σ.Δ.Ι. Καζηνξηάο γηαηί απιά είλαη κία ειεχζεξε θνηλφηεηα ζπδεηήζεσλ. [7a,2c,3c,8c,21c] 1.3 Αξρηηεθηνληθή ηεο Δθαξκνγήο Γηα ηελ αλάπηπμε ηεο εθαξκνγήο Portal & Forum ρξεζηκνπνηήζεθε ε 3-Σier Αξρηηεθηνληθή φπσο πνιχ ζπρλά ρξεζηκνπνηείηαη ζηηο πεξηζζφηεξεο εθαξκνγέο ηέηνηνπ ηχπνπ κε ηελ νπνία θαη δηαρσξίδνπκε ηελ αλάπηπμε ηεο εθαξκνγήο ζε ηξία δηαθνξεηηθά πξνγξακκαηηζηηθά αλαπηπμηαθά κνληέια. πγθεθξηκέλα : Σν επίπεδν παξνπζίαζεο (Presentation Layer), αλαθέξεηαη ζηελ εθαξκνγή πνπ ηξέρεη θαη ρξεζηκνπνηεί ν ρξήζηεο. Σν πξφγξακκα εθηειείηαη ζην επίπεδν παξνπζίαζεο θαη είλαη ππεχζπλν λα εκθαλίζεη ζηνλ ρξήζηε ην πεξηβάιινλ εξγαζίαο ηεο εθαξκνγήο θαζψο θαη λα παξέρεη ηελ δπλαηφηεηα ζηνλ ρξήζηε λα αιιειεπηδξά κε ην επίπεδν ιεηηνπξγίαο γηα λα αληιεί θαη λα απνζεθεχεη δεδνκέλα ζηελ βάζε δεδνκέλσλ. Σν Δπίπεδν Λεηηνπξγίαο (Business Layer), είλαη ην ελδηάκεζν επίπεδν κεηαμχ ηνπ επηπέδνπ παξνπζίαζεο θαη ηνπ επηπέδνπ δεδνκέλσλ θαη αιιειεπηδξά κεηαμχ απηψλ ησλ επηπέδσλ. Σν επίπεδν ιεηηνπξγίαο εγγπάηαη φηη ηα δεδνκέλα πνπ εηζήρζεζαλ απφ ην επίπεδν παξνπζίαζεο είλαη θαηάιιεια γηα ηελ εηζαγσγή ηνπο, ελψ ζε δηαθνξεηηθή πεξίπησζε δελ επηηξέπεη ηελ δηαρείξηζε θαη εηζαγσγή δεδνκέλσλ ζηε βάζε δεδνκέλσλ. Σν Δπίπεδν Γεδνκέλσλ (Data Access Layer) πεξηιακβάλεη φια ηα ζπζηαηηθά ζηνηρεία (αληηθείκελα) πνπ ζπλζέηνπλ ηελ βάζε δεδνκέλσλ φπσο πίλαθεο (Tables) 12

13 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Εικόνα 1 Αρχιτεκτονικι Σθσ Εφαρμογισ Portal & Forum Με βάζε ηελ παξαπάλσ εηθφλα (εηθφλα 1) θαηαιήγνπκε πσο ηα βαζηθά ζπζηαηηθά ηεο εθαξκνγήο είλαη : (Web Server) : Δίλαη ν εμππεξεηεηήο δηαδηθηχνπ ηεο εθαξκνγήο. Ο Web Server ζα θηινμελεί ηελ εθαξκνγή φκσο θαη ζα παξέρεη ηελ βαζηθή ππνδνκή γηα ηελ πηζηνπνίεζε ηεο ηαπηφηεηαο ησλ ρξεζηψλ, ηνλ έιεγρν πξφζβαζεο θαζψο επίζεο θάζε είδνπο επηθνηλσλία κεηαμχ ηεο βάζεο δεδνκέλσλ θαη ηνπ ρξήζηε. Σα ζηνηρεία ησλ ρξεζηψλ ζα βξίζθνληαη απνζεθεπκέλα ζηελ βάζε δεδνκέλσλ, απφ φπνπ ζα γίλεηαη θαη ε πηζηνπνίεζε. ηελ εξγαζία «ηξέρνπκε» ηελ εθαξκνγή ηνπηθά κε θάπνηεο λέεο κεζφδνπο εμνκνίσζεο ηνπο ππνινγηζηή καο φπσο ζα δνχκε θαη ζηα επφκελα θεθάιαηα, πξάγκα πνπ είλαη ρσξίο θφζηνο θαη ιηγφηεξν ηαιαίπσξν γηα ηνλ πξνγξακκαηηζηή. Δθφζνλ φκσο ππάξρεη ε νηθνλνκηθή δπλαηφηεηα, κπνξεί λα θηινμελεζεί θαη ζε έλα πξαγκαηηθφ Web Server φπσο θαη έρσ δνθηκάζεη, κε θάπνηεο ιηγνζηέο αιιαγέο ζηηο ξπζκίζεηο ηεο βάζεο δεδνκέλσλ. 13

14 Βάζε δεδνκέλσλ ΜySql Server : Η βάζε δεδνκέλσλ είλαη ην ζεκείν ζην νπνίν ζα είλαη απνζεθεπκέλεο φιεο νη πιεξνθνξίεο πνπ ζρεηίδνληαη κε ην Portal & Forum. Απφ απηή ζα αληινχληαη νη πιεξνθνξίεο πνπ δεηάεη ν ρξήζηεο. Πιεξνθνξίεο ζρεηηθά: κε πξνζσπηθέο πιεξνθνξίεο ηνπ ρξήζηε (Όλνκα ρξήζηε, θσδηθφο, δηεχζπλζε ειεθηξνληθνχ ηαρπδξνκείνπ, πξνζσπηθά κελχκαηα ), κε ηηο επηζθέςεηο ηνπ ζηελ εθαξκνγή, ηηο δεκνζηεχζεηο πνπ θάλεη αλάκεζα ζε άιια κέιε θ.η.ι. Πεξηβάιινλ εθαξκνγήο Γηαρεηξηζηή - Υξήζηε (User Interface): Η πξψηε επαθή ηνπ Γηαρεηξηζηή (απηφο πνπ νξγαλψλεη θαη επηβιέπεη ηελ φιε εθαξκνγή, κφλνο ε κε βνεζνχο), ησλ κειψλ (θνηηεηέο, θαζεγεηέο) θαη ησλ επηζθεπηψλ κε ηελ εθαξκνγή είλαη ην γξαθηθφ πεξηβάιινλ δηαρείξηζεο. ε απηφ παξνπζηάδεηαη ην γξαθηθφ πεξηβάιινλ πνπ ζα ρξεζηκνπνηνχλ. Όηαλ θάπνηνο εγγξάθεηαη σο κέινο ζην Portal & Forum ηφηε δελ έρεη δηθαίσκα κφλν γηα αλάγλσζε κεξηθψλ ζεκείσλ ηεο εθαξκνγήο αιιά έρεη θαη πξφζβαζε ζηελ εθαξκνγή, ζηηο ππεξεζίεο θαη ζηε βάζε δεδνκέλσλ κε έκκεζν ηξφπν θπζηθά. Γπλακηθό γισζζηθό πεξηβάιινλ PHP: Σν δπλακηθφ γισζζηθφ πεξηβάιινλ ηεο PHP είλαη απηφ πνπ ζα πεξηζπιιέμεη ηα ζηνηρεία πνπ δίλεη ν ρξήζηεο απφ ηηο δηάθνξεο θάζε είδνπο θφξκεο εηζαγσγήο δεδνκέλσλ, γηα λα ηα επεμεξγαζηεί θαη λα απνθαζίζεη αλ ζα «ζπλεξγαζηεί» ηειηθά κε ηελ βάζε δεδνκέλσλ. Αθνχ επεμεξγαζηεί κεξηθά ζηνηρεία θαη πξνθχςεη φηη ν ρξήζηεο έρεη δηθαίσκα πξνο ηε βάζε δεδνκέλσλ είηε έκκεζα είηε άκεζα ηφηε ε PHP ζα έξζεη ζε επηθνηλσλία κε ηελ βάζε δεδνκέλσλ θαη αλ ε δηαδηθαζία απηή πιεξνί φιεο ηηο πξνυπνζέζεηο επηζηξέθεη ην απνηέιεζκα ζηνλ ρξήζηε θαη ηα παξνπζηάδεη ζηελ νζφλε. Απνηειέζκαηα : χκθσλα κε ηελ εηθφλα 1, ν δηαρεηξηζηήο ρξεζηκνπνηεί ην πεξηβάιινλ δηαρείξηζεο ηνπ Web server ην νπνίν θηινμελεί ην Portal & Forum θαζψο θαη ηε βάζε δεδνκέλσλ ηεο. Αληίζηνηρα ηα κέιε πνπ κπνξεί λα είλαη θνηηεηέο θαη θαζεγεηέο ζα επηζθέπηνληαη ηελ αξρηθή ζειίδα φπνπ ζα θηινμελείηαη ε εθαξκνγή θαη ζα κπνξνχλ φινη λα επηθνηλσλνχλ κεηαμχ ηνπο εθφζνλ παίξλνπλ πξφζβαζε απφ ηνλ δηαρεηξηζηή πνπ επηβιέπεη ηε βάζε δεδνκέλσλ. Σα κέιε επίζεο κπνξνχλ λα επηθνηλσλνχλ γηα νπνηνδήπνηε ζέκα κε ηνλ δηαρεηξηζηή κφλν αλ έρνπλ σο ελδηάκεζν ηε βάζε δεδνκέλσλ θαη φρη κε άιιν ηξφπν. Σν ίδην ηζρχεη αληίζηνηρα θαη γηα ηελ επηθνηλσλία κεηαμχ κειψλ. [2a,5a,3b] 14

15 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 1.4 Γνκή Σεο εξγαζίαο ε απηφ ην ζεκείν ζα πεξηγξάςνπκε ζχληνκα ηεο δνκή ηεο εξγαζίαο. Αλ θαη ε κνξθή ηεο εθαξκνγήο ζηελ νπνία ζηεξίδεηαη ε εξγαζία είλαη αξθεηά πνιχπινθε, κπνξνχκε λα έρνπκε θαιχηεξε πξνζέγγηζε ζε απηήλ αλ ηελ νξγαλψζνπκε ζε θεθάιαηα θαη ππνθεθάιαηα. Αθνινπζεί κηα επηγξακκαηηθή πεξηγξαθή ησλ θεθαιαίσλ ηνπ θεηκέλνπ. ην δεχηεξν θεθάιαην ε εξγαζία πεξηιακβάλεη ηε κειέηε θαη ηελ αλάιπζε ησλ αλαγθψλ γηα ηελ αλάπηπμε κηαο ηέηνηνπ είδνπο εθαξκνγήο. Δπηπιένλ γηα λα πξνρσξήζεη ε πινπνίεζε ηνπ Portal θαη Forum ζίγνπξα ππήξραλ ιφγνη θαη αίηηα πνπ ψζηε λα γίλεη θάηη ηέηνην. Καζψο απηή ε εθαξκνγή απεπζχλεηαη ζε θάπνην θνηλφ, δε ζα κπνξνχζε λα παξαιεθζεί ε κειέηε ηνπ εχξνπο ρξήζεο ηεο, δειαδή ην πφζν ζα κπνξνχζε λα ρξεζηκνπνηεζεί απηή ε εθαξκνγή θαη ε κειέηε ηνπ εχξνπο ρξεζηψλ δειαδή πνηνη ζα είλαη νη ρξήζηεο ηεο. Η εξγαζία πεξηιακβάλεη επίζεο ηελ κειέηε ηεο έλλνηαο ησλ πξνγξακκάησλ αλνηρηνχ θψδηθα θαη ησλ γισζζψλ πνπ ρξεζηκνπνηήζεθαλ γηα ηελ αλάπηπμε ηεο εθαξκνγήο. πγθεθξηκέλα αλαιχεηαη ην Open Source ινγηζκηθφ σο πξνο ηνπο ιφγνπο ρξήζεο ηνπ, ηα πιενλεθηήκαηα θαη κεηνλεθηήκαηά ηνπ. Δπηπιένλ πνιχ ζεκαληηθή ε κειέηε ηεο PHP γιψζζαο σο πξνο ηεο ζεκαζία ηεο, ηα ηζηνξηθά ηεο ζηνηρεία, ηνπο ηξφπνπο ρξήζεο ηεο, ηα πιενλεθηήκαηά ηεο θαη ηα ιεηηνπξγηθά ραξαθηεξηζηηθά ηεο. Γελ ζα κπνξνχζε λα εμαηξεζεί ε κειέηε ηεο MySql γιψζζαο ηα πιενλεθηήκαηα θαη ηα ραξαθηεξηζηηθά ηεο. ην ηξίην θεθάιαην αλαιχεηαη εθηελέζηεξα ε έλλνηα ηεο 3-tier αξρηηεθηνληθήο ζε ζρέζε κε ηελ εθαξκνγή. Έπεηηα παξνπζηάδνληαη ζηελ εξγαζία ηα παθέηα αλάπηπμεο, ζρεδίαζεο, πξνγξακκαηηζκνχ θαη εθηέιεζεο ηεο εθαξκνγήο φπσο είλαη ην Xampp,έλα πξφγξακκα πνπ πξνζνκνηψλεη ην ππνινγηζηηθφ καο ζχζηεκα ζε έλα Web Server εμππεξεηεηή θαη αλαιχνληαη νη βαζηθέο ιεηηνπξγίεο ηνπ πξνγξάκκαηνο. Σν PhPBB Open Source είλαη ην ινγηζκηθφ ην νπνίν καο δίλεη ην θεληξηθφ πεξηβάιινλ ρξήζεο ελφο θφξνπκ, θαη είλαη θξφληκν λα ρξεζηκνπνηεζεί αλνηρηφ ινγηζκηθφ φπσο ζα δνχκε θαη παξαθάησ γηα ιφγνπο αλεμαξηεζίαο θαη λνκηκφηεηαο. Δπίζεο ζ απηφ ην θεθάιαην αλαθέξεηαη ην γξαθηθφ πεξηβάιινλ πξνγξακκαηηζκνχ θαη ζρεδίαζεο ηζηνζειίδσλ Macromedia Dreamweaver 8 θαη ην Adobe Photoshop Cs3 πνπ είλαη πξφγξακκα επεμεξγαζίαο εηθφλαο θαη ζηάζεθε ρξήζηκν θαζ φιε ηε δηάξθεηα ηνπ customization ηεο εθαξκνγήο. Δπίζεο ην WinMerge έλα πνιχ ρξήζηκν εξγαιείν ζπγγξαθήο θαη ζχγθξηζεο πεγαίνπ θψδηθα κε άιινπο θψδηθεο. 15

16 ην ηέηαξην θεθάιαην παξνπζηάδεηαη ε αλάπηπμε θαη ε δηαρείξηζε ηεο βάζεο δεδνκέλσλ ηεο εθαξκνγήο, ε παξακεηξνπνίεζε ηεο αξρηθήο κνξθήο θαη δνκήο ηνπ θψδηθα PhP ζε θψδηθα πνπ αληαπνθξίλεηαη ζηηο αλάγθεο απηήο ηεο εξγαζίαο θαη ε αλάπηπμε ηνπ θψδηθα html (Customization & Modification) σο γξαθηθφ πεξηβάιινλ γηα ηνλ ρξήζηε (user interface) πνπ απαξηίδεηαη απφ δηάθνξεο ηερλνινγίεο, ην Πέκπην θαη ηειεπηαίν θεθάιαην θαηαγξάθνληαη θάπνηα ζπκπεξάζκαηα πνπ εμήρζεζαλ θαηά ηελ αλάπηπμε ηεο εθαξκνγήο. Παξνπζηάδνληαη επίζεο κεξηθά πξνβιήκαηα πνπ αληηκεησπίζηεθαλ θαηά ηελ εθπφλεζή ηεο, θπξίσο εμαηηίαο ηεο αζπκβαηφηεηαο ησλ web browsers θαη θάπνησλ θσδηθνπνηήζεσλ ζε ζρέζε κε απηνχο θαζψο επίζεο θαη νη ηξφπνη κε ηνπο νπνίνπο μεπεξάζηεθαλ. Δπίζεο, παξαζέηνληαη πξνηάζεηο γηα πεξαηηέξσ επέθηαζε θαη αλαβάζκηζε ηεο εθαξκνγήο απηήο κε ηελ νπνία αζρνιείηαη ε εξγαζία απηή θαη αλαθέξνληαη θάπνηεο ζθέςεηο γηα πεξεηαίξσ αζθάιεηα ησλ κειψλ ηεο εθαξκνγήο. Σέινο, ππάξρεη ε βηβιηνγξαθία, φιεο δειαδή νη έληππεο πεγέο πνπ ρξεζηκνπνηήζεθαλ θαζψο θαη πεγέο απφ ην δηαδίθηπν γηα ηελ πεξάησζε ηεο πηπρηαθήο εξγαζίαο, ηα πεξηερφκελα ηνπ DVD θαη ν ηξφπνο θφξησζεο ηεο εθαξκνγήο ζε έλα ππνινγηζηηθφ κεράλεκα, ελψ θαηαιήγνπκε κε ην παξάξηεκα, ην νπνίν πεξηιακβάλεη ηκήκαηα θψδηθα πνπ ζπκβάινπλ ζηελ θαηαλφεζε απφ πξνγξακκαηηζηηθή άπνςε γηα ην ζχλνιν ηεο εξγαζίαο ην παξφλ θείκελν ζα δίλνληαη παξαδείγκαηα, επεμεγεκαηηθά ζρφιηα θαη εηθφλεο θαζψο θαη ν αληίζηνηρνο θψδηθαο. Απψηεξνο ζθνπφο ηεο εξγαζίαο λα παξνπζηάζεη ηελ εθαξκνγή απηή απφ ηηο αλάγθεο πνπ πξνθχπηνπλ γηα ηελ πινπνίεζή ηεο θαη θαηαιήγνληαο ζηα ζπκπεξάζκαηα απφ ηελ αλάπηπμή ηεο. Πξνγξακκαηηζκόο Δθαξκνγή Μνξθνπνίεζε 16

17 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 2 ν ΚΔΦΑΛΑΙΟ 2.1 Αλάιπζε Σεο Δθαξκνγήο Αξρηθά είλαη αλάγθε λα αλαιχζνπκε ηελ εθαξκνγή σο πξνο: 1. ηνπο ιφγνπο θαη αίηηα αλάπηπμή ηεο 2. εχξνο ρξήζεο θαη ρξεζηψλ Λόγνη Αίηηα αλάπηπμεο ηε δηάξθεηα ησλ ζπνπδψλ πνιιψλ θνηηεηψλ, ζηεξνχκαζηαλ απφ επηινγέο ελεκέξσζεο γηα ζέκαηα ηνπ Σ.Δ.Ι.. Θα έπξεπε θάπνηνο ε λα επηζθεθηεί ην επίζεκν site ηεο ζρνιήο καο φπνπ θακηά θνξά απηφ θαη νη ππεξεζίεο ηνπ ήηαλ κε δηαζέζηκα γηα δηάθνξνπο ιφγνπο ή λα παζρίδεη λα παίξλεη ηειέθσλα ζηε γξακκαηεία ζε γλσζηνχο ζπκθνηηεηέο ηνπ πξνθεηκέλνπ λα πιεξνθνξεζεί γηα θάηη. Οη ρξήζηεο κε ην Portal θαη Forum έρνπλ εχξνο επηινγψλ γηα ην πψο επηιέγνπλ λα ελεκεξσζνχλ, ελψ ηαπηφρξνλα ε ζπκκεηνρή ηνπ θαζελφο ζε απηφ ζπλεηζθέξεη πεξεηαίξσ ζηελ αλάπηπμε θαη βειηίσζή ηνπ. Ο θάζε ρξήζηεο πνπ ζα είλαη ελεξγφ κέινο ζα κπνξεί λα αλεβάδεη πιηθφ θαη λα ην κνηξάδεηαη κε φινπο ηνπο άιινπο ρξήζηεο πνπ δελ ρξεηάδεηαη λα είλαη θαη αλάγθε γλσζηνί, κε απνηέιεζκα λα απμάλεηαη ην πλεχκα ηεο νκαδηθφηεηαο,αιιεινβνήζεηαο θαη ζπλεξγαζίαο. Σν παξάδεηγκα ελφο θνηηεηή ν νπνίνο ιφγνπ ράξε έιεηπε απφ θάπνην κάζεκα θαη ζέιεη λα πιεξνθνξεζεί αλ δηεμάρζεθε ε αλαβιήζεθε, αλ δφζεθαλ ζεκεηψζεηο, αλ έραζε θάηη γηα ην νπνίν κεηαληψλεη κπνξεί λα καο θάλεη λα αληηιεθζνχκε έλα απφ ηνπο ζνβαξνχο ιφγνπο γηα ηνπο νπνίνπο αλαπηχζζνπκε κηα εθαξκνγή ζαλ ην Portal θαη Forum. Αληηιακβαλφκελνη θαη νη θνηηεηέο ζε δηάθνξα παλεπηζηήκηα ζε φιν ηνλ θφζκν, φηη πξνθχπηνπλ ηέηνηεο αλάγθεο, έρνπλ αλαπηχμεη παξφκνηεο εθαξκνγέο. πνπδαία ζεκαζία ινηπφλ θαηέρεη απηφ ην δήηεκα ζηε δσή ησλ θνηηεηψλ θαζψο θαη ησλ θαζεγεηψλ. 17

18 2.1.2 Δύξνο ρξήζεο θαη ρξεζηώλ Αξρηθά πξέπεη λα νξηζηνχλ θάπνηεο βαζηθέο νξνινγίεο φπσο: Χξήζηεο είλαη ην άηνκν πνπ ζα ζπκκεηέρεη ζην Portal θαη Forum θαηφπηλ εγγξαθήο ηνπ Χξήζε είλαη ε ελεξγή ζπκκεηνρή ηνπ ρξήζηε ζε ζπδεηήζεηο θαη θάζε είδνπο ελεκέξσζε θαη επηθνηλσλία ηνπ κε ηνπο άιινπο ρξήζηεο. Δγγξαθή είλαη κηα κεξηθψλ ιεπηψλ ζχληνκε δηαδηθαζία εηζαγσγήο βαζηθψλ πξαγκαηηθψλ πξνζσπηθψλ ζηνηρείσλ πνπ επεμεξγάδνληαη θαη δηαηεξνχληαη ζην ζχζηεκα ψζηε ν ρξήζηεο έπεηηα απφ απηή λα κπνξεί λα εηζέξρεηαη σο κέινο ζην ζχζηεκα θαη λα κπνξεί λα έρεη πξφζβαζε ζε πξφζζεηεο ππεξεζίεο πνπ δελ είλαη δηαζέζηκεο ζε επηζθέπηεο φπσο λα δεκνζηεχεη κελχκαηα, λα ζηέιλεη πξνζσπηθά κελχκαηα, απνζηνιή θαη ιήςε κελπκάησλ ειεθηξνληθνχ ηαρπδξνκείνπ θαη πνιιά άιια. Δδψ εμεηάδεηαη ην πνηνη θαη πφζνη ζα πξνβνχλ ζηε ρξήζε ηνπ Portal θαη Forum. ρεηηθά κε απηφ, αλ θάπνηνο ζπιιάβεη ην λφεκα ησλ αλαγθψλ πνπ ππάξρνπλ γηα ηε δεκηνπξγία απηήο ηεο εθαξκνγήο απφ ηε πιεπξά ηνπ θνηηεηή θπξίσο, κπνξεί θάιιηζηα λα θαηαλνήζεη φηη ε ρξήζε ηεο ζα είλαη κεγάιε. Δθφζνλ θάπνηνο επηζπκεί λα ιαβαίλεη ελεκέξσζε, λα ζπκκεηέρεη ζε θάπνηα ζπδήηεζε θηι κέζσ ηνπ Portal θαη Forum, ζα ηνπ δίλεηαη ειεγρφκελε πξφζβαζε. ε απηφ ζα βνεζήζεη κηα νκάδα ρξεζηψλ πνπ ζα ηελ αλαθέξνπκε παξαθάησ. Πφζνη ζα είλαη φκσο απηνί πνπ ζα θάλνπλ ρξήζεο ηεο εθαξκνγήο; Η απάληεζε δελ κπνξεί λα είλαη ζηαζεξή. χκθσλα κε ηνπο ιφγνπο αλάπηπμεο φπσο είδακε παξαπάλσ, αλ είλαη ηφζν ηζρπξνί, ζα ππάξρεη θαη ε αλάινγε αληαπφθξηζε. Μηα ζπλερψο αλαπηπζζφκελε δηαδηθηπαθή εθαξκνγή φκσο γηα αληαπνθξίλεηαη ζηηο αλάγθεο ησλ ρξεζηψλ νη νπνίνη κέξα ηε κέξα ππνζέηνπκε φηη απμάλνληαη, πξέπεη ζίγνπξα λα ιεηηνπξγεί κε ζηαζεξφηεηα. Η ρξήζε ηεο PhP γιψζζαο ζε ζπλδπαζκφ κε ηε Sql Database κπνξεί λα ππνζηεξίμεη απηφ πνπ ζέινπκε ζηε ζπγθεθξηκέλε πεξίπησζε. Η αξκνλία απηψλ ησλ δχν ηερλνινγηψλ κε ζσζηφ πξνγξακκαηηζκφ θέξλεη πνιχ θαιά απνηειέζκαηα άζρεηα αλ εμάγεη δηαθνξεηηθά κεηαβιεηά απνηειέζκαηα γηα ην θαζεηί θαη γηα ηνλ θαζέλα πνπ ρξεζηκνπνηεί ηελ εθαξκνγή. 18

19 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Γηα παξάδεηγκα ην Portal θαη Forum κπνξεί λα απνηειείηαη απφ πνιιέο νκάδεο ρξεζηψλ θαη πνιιέο νκάδεο δηαρεηξηζηψλ πνπ απνηεινχληαη απφ πνιιά κέιε φπνπ γηα ην θάζε έλα απφ απηά ππάξρεη κηα ζπγθεθξηκέλε κεηαρείξηζε απφ ηελ PhP & MySql θαη απηφ ζχκθσλα πάληα κε ην πψο ζρεδηάδεη θαη δηακνξθψλεη ην φιν ζχζηεκα ν πξνγξακκαηηζηήο. Σν ζπγθεθξηκέλν Portal θαη Forum απαξηίδεηαη απφ ηέζζεξηο νκάδεο ρξεζηψλ κε δπλαηφηεηα επέθηαζεο ζε φζεο νκάδεο ρξεηάδνληαη γηα λα θαιπθηνχλ νη αλάγθεο πνπ κπνξεί λα πξνθχςνπλ. Κάζε νκάδα ρξεζηψλ δηαδνρηθά έρεη πεξηζζφηεξν αξηζκφ κειψλ θαη απηφ γηα λα έξζεη ζηελ επηθάλεηα ην ζέκα ηνπ ειέγρνπ ηεο εθαξκνγήο. Διαχειριςτζσ (Administrators) Διαχειριςτισ - Ιδρυτισ Διαχειριςτζσ - Βοθκοί Portal & Forum Χριςτεσ υντονιςτζσ (Operators) Μζλθ (Members) υντονιςτζσ υντονιςτζσ Βοθκοί Φοιτθτζσ Επιςκζπτεσ (Visitors) Κακθγθτζσ Εκτοσ ΣΕΙ Καςτοριάσ Εικόνα 2 Χριςτεσ Portal & Forum Έρνληαο ππφςε ην ζρήκα ινηπφλ ην Portal & Forum απνηειείηαη απφ: 19

20 1. Σνπο Γηαρεηξηζηέο (Administrators) πνπ ν αξηζκφο ησλ ρξεζηψλ πνπ θέξνπλ απηή ηελ ηδηφηεηα ζπλίζηαηαη γηα ιφγνπο αζθάιεηαο θαη νξγάλσζεο λα είλαη κηθξφο (1 έσο 5). Οη Γηαρεηξηζηέο είλαη ρξήζηεο κε ηνλ κεγαιχηεξν βαζκφ ειέγρνπ ζε φιν ην ζχζηεκα. Μπνξνχλ λα ειέγρνπλ φιεο ηηο ιεηηνπξγίεο ηνπ ζπζηήκαηνο, ζπκπεξηιακβαλνκέλνπ θαη ησλ εηδηθψλ αδεηψλ, ηνλ απνθιεηζκφ κειψλ, ηελ δεκηνπξγία νκάδσλ ή ζπληνληζηψλ, θιπ., νη νπνίεο έρνπλ νξηζηεί απφ ηνλ δεκηνπξγφ ηνπ ζπζηήκαηνο θαη κε βάζε ηη δπλαηφηεηεο έρεη δψζεη ζηνπο άιινπο δηαρεηξηζηέο κπνξνχλ λα έρνπλ ζπγθεθξηκέλεο δπλαηφηεηεο. Έρνπλ επίζεο πιήξε δπλαηφηεηα ζε φινπο ηνπο πφξνπο ηνπ ζπζηήκαηνο. 2. Σνπο πληνληζηέο (Moderators) πνπ ν αξηζκφο ησλ ρξεζηψλ πνπ θέξνπλ απηή ηελ ηδηφηεηα ζπλίζηαηαη λα είλαη κηθξφο ζχκθσλα πάληα κε ηηο εθάζηνηε αλάγθεο (1-10). Οη πληνληζηέο είλαη ρξήζηεο (ή νκάδεο ρξεζηψλ) πνπ ζπληνλίδνπλ ηηο ελέξγεηεο ησλ απιψλ κειψλ φηαλ αλνίγνπλ θάπνηα ζεκαηηθή ελφηεηα πξνο ζπδήηεζε ε νπνία νλνκάδεηαη Γεκφζηα πδήηεζε θαη θξαηψληαο ηελ θαζαξή. Έρνπλ ηε δπλαηφηεηα λα επεμεξγάδνληαη ή λα ζβήλνπλ ηηο δεκνζηεχζεηο ησλ κειψλ θαη λα ηηο θιεηδψλνπλ, μεθιεηδψλνπλ, κεηαθηλνχλ, λα ζβήλνπλ ή λα δηαρσξίδνπλ ζεκαηηθέο ελφηεηεο ζηηο Γεκφζηεο ζπδεηήζεηο πνπ επηβιέπνπλ. Γεληθά, νη ζπληνληζηέο ππάξρνπλ γηα λα απνηξέπνπλ ρξήζηεο απφ ην λα βγαίλνπλ εθηφο ζέκαηνο ή λα δεκνζηεχνπλ αθαηάιιειν ή πξνζβιεηηθφ πιηθφ. 3. Σα Μέιε (Members) κπνξεί λα είλαη θνηηεηέο ή θαζεγεηέο ή άηνκα εθηφο ηνπ Σ.Δ.Ι. Καζηνξηάο ν αξηζκφο ησλ ρξεζηψλ πνπ θέξνπλ απηή ηελ ηδηφηεηα είλαη κεηαβιεηφο, θαζψο ν θαζέλαο θαηά βνχιεζε κπνξεί λα εγγξαθεί / ηεξκαηίζεη ηνλ πξνζσπηθφ ηνπ ινγαξηαζκφ θαη πξνθίι ηνπ. Σν πιήζνο ησλ κειψλ ζεσξεηηθά κπνξεί λα είλαη απφ (1 έσο άπεηξν). Σα κέιε είλαη απηά πνπ ζπκκεηέρνπλ ζηηο δεκφζηεο ζπδεηήζεηο θαη ζε φια απηά πνπ κπνξεί λα πξνζθέξεη ην Portal & Forum ε αιιηψο κπνξνχκε λα ην απνθαινχκε θαη ειεθηξνληθή θνηλφηεηα. 4. Σνπο Δπηζθέπηεο (Visitors) φπνπ ν αξηζκφο ησλ ρξεζηψλ πνπ θέξνπλ απηή ηελ ηδηφηεηα είλαη επίζεο κεηαβιεηφο θαη εμαξηάηαη απφ ην πφζνη επηζθέπηνληαη ηελ ηζηνζειίδα φπνπ ζα βξίζθεηαη ην Portal θαη Forum θαη δελ έρνπλ θάλεη εγγξαθή ζην ζχζηεκα πξνθεηκέλνπ λα δεηήζνπλ πξφζβαζε. Υσξίο πξφζβαζε κπνξνχλ λα έρνπλ κφλν ηε δπλαηφηεηα πξνβνιήο κεξηθψλ ζεκείσλ ηεο εθαξκνγήο. Σα άηνκα 20

21 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ πνπ ραξαθηεξίδνληαη σο επηζθέπηεο κπνξεί ηπραία λα έρνπλ επηζθεθηεί απηφλ ηνλ ρψξν θαη απιά λα ξίρλνπλ κηα «ειεθηξνληθή καηηά». Καλνληθά δελ είλαη ρξήζηεο ηνπο ζπζηήκαηνο αιιά εληάζζνληαη ζε απηή ηελ θαηεγνξία καδί κε φινπο ηνπο άιινπο δηφηη έρνπλ φπσο είπακε δπλαηφηεηα αλάγλσζεο θαη πξνβνιήο κεξηθψλ ζεκείσλ, αιιά έρνπλ ηε πξννπηηθή βάζε πξσηνβνπιίαο λα γίλνπλ κέιε ηνπ Portal θαη Forum. Αθνχ εηπψζεθαλ κεξηθά βαζηθά ραξαθηεξηζηηθά ηνπ Portal θαη Forum ζε πξψηε θάζε, είλαη αλαγθαίν πξνηνχ αλαθεξζνχκε εθηελέζηεξα ζηελ εθαξκνγή λα ιάβνπκε θάπνηεο γλψζεηο νη νπνίεο εμεηάδνληαη ζην θεθάιαην 2 ψζηε λα γίλεηαη πην θαηαλνεηφ ην θείκελν ζηελ πνξεία. 2.2 Γιώζζεο Πξνγξακκαηηζκνύ θαη ηερλνινγίεο πνπ ρξεζηκνπνηήζεθαλ Γηα λα πινπνηεζεί ην Portal θαη Forum είλαη απαξαίηεην λα έρνπκε θάπνηεο βαζηθέο γλψζεηο απφ γιψζζεο πξνγξακκαηηζκνχ θαη λα έρνπκε ζηε δηάζεζή καο κηα ζεηξά απφ βαζηθά εξγαιεία αλάπηπμεο εθαξκνγψλ δηαδηθηχνπ ηα νπνία ζπζρεηίδνληαη κεηαμχ ηνπο. Κάζε έλα εξγαιείν επηηειεί κηα ζπγθεθξηκέλε εξγαζία. Μπνξεί θαλείο λα ηα παξνκνηψζεη ζαλ έλα πάδι πνπ ην έλα θνκκάηη ζπκπιεξψλεη ην άιιν θαη σο ζχλνιν εξγαιείσλ ζπληεινχλ φια ζε κία ζχγρξνλε δηαδηθηπαθή εθαξκνγή φπσο ζα δνχκε θαη ζην επφκελν θεθάιαην. Άκεζνο ζηφρνο είλαη ε θαιχηεξε νξγάλσζε, δηαρείξηζε, ιεηηνπξγία θαη πξνγξακκαηηζκφο ηνπ ζπλφινπ ηεο εθαξκνγήο. Γηα λα επηηεπρζεί απηφ είλαη αλαγθαίν ην Portal θαη Forum ηνπ ΣΔΙ Καζηνξηάο πξψηα απ φια λα αλαπηπρζεί κε ηε ρξήζε νξζψλ ηερλνινγηψλ, γισζζψλ πξνγξακκαηηζκνχ θαη πξνγξακκάησλ κεξηθψλ απφ ησλ νπνίσλ είλαη αλνηρηνχ θψδηθα, θάηη πνπ είλαη πξνο φθειφο καο. 21

22 2.2.1 Σν Open Source Software ( Λνγηζκηθό αλνηρηνύ θώδηθα) Γηαηί Open Source; Σν ινγηζκηθφ αλνηθηνχ θψδηθα (OpenSource software) είλαη έλα κνληέιν δηαλνκήο ινγηζκηθνχ, φπνπ ε δηαλνκή ηνπ ινγηζκηθνχ γίλεηαη καδί κε ηνλ πεγαίν θψδηθα (source code), νπφηε ν νπνηνζδήπνηε κπνξεί λα επέκβεη ζε απηφλ θαη λα πξνζαξκφζεη ην ινγηζκηθφ ζηηο δηθέο ηνπ αλάγθεο. Η δηαλνκή ηνπ ινγηζκηθνχ γίλεηαη θάησ απφ ηνπο φξνπο ζπγθεθξηκέλεο άδεηαο, νη νπνίνη νξίδνπλ ηηο ρξήζεηο ζηηο νπνίεο κπνξεί λα ρξεζηκνπνηεζεί ην ινγηζκηθφ, ηνλ ηξφπν δηαλνκήο, ην εάλ ζα πεξηιακβάλεηαη ζηε δηαλνκή ν πεγαίνο θψδηθαο ή φρη θ.ν.θ. Οη πην δηαδεδνκέλεο άδεηεο είλαη νη άδεηεο BSD θαη MIT. Η άδεηα ρξήζεο BSD, επηηξέπεη ηηο αιιαγέο ρσξίο επαλαδηαλνκή ηνπ πεγαίνπ θψδηθα. Σν ινγηζκηθφ αλνηθηνχ θψδηθα μεθηλάεη ζπλήζσο απφ θάπνηνλ (θνξέα ή ηδηψηε) ν νπνίνο γξάθεη ηελ αξρηθή έθδνζε ηνπ πξνγξάκκαηνο θαη ζηε ζπλέρεηα απνθαζίδεη λα ην δηαζέζεη κε ην ζπγθεθξηκέλν κνληέιν. Τπάξρνπλ θαη πεξηπηψζεηο εκπνξηθνχ ινγηζκηθνχ ην νπνίν ζηελ πνξεία δηαηίζεηαη απφ ηνλ θαηαζθεπαζηή ηνπ κε ην κνληέιν ηνπ ινγηζκηθνχ αλνηθηνχ θψδηθα. Έλαο άιινο φξνο πνπ ρξεζηκνπνηείηαη είλαη ην "ειεχζεξν ινγηζκηθφ" πνπ πξνέξρεηαη απφ ηνλ αγγιηθφ φξν "free software", κε ηε ιέμε "free" λα κελ έρεη ηελ έλλνηα ηνπ "δσξεάλ", αιιά ηελ έλλνηα ηνπ "ειεχζεξνπ". Έηζη, ην ειεχζεξν ινγηζκηθφ δηαλέκεηαη κε ηέηνην θαζεζηψο ψζηε ν ρξήζηεο ηνπ λα κπνξεί λα ρξεζηκνπνηεί ην πξφγξακκα γηα θάζε ζθνπφ, αιιά θαη λα ην πξνζαξκφζεη ζηηο αλάγθεο ηνπ (ην ηειεπηαίν ππνλνεί φηη ν ρξήζηεο έρεη πξφζβαζε ζηνλ πεγαίν θψδηθα). Δπίζεο, είλαη ειεχζεξνο λα αλαδηαλέκεη αληίγξαθα ηνπ ινγηζκηθνχ ζε ηξίηνπο (κε ηελ πξνυπφζεζε φηη ε δηαλνκή γίλεηαη ζηα πιαίζηα ηεο άδεηαο). Η αλαδηαλνκή ζε ηξίηνπο κπνξεί λα γίλεηαη καδί κε ηηο φπνηεο βειηηψζεηο επηθέξεη έλαο ρξήζηεο ζην ινγηζκηθφ. Λίγν πνιχ νη παξαπάλσ φξνη ζεκαίλνπλ ην ίδην πξάγκα, ηνπιάρηζηνλ ζηηο πεξηζζφηεξεο ησλ πεξηπηψζεσλ. Σν ειεχζεξν ινγηζκηθφ δίλεη έκθαζε ζηελ ειεπζεξία ηνπ ινγηζκηθνχ, ψζηε λα παξαρζεί ινγηζκηθφ πνπ ζα ιεηηνπξγήζεη σο θνηλσληθφ αγαζφ θαη ζα βνεζήζεη ηνλ ζπλάλζξσπν. Σν ινγηζκηθφ αλνηθηνχ θψδηθα, απφ ηελ πιεπξά ηνπ, αλαδεηά αλζξψπνπο πνπ ζα βνεζήζνπλ ζηελ αλάπηπμε θαη βειηίσζε ηνπ ινγηζκηθνχ θαη σο αληακνηβή -πέξαλ ηεο εζηθήο ηθαλνπνίεζεο- ζα έρνπλ ην δηθαίσκα ηεο ρξήζεο ηνπ ινγηζκηθνχ. [3c,8c,22c] 22

23 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Φηινζνθία ζπκκεηνρήο ζε αλνηρηό θώδηθα Η αλάπηπμε ινγηζκηθνχ κε ηε θηινζνθία ηνπ open source δελ απνζθνπεί γεληθά ζην θέξδνο, ρσξίο απηφ λα ζεκαίλεη πσο νη δχν έλλνηεο δελ κπνξνχλ λα ζπλππάξρνπλ. Τπάξρνπλ αξθεηνί ιφγνη γηα λα ζπκκεηάζρεη θάπνηνο αθηινθεξδψο ζηελ αλάπηπμε ειεχζεξνπ ινγηζκηθνχ ή ινγηζκηθνχ αλνηθηνχ θψδηθα, ηνπο νπνίνπο θάπνηνο κπνξεί λα έρεη, είηε κεκνλσκέλα είηε ζε ζπλδπαζκφ. Οη βαζηθφηεξνη απφ απηνχο είλαη: Η ηαρχηεξε αλάπηπμε ελφο ινγηζκηθνχ ηνλ νπνίν ζα βνεζήζεη θαη ηνλ ίδην ηνλ ζπκκεηέρνληα, θαζψο φηαλ νινθιεξσζεί ην ινγηζκηθφ ζα ην ρξεζηκνπνηήζεη θαη ν ίδηνο. Η απφθηεζε εκπεηξίαο απφ ηελ αλάπηπμε ελφο ινγηζκηθνχ, αιιά θαη ηεο ζπλεξγαζίαο κε άιινπο πξνγξακκαηηζηέο. Η απφθηεζε θήκεο εάλ ην έξγν πεηχρεη θαη γίλεη γλσζηφ. ε αξθεηέο πεξηπηψζεηο νη ζπκκεηέρνληεο ζηελ αλάπηπμε ειεχζεξνπ ινγηζκηθνχ ή ινγηζκηθνχ αλνηθηνχ θψδηθα "αληακείθζεθαλ" κε θαιέο ζέζεηο ζε εηαηξίεο. Η εζηθή ηθαλνπνίεζε ηεο ζπλεηζθνξάο πξνο ηνλ ζπλάλζξσπν. Σν θέξδνο εθφζνλ είλαη επηζπκεηφ κπνξεί λα πξνθχςεη ηφζν απφ ηελ πψιεζε ηνπ ινγηζκηθνχ ζε binary form (έηνηκνπ πξνο ρξήζε δειαδή) καδί κε ηνλ πεγαίν θψδηθα, φζν θαη απφ ηελ πψιεζε ππεξεζηψλ πνπ ζρεηίδνληαη κε ην ινγηζκηθφ απηφ Πιενλεθηήκαηα ινγηζκηθνύ αλνηρηνύ θώδηθα Κάλνληαο κία θσδηθνπνίεζε ησλ πιενλεθηεκάησλ απφ ηε ρξήζε OpenSource ινγηζκηθνχ, ηα ζεκαληηθφηεξα απφ απηά είλαη: Η ινγηθή ηεο αλάπηπμήο ηνπ είλαη ηέηνηα ψζηε λα επηηξέπεη ηνλ πνηνηηθφ ηνπ έιεγρν απφ πνιινχο αλζξψπνπο. Μάιηζηα, αξθεηνί απφ απηνχο ελδέρεηαη λα είλαη ηθαλφηαηνη πξνγξακκαηηζηέο θαη πνιχ εμεηδηθεπκέλνη. Τπάξρεη ηεξάζηηα δπλαηφηεηα πξνζαξκνγήο ηνπ ινγηζκηθνχ ζηηο αλάγθεο (ηδησηψλ ή εηαηξηψλ). 23

24 Μπνξεί λα απνηειέζεη ζεκαληηθφ εθπαηδεπηηθφ εξγαιείν ή εξγαιείν γηα απφθηεζε πξνγξακκαηηζηηθήο εκπεηξίαο απφ απηνχο πνπ αλαπηχζζνπλ θψδηθα. ε απηφ ην ζεκείν κπνξνχκε λα πνχκε φηη ηαπηίδεηαη πεξηζζφηεξν ε πεξίπησζε ηεο αλάπηπμεο ηνπ ζέκαηνο ηεο πηπρηαθήο κνπ εξγαζίαο. Σν θφζηνο (ρξήζε + απφθηεζε) ηνπ ειεχζεξνπ ινγηζκηθνχ ή ηνπ ινγηζκηθνχ αλνηθηνχ θψδηθα είλαη ζπλήζσο ζεκαληηθά κηθξφηεξν απφ ην θφζηνο αληίζηνηρσλ εκπνξηθψλ ιχζεσλ. Όηαλ πξφθεηηαη γηα δεκνθηιή πξνγξάκκαηα, ηα νπνία ρξεζηκνπνηνχληαη ζε πιεζψξα εγθαηαζηάζεσλ αλά ηνλ θφζκν, ε ππνζηήξημε ζε πεξίπησζε εκθάληζεο πξνβιεκάησλ κπνξεί λα πξνέιζεη άκεζα, κε ηε ρξήζε ησλ θαλαιηψλ επηθνηλσλίαο ηνπ internet (ι.ρ. newsgroups). Η ρξήζε ειεχζεξνπ ινγηζκηθνχ ή ινγηζκηθνχ αλνηθηνχ θψδηθα δε δεκηνπξγεί εμαξηήζεηο απφ θάπνηα ζπγθεθξηκέλε εηαηξία αιιά εμειίζεηαη ζπλερψο θαη απνηειεί λέν έξγν γηα ηνλ θάζε δεκηνπξγφ πνπ ζπκβάιεη ζηελ αλάπηπμε θαη ζηε βειηίσζε. Δπεηδή ν θψδηθαο είλαη δηαζέζηκνο, κπνξεί λα ειεγρζεί ε αμηνπηζηία ηνπ, θάηη πνπ δελ κπνξεί λα γίλεη ζε εκπνξηθά πξνγξάκκαηα, φπνπ ν θψδηθαο δελ είλαη δηαζέζηκνο Μεηνλεθηήκαηα ινγηζκηθνύ αλνηρηνύ θώδηθα Γελ είλαη ζην ζχλνιφ ηνπο ιχζεηο ζηαζεξέο ζηε ιεηηνπξγία ηνπο. πλήζσο ην ινγηζκηθφ ππνδνκήο, ην νπνίν ρξεζηκνπνηείηαη απφ πνιινχο θαη άξα πνιινί έρνπλ ζπκθέξνλ λα είλαη ηζρπξφ, είλαη αξθεηά ζηαζεξφ. Όκσο, θάπνηα επηκέξνπο πξνγξάκκαηα ηα νπνία ελδηαθέξνπλ ιίγνπο, ίζσο λα κελ είλαη ην ίδην ζηαζεξά κε ηα αληίζηνηρα εκπνξηθά. Η παξερφκελε ηεθκεξίσζε είλαη ζπλήζσο κηθξή, κε εμαίξεζε ηα βαζηθά πξνγξάκκαηα ππνδνκήο (ι.ρ. ιεηηνπξγηθά ζπζηήκαηα, δηθηπαθέο ππεξεζίεο θ.ιπ.). Η ππνζηήξημε γίλεηαη ζπλήζσο απφ ηελ ίδηα ηελ θνηλφηεηα αλάπηπμεο θαη ηνπ ινγηζκηθνχ, πνπ ζεκαίλεη φηη δελ ππάξρεη θάπνηα επαγγεικαηηθή δέζκεπζε. Γηα ινγηζκηθά πνπ ρξεζηκνπνηνχληαη επξέσο, ππάξρνπλ θαη επαγγεικαηίεο πνπ αλαιακβάλνπλ ηε ζχλαςε ζπκβνιαίσλ ππνζηήξημεο (ι.ρ. Linux). Υξεηάδεηαη λα πεξάζνπλ αξθεηέο εθδφζεηο ηνπ ινγηζκηθνχ ψζηε λα σξηκάζεη θαη λα ζηαζεξνπνηεζεί. Έηζη, εάλ θάπνηνο ην πηνζεηήζεη ζηηο πξψηεο ηνπ εθδφζεηο, 24

25 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ ελδερνκέλσο λα αληηκεησπίζεη αξθεηά πξνβιήκαηα. Γελ είλαη ειεγρφκελε ε αλάπηπμή ηνπ. Ο θάζε έλαο πξνζζέηεη ηα ραξαθηεξηζηηθά πνπ απηφο ρξεηάδεηαη. Έηζη, εάλ θάηη δελ ζπκπεξηιακβάλεηαη ζην ινγηζκηθφ θαη δελ ην αλαπηχζζεη θάπνηνο γηα λα πξνζηεζεί, ζα πξέπεη λα ην αλαπηχμεη ν ίδηνο ν ελδηαθεξφκελνο Η ζπκβνιή ηεο αμίαο ηνπ Open Source ινγηζκηθνύ ζηεο ζρνιή καο Γηα λα θαιχςεη ηηο αλάγθεο ηνπ, ην Α.Σ.Δ.Ι Καζηνξηάο ζηηο πεξηζζφηεξεο ππεξεζίεο πνπ πξνζθέξεη ρξεζηκνπνηεί open source ινγηζκηθφ θαη κε ηε νξζή ρξήζε θαη δηαρείξηζε ππάξρνπλ πνιιά νθέιε. Γηα παξάδεηγκα ε Ηιεθηξνληθή Πιαηθφξκα ηειεθπαίδεπζεο πνπ ηελ δηαρεηξίδνληαη θάπνηνη θαζεγεηέο βαζίδεηαη ζην αλνηρηφ ινγηζκηθφ Moodle. Δπηπξφζζεηα ε λέα ππεξεζία ηεο ζρνιήο ην ΗelpDesk πνπ εμππεξεηεί ην θνηλφ κε ζθνπφ π.ρ. ηε δήισζε θάπνηαο βιάβεο φζνλ αθνξά ηελ πιηθνηερληθή ππνδνκή ηνπ Σ.Δ.Ι., βαζίδεηαη θαη απηφ ζην αλνηρηφ ινγηζκηθφ ζεκαζηνινγηθνχ ζπζηήκαηνο δεκνζηεχζεσλ WordPress. Σέινο, δελ ζα κπνξχζε λα παξαιεθζεί ε ηζηνζειίδα ηεο ζρνιήο καο ε νπνία έρεη αλαπηπρζεί κε ηε ρξήζε open source ινγηζκηθνχ Joomla γηα αλάπηπμε ηζηνζειίδσλ. Σν Portal θαη Forum φπσο είπακε βαζίδεηαη ζε ινγηζκηθφ αλνηρηνχ θψδηθα. Οη πξνζαξκνγέο θαη νη ηξνπνπνηήζεηο πνπ έρνπλ γίλεη ζην πεγαίν θεληξηθφ θψδηθα ηεο εθαξκνγήο αιιά θαη γεληθφηεξα ζε φιν ην ζχλνιν ηνπ θψδηθα ην έρνπλ θαηαζηήζεη ηθαλφ λα αληαπνθξίλεηαη ζηηο αλάγθεο ηνπ Σ.Δ.Ι. Καζηνξηάο. Έηζη φπσο ηνλίζηεθε θαη παξαπάλσ ν πξνγξακκαηηζηήο ή νη πξνγξακκαηηζηέο πνπ ζα δηαρεηξίδεηαη ηελ εθαξκνγή δελ ζα εμαξηάηαη απφ θάπνηα εηαηξεία ε απφ θάπνηνπο άιινο θεξδνζθνπηθνχο νξγαληζκνχο. Οπφηε ε επηινγή γηα ειεχζεξν ινγηζκηθφ είλαη πνιχ ζνθή ζηε πεξίπησζε απηήο ηεο εθαξκνγήο κε ηελ νπνία ζρεηίδεηαη ε πηπρηαθή εξγαζία κνπ θαη ππάξρεη πξννπηηθή γηα ηελ πεξαηηέξσ αλάπηπμε ηεο θαη ζίγνπξα φρη κφλν απφ εκέλα αιιά θαη απφ άιια άηνκα πνπ ζέινπλ λα βνεζήζνπλ, πξνβάιινληαο έηζη θαη ην πνιχηηκν πλεχκα νκαδηθφηεηαο θαη ζπλεξγαζίαο. 25

26 Γηα αξθεηνχο ην ειεχζεξν ινγηζκηθφ θαη ην ινγηζκηθφ αλνηθηνχ θψδηθα ζεσξείηαη σο έλα πξντφλ ην νπνίν πξννξίδεηαη γηα ρνκπίζηεο, εηδηθνχο θαη πεπεηξακέλνπο ρξήζηεο θαη δελ είλαη θαηάιιειν γηα ηνλ ζπλήζε ρξήζηε. ηε ζέζε απηή ππάξρνπλ θαη αιήζεηεο θαη αλαθξίβεηεο. Όπσο αλαθέξακε θαη παξαπάλσ, ην ειεχζεξν ινγηζκηθφ θαη ην ινγηζκηθφ αλνηθηνχ θψδηθα, ζηηο αξρηθέο ηνπ εθδφζεηο δελ είλαη αξθεηά ζηαζεξφ, αιιά βειηηψλεηαη ζηελ πνξεία. Δπίζεο, επεηδή ε αλάπηπμή ηνπ μεθηλά απφ θάπνηα ζπγθεθξηκέλε αλάγθε πνπ δηακνξθψλεηαη θαη ζπκπιεξψλεηαη ζηελ πνξεία, θαζψο απμάλεηαη ν αξηζκφο ησλ ζπκκεηερφλησλ ζηελ αλάπηπμή ηνπ, νη αξρηθέο εθδφζεηο κπνξεί λα κελ θαιχπηνπλ ην ζχλνιν ησλ αλαγθψλ. Όκσο, αθνχ πεξάζνπλ ηα πξψηα ζηάδηα ηεο αλάπηπμεο θαη δνθηκαζηεί ην ινγηζκηθφ ζε δηάθνξεο εγθαηαζηάζεηο, απφ ηηο νπνίεο ζα πξνθχςνπλ παξαηεξήζεηο θαη βειηηψζεηο, ζηαδηαθά δεκηνπξγνχληαη ζηαζεξφηεξεο ιχζεηο. Μάιηζηα, ην ινγηζκηθφ ππνδνκήο ην νπνίν είλαη αξθεηά δηαδεδνκέλν θαη ρξεζηκνπνηείηαη ζε πνιιέο εγθαηαζηάζεηο (ι.ρ. ιεηηνπξγηθά ζπζηήκαηα, φπσο ην Linux, ινγηζκηθφ γηα servers, φπσο ν Apache Web Server θ.ιπ.) είλαη εμίζνπ ιεηηνπξγηθφ θαη ζηαζεξφ (θαη νξηζκέλεο θνξέο ζηαζεξφηεξν) απφ αληίζηνηρεο εκπνξηθέο ιχζεηο. Σειεπηαία κεγάινη θαηαζθεπαζηέο ππνζηεξίδνπλ πιένλ ινγηζκηθφ πνπ έρεη αλαπηπρζεί σο ειεχζεξν ινγηζκηθφ ή ινγηζκηθφ αλνηθηνχ θψδηθα θαη απηφ επεηδή ζπλήζσο ην ειεχζεξν ινγηζκηθφ θαη ην ινγηζκηθφ αλνηθηνχ θψδηθα πεξηιακβάλνπλ θαη ηνλ πεγαίν θψδηθα, κία εηαηξία ή έλαο ηδηψηεο κπνξεί λα πξνζαξκφζεη ην ινγηζκηθφ ζηηο ηδηαίηεξεο αλάγθεο ηεο, ρσξίο λα ζπκβηβάδεηαη κε ιχζεηο πνπ δελ ηνλ ηθαλνπνηνχλ απνιχησο νχηε μεθηλψληαο ηε δεκηνπξγία ινγηζκηθνχ απ ην κεδέλ Η PHP γιώζζα Η ζεκαζία ηεο PhP Ιζηνξηθά ζηνηρεία Σξόπνη ρξήζεο ηεο 26

27 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Η PHP είλαη κηα επξέσο ρξεζηκνπνηνχκελε γεληθνχ ζθνπνχ γιψζζα ζπγγξαθήο ζπκβάλησλ / ζελαξίσλ ή ήζηζηε λα απνθαιείηαη γιψζζα πξνγξακκαηηζκνχ GPSL (General Purpose Scripting Language ) ε νπνία είλαη θαηάιιειε εηδηθά γηα αλάπηπμε δηαδηθηπαθψλ εθαξκνγψλ θαη κπνξεί λα ελζσκαησζεί ζηελ HTML θαη εθηειείηαη ζηελ πιεπξά ηνπ Server (Server - Side Scripting), ( Όηαλ εθηειείηαη κηα γιψζζα ζηελ πιεπξά ηνπ Client ιέγεηαη Client - Side Scripting). Μηα ζειίδα PHP πεξλά απφ επεμεξγαζία απφ έλα ζπκβαηφ δηαθνκηζηή ηνπ Παγθφζκηνπ Ιζηνχ (π.ρ. Apache ), ψζηε λα παξαρζεί ζε πξαγκαηηθφ ρξφλν ην ηειηθφ πεξηερφκελν, πνπ ζα ζηαιεί ζην πξφγξακκα πεξηήγεζεο ησλ επηζθεπηψλ ζε κνξθή θψδηθα HTML. Η ηζηνξία ηεο PHP μεθηλά απφ ην 1995, φηαλ έλαο θνηηεηήο, ν Rasmus Lerdorf δεκηνχξγεζε ρξεζηκνπνηψληαο ηε γιψζζα πξνγξακκαηηζκνχ Perl έλα απιφ script δειαδή έλα «ζελάξην» ή «πξφγξακκα» ην νπνίν απνηειείηαη απφ γξακκέο εληνιψλ (θψδηθαο) πνπ εθηειεί ζπγθεθξηκέλεο ελέξγεηεο γηα ηελ επίιπζε ελφο ζπγθεθξηκέλνπ πξνβιήκαηνο. κε φλνκα PhP.cgi, γηα πξνζσπηθή ρξήζε. Σν script απηφ είρε ζαλ ζθνπφ λα δηαηεξεί κηα ιίζηα ζηαηηζηηθψλ γηα ηα άηνκα πνπ έβιεπαλ ην online βηνγξαθηθφ ηνπ ζεκείσκα. Αξγφηεξα απηφ ην script ην δηέζεζε θαη ζε θίινπο ηνπ, νη νπνίνη άξρηζαλ λα ηνπ δεηνχλ λα πξνζζέζεη πεξηζζφηεξεο δπλαηφηεηεο. Η γιψζζα ηφηε νλνκαδφηαλ PHP/FI απφ ηα αξρηθά Personal Home Page/Form Interpreter. Σν 1997 ε PHP/FI έθζαζε ζηελ έθδνζε 2.0, βαζηδφκελε απηή ηε θνξά ζηε γιψζζα C θαη αξηζκψληαο πεξηζζφηεξνπο απφ ηζηφηνπνπο πνπ ηε ρξεζηκνπνηνχζαλ, ελψ αξγφηεξα ηελ ίδηα ρξνληά νη Andi Gutmans θαη Zeev Suraski μαλαέγξαςαλ ηε γιψζζα απφ ηελ αξρή, βαζηδφκελνη φκσο αξθεηά ζηελ PHP/FI 2.0. Έηζη ε PHP έθζαζε ζηελ έθδνζε 3.0 ε νπνία ζχκηδε πεξηζζφηεξν ηε ζεκεξηλή κνξθή ηεο. ηε ζπλέρεηα, νη Zeev θαη Andi δεκηνχξγεζαλ ηελ εηαηξεία Zend (απφ ηα αξρηθά ησλ νλνκάησλ ηνπο), ε νπνία ζπλερίδεη κέρξη θαη ζήκεξα ηελ αλάπηπμε θαη εμέιημε ηεο γιψζζαο PHP. Αληαγσληζηέο ηεο ηερλνινγίαο PHP είλαη νη εμήο γιψζζεο πξνγξακκαηηζκνχ : ASP (Active Server Pages) ηεο εηαηξείαο Microsoft, CFML (ColdFusion Markup Language) ηεο εηαηξείαο Allaire θαη JSP (Java Server Pages) ηεο εηαηξείαο Sun. Σν κεγαιχηεξν κέξνο ηεο ζχληαμήο ηεο, ε PHP ην έρεη δαλεηζηεί απφ ηελ C, ηελ Java θαη ηελ Perl θαη δηαζέηεη θαη κεξηθά δηθά ηεο κνλαδηθά ραξαθηεξηζηηθά. Ο ζθνπφο ηεο γιψζζαο είλαη λα δψζεη ηε δπλαηφηεηα ζηνπο web developers λα δεκηνπξγνχλ δπλακηθά παξαγφκελεο ηζηνζειίδεο. 27

28 Πνιιά απφ ηα γλσζηφηεξα πξνγξάκκαηα Online Forum ή Wiki είλαη γξακκέλα ζε PHP, θαη ν ζπλδπαζκφο ηεο κε ηνλ Apache Web Server θαη ην ζχζηεκα δηαρείξηζεο βάζεο δεδνκέλσλ ΜySql, είλαη ηφζν ζπρλφο πνπ αλαθέξεηαη ζπρλά σο LAMP. Η ζχληαμε ηεο ζπκίδεη αξθεηά απηή ηεο C αθνχ φπσο είπακε έρεη δαλεηζηεί κεξηθά ραξαθηεξηζηηθά ηεο, θαη είλαη αξθεηά απιή ζηελ εθκάζεζε, αθφκα θαη απφ αξράξηνπο πξνγξακκαηηζηέο. [2a,1b,2c,3c,9c] Έλα πνιχ απιφ παξάδεηγκα ελφο PhP script είλαη ην (Παξάδεηγκα Κψδηθα 1) εμήο: <html> <head> <title> Παπάδειγμα PhP Script </title> </head> <body> <?PhP echo "Η πηςσιακή μος επγαζία! Ρούζζορ Γιώπγορ";?> </body> </html> Η ζπγγξαθή ηνπ θψδηθα PhP είλαη ζρεηηθά εχθνιε ππφζεζε. Γξάθεηαη ηαπηφρξνλα κε ηνλ html θψδηθα θαη ελζσκαηψλεηαη ζε απηφλ φπσο παξαηεξνχκε. Ο θψδηθαο ηεο PhP μερσξίδεη απφ ηελ html κε ηα θαηάιιεια tags έλαξμεο-ηεξκαηηζκνχ ηα νπνία εμαξηψληαη απφ ηηο ξπζκίζεηο πνπ έρνπλ γίλεη ζηελ εγθαηάζηαζε ηεο PhP (ζπλήζσο ην tag έλαξμεο είλαη <?PhP θαη ηνπ ηεξκαηηζκνχ είλαη?>). Σα αξρεία πνπ πεξηέρνπλ PhP scripts πξέπεη λα απνζεθεπηνχλ κε θαηάιιειε θαηάιεμε (π.ρ. *.PhP). Απηφ πνπ μερσξίδεη ηελ PHP είλαη φηη ιεηηνπξγεί ζηελ πιεπξά ηνπ Server, δειαδή εγθαζίζηαηαη ζηνλ Server θαη ηα script πνπ είλαη γξακκέλα ζε απηή ρξεζηκνπνηνχλ πφξνπο απ ηνλ ππνινγηζηή- Server γηα ηελ εθηέιεζή ηνπο θαη ηα απνηειέζκαηα ηεο εθηέιεζεο ζηέιλνληαη ζηνλ client ζε κνξθή html. Απηφο είλαη θαη ν ιφγνο πνπ ε PhP δε κπνξεί λα ρξεζηκνπνηεζεί γηα αλαδπφκελα κελνχ, άλνηγκα λέσλ παξάζπξσλ, πξνζζήθε εθέ θαη ελεξγεηψλ κε ηε κεηαθίλεζε ηνπ πνληηθηνχ. Αληίζεηα απηά κπνξνχλ λα γίλνπλ κε άιιεο γιψζζεο script πνπ ρξεζηκνπνηνχλ ηερλνινγία πειάηε (φπσο ε Javascript). Δπηπιένλ ν θψδηθαο ηεο PhP παξεκβάιιεηαη ζε θψδηθα Html (κε θαηάιιειε ζήκαλζε 28

29 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ ζηελ αξρή θαη ην ηέινο ηνπ θψδηθα PhP). Ο θψδηθαο ηεο PhP δελ εθηειείηαη απηφλνκα αιιά ηαπηφρξνλα (γξακκή πξνο γξακκή) κε ηνλ θψδηθα ηεο html.. Ση αθφκε ζπνπδαίν φκσο έρεη απηή ε γιψζζα; Η PHP κπνξεί λα ρξεζηκνπνηεζεί ζε φια ηα θχξηα ιεηηνπξγηθά ζπζηήκαηα, ζπκπεξηιακβαλνκέλνπ ηνπ Linux, πνιιψλ εθδνρψλ ηνπ Unix (HP-UX, Solaris θαη OpenBSD), Microsoft Windows, Mac OS X, RISC OS θαη πηζαλψο ζε άιια. Η PHP ππνζηεξίδεη επίζεο ηνπο Apache, Microsoft Internet Information Server, Personal Web Server, Netscape θαη iplanet servers, Oreilly Website Pro server, Caudium, Xitami, OmniHttpd, θαη πνιινχο άιινπο Web Servers. Γηα ηελ πιεηνςεθία ησλ Servers ε PHP έρεη έλα module, γηα ηνπο ππφινηπνπο ε PHP κπνξεί λα ιεηηνπξγήζεη σο έλαο CGI επεμεξγαζηήο. πλεπψο κε ηελ PHP έρνπκε ηελ ειεπζεξία επηινγήο ελφο ιεηηνπξγηθνχ ζπζηήκαηνο θαη ελφο web server. Δπηπιένλ, έρνπκε επίζεο ηελ ειεπζεξία λα ρξεζηκνπνηήζνπκε ζπλαξηεζηαθφ (procedural) ή αληηθεηκελνζηξαθή (object oriented) πξνγξακκαηηζκφ ή κηα αλάκεημε ηνπο. Αλ θαη ε παξνχζα έθδνζε δελ ππνζηεξίδεη φια ηα πξφηππα ραξαθηεξηζηηθά, κεγάιεο βηβιηνζήθεο θψδηθα θαη κεγάιεο εθαξκνγέο (ζπκπεξηιακβαλνκέλεο θαη ηεο βηβιηνζήθεο PEAR) είλαη γξακκέλεο κφλν κε αληηθεηκελνζηξαθή θψδηθα. Με ηελ PHP δελ είκαζηε πεξηνξηζκέλνη λα εμάγνπκε HTML. Οη δπλαηφηεηεο ηεο PHP ζπκπεξηιακβάλνπλ ηελ εμαγσγή εηθφλσλ, αξρείσλ PDF, αθφκε θαη ηαηλίεο Flash (ρξεζηκνπνηψληαο ηα libswf θαη Ming) παξάγνληαη ακέζσο. Μπνξνχκε επίζεο λα εμάγνπκε εχθνια νπνηνδήπνηε θείκελν φπσο XHTML θαη νπνηνδήπνηε άιιν XML αξρείν. Η PHP κπνξεί λα δεκηνπξγεί απηφκαηα απηά ηα αξρεία θαη λα ηα απνζεθεχεη ζην ζχζηεκα αξρείσλ, αληί λα ηα εθηππψλεη, απνηειψληαο έηζη κηα server-side cache γηα ην δπλακηθφ ζαο πεξηερφκελν. Έλα απφ ηα πην δπλαηά θαη ζεκαληηθά ραξαθηεξηζηηθά ηεο PHP είλαη ε ππνζηήξημε πνπ έρεη γηα έλα κεγάιν ζχλνιν βάζεσλ δεδνκέλσλ. Η PHP ππνζηεξίδεη ηηο εμήο βάζεηο δεδνκέλσλ κέρξη ζηηγκήο: 29

30 PHP - Τπνζηεξηδόκελεο Βάζεηο Γεδνκέλσλ MySql Adabas D dbase Empress FilePro Hyperwave IBM DB2 Informix Ingres InterBase FrontBase Direct MS- SQL ODBC Oracle Ovrismos PostgreSql Solid Sybase Velocis Unix dbm Όηαλ ελζσκαησζεί θψδηθαο PhP ζε κηα ηζηνζειίδα, εθηεινχληαη νη παξαθάησ δηαδηθαζίεο: 1. Ο επηζθέπηεο δεηάεη κηα ηζηνζειίδα κε ηε δηεχζπλζή ηεο, κε ηε βνήζεηα ηνπ browser. 2. Ο browser κεηαβηβάδεη ηελ αίηεζε ζηνλ server πνπ ζηελ πεξίπησζε καο είλαη ν apache. 3. Σφηε ε PhP επεμεξγάδεηαη ην αξρείν πνπ άθνξα ηελ αίηεζε ζηνλ Apache θαη εθηειεί ην κέξνο ηνπ θψδηθα πνπ ηελ αθνξά (βξίζθεηαη κέζα ζε tags). 4. Η PhP επηζηξέθεη ηα απνηειέζκαηα ζε κνξθή HTML. Μπνξνχκε θάιιηζηα λα παξαηεξήζνπκε ηελ δηαδηθαζία ζηελ Δηθφλα 3 πνπ βξίζθεηαη παξαθάησ. 30

31 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Εικόνα 3 Λειτουργία PHP HTML MYSQL - APACHE Πιενλεθηήκαηα ηεο PhP Κόζηνο. Η PHP είλαη γιψζζα αλνηθηνχ θψδηθα, πνπ ζεκαίλεη φηη ν πεγαίνο θψδηθαο είλαη δηαζέζηκνο ζε φινπο γηα ρξήζε, γηα ηξνπνπνίεζε θαη αλαδηαλνκή ρσξίο θάπνην θφζηνο. Γηαζεζηκόηεηα Πεγαίνπ Κώδηθα. Αληίζεηα κε ηα εκπνξηθά θιεηζηνχ θψδηθα πξντφληα, ν αλνηθηφο δηαζέζηκνο θψδηθαο ηεο PHP πξνζθέξεη ηε δπλαηφηεηα ησλ ηξνπνπνηήζεσλ ηνπ. Έηζη ε νπνηαδήπνηε δηφξζσζε ή αλαβάζκηζε κπνξεί λα γίλεη απφ ην ρξήζηε ή απφ θάπνηα νκάδα αλεμάξηεησλ ρξεζηψλ, ρσξίο εμάξηεζε απφ θάπνηα εηαηξία. Υπνζηήξημε. Η Zend, ε εηαηξία πνπ ππνζηεξίδεη ηελ PHP, ρξεκαηνδνηεί ηελ αλάπηπμε ηεο, πξνζθέξνληαο ππνζηήξημε θαη ζρεηηθφ ινγηζκηθφ ζε εκπνξηθή βάζε. Σπκβαηόηεηα. H PHP είλαη δηαζέζηκε ζε πνιιά ιεηηνπξγηθά ζπζηήκαηα θαη ζπλήζσο ν θψδηθαο δνπιεχεη ρσξίο αιιαγέο ζε δηαθνξεηηθά ιεηηνπξγηθά ζπζηήκαηα πνπ ηξέρνπλ ηελ PHP. Απόδνζε. Η PHP είλαη πνπ απνδνηηθή. Με έλα θζελφ δηαθνζκεηή κπνξνχκε λα εμππεξεηήζνπκε εθαηνκκχξηα επηζθέςεσλ ζε εκεξήζηα βάζε. Γηαζύλδεζε κε πνιιά δηαθνξεηηθά ζπζηήκαηα βάζεωλ Γεδνκέλωλ. (φπσο είπακε θαη ιίγν πην πάλσ.) Η PHP έρεη δηθέο ηηο ζπλδέζεηο κε πνιιά ζπζηήκαηα βάζεσλ 31

32 δεδνκέλσλ. Έρεη επίζεο ελζσκαησκέλε SQL δηαζχλδεζε ζην επίπεδν αξρείν SQLite. Με ηε ρξήζε ηνπ standard ODBC κπνξεί λα ζπλδεζεί ζε νπνηαδήπνηε βάζε έρεη πξφγξακκα νδήγεζεο ODBC (φπσο π.ρ. Σα πξντφληα ηεο Microsoft). Δλζωκαηωκέλεο Βηβιηνζήθεο. Η PHP έρεη πνιιέο ελζσκαησκέλεο βηβιηνζήθεο πνπ εθηεινχλ πνιιέο ρξήζηκεο ιεηηνπξγίεο. Γπλακηθή δεκηνπξγία εηθφλσλ GIF, ζχλδεζε κε άιιεο ππεξεζίεο δηθηχσλ, αλάιπζε XML, απνζηνιή , δεκηνπξγία εγγξάθσλ PDF. Δπθνιία Δθκάζεζεο. Η ζχληαμε ηεο PHP βαζίδεηαη ζε άιιεο γιψζζεο πξνγξακκαηηζκνχ, θπξίσο ζηελ C θαη ζηελ Perl. Οη γλψζηεο κηαο γιψζζαο πξνγξακκαηηζκνχ ηεο νηθνγέλεηαο ηεο C επηηξέπνπλ ζε θάπνηνλ λα μεθηλήζεη ακέζσο ηνλ πξνγξακκαηηζκφ ζηελ PHP. Αληηθεηκελνζηξαθήο ππνζηήξημε. ηελ PHP ππάξρνπλ νη γλσζηέο απφ ηε C++ θαη Java αληηθεηκελνζηξαθείο ιεηηνπξγίεο φπσο ε θιεξνλνκηθφηεηα, νη ηδησηηθέο θαη πξνζηαηεπκέλεο ηδηφηεηεο θαη κέζνδνη, νη αθεξεκέλεο θιάζεηο θαη κέζνδνη, νη δηαζπλδέζεηο, νη ζπλαξηήζεηο δεκηνπξγίαο, απνδηάξζξσζε. Δπίζεο ππάξρνπλ θαη άιιεο ιηγφηεξν δεκνθηιείο ιεηηνπξγίεο. Δπθνιία εθκάζεζεο. Η PhP είλαη πνιχ επέιηθηε θαη εχθνιε ζηελ εθκάζεζε ηεο. Αληίζεηα κε άιιεο γιψζζεο πνπ επηηεινχλ ηνλ ίδην ζθνπφ, έρεη εχθνιε ζχληαμε θαη δελ απαηηεί ηδηαίηεξεο γλψζεηο πξνγξακκαηηζκνχ γηα λα μεθηλήζεη θάπνηνο λα ηε ρξεζηκνπνηεί. Η PhP ζα κπνξνχζε λα ιερζεί φηη έπαημε ην ζεκαληηθφηεξν ξφιν ζε απηή ηε εξγαζία. Λφγσ ηνπ φηη είλαη κία γιψζζα ε νπνία ζπλερψο αλαπηχζζεηαη θαη εμειίζζεηαη, ην Portal θαη Forum θπζηθά δελ κπνξεί λα κείλεη ζηάζηκν, αιιά θιεξνλνκεί αθξηβψο ηα ραξαθηεξηζηηθά ηεο γιψζζαο. Αλάπηπμε θαη εμέιημε. 32

33 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 2.3 Η MySql Βάζε Γεδνκέλσλ Δηζαγσγηθά ζηνηρεία βάζεσλ δεδνκέλσλ Αθνχ αλαθέξακε κεξηθά ραξαθηεξηζηηθά PhP γιψζζαο θαη θαηαλνήζακε κεξηθέο βαζηθέο πηπρέο ηεο σο πξνο ηε ρξήζε ηεο θαη ηε ιεηηνπξγηθφηεηά ηεο, ηψξα ζα αλαθεξζνχκε ζηνλ πην δηαδεδνκέλν πεξηβάιινλ βάζεσλ δεδνκέλσλ. Σελ MySql Database, πνπ είηε ιίγν είηε πνιχ φινη φζνη αζρνινχκαζηε κε ηνλ πξνγξακκαηηζκφ ηελ έρνπκε αθνπζηά. Υσξίο ηελ ΜySql ε επίηεπμε ηεο εξγαζία δελ ζα ήηαλ εθηθηή. Γηα λα δνχκε γηαηί. Αξρηθά λα αλαθέξνπκε φηη κία βάζε δεδνκέλσλ (Database) είλαη έλα ςεθηαθφ αξρείν απνζήθεπζεο θαη νκαδνπνίεζεο ζρεηηδφκελσλ δεδνκέλσλ ζε πίλαθεο (Tables). Σα δεδνκέλα κηαο βάζεο δεδνκέλσλ πξέπεη λα έρνπλ θάπνηα ζπζρέηηζε κεηαμχ ηνπο, ινγηθή ζπλέρεηα θαη δνκή. Δπίζεο απαξαίηεηε πξνυπφζεζε, ψζηε έλα ζχλνιν απνζεθεπκέλσλ δεδνκέλσλ λα απνηειεί βάζε δεδνκέλσλ, είλαη ε δπλαηφηεηα χπαξμεο θνηλήο, ηαπηφρξνλεο θαη θεληξηθήο δηαρείξηζεο ησλ δεδνκέλσλ απηψλ, Μηα βάζε δεδνκέλσλ απνηειείηαη απφ έλαλ ή πεξηζζφηεξνπο πίλαθεο. Ο θάζε πίλαθαο πεξηέρεη κηα ή πεξηζζφηεξεο ζηήιεο (Columns), φπνπ ε θάζε ζηήιε πεξηέρεη έλα ζπγθεθξηκέλν είδνο δεδνκέλσλ. Δπίζεο ν πίλαθαο πεξηέρεη γξακκέο. Γηα θάζε εγγξαθή ππάξρεη κηα γξακκή ζηνλ πίλαθα. Με ην ίδην ηξφπν ιεηηνπξγεί θαη ην Portal θαη Forum. Σν θαζεηί πνπ ππάξρεη πάλσ ζηελ εθαξκνγή είλαη θαηαρσξεκέλν κέζα ζηνπ πίλαθεο ηεο βάζεο δεδνκέλσλ. Η βάζε δεδνκέλσλ ηεο εθαξκνγήο, θπζηθά δηαρεηξίδεηαη θαη ξπζκίδεηαη κε ηε βνήζεηα ηνπ αλνηρηνχ θψδηθα ινγηζκηθνπ PhPbb θαη κε ηε βνήζεηα ηνπ PhPAdmin (ζα αλαιπζνχλ παξαθάησ) θαζψο είλαη αδχλαην κε δηαθνξεηηθφ ηξφπν λα ειέλμνπκε εθαηνκχξηα ρηιηάδεο πίλαθεο πνπ ήδε ππάξρνπλ θαη ηνπο ρηιηάδεο πίλαθεο πνπ ζα δεκηνπξγνχληαη απηφκαηα κέζσ ηεο PhP απφ ηα κέιε πνπ ζα ρξεζηκνπνηνχλ ην Portal θαη Forum θαη κε ηελ ζπκβνιή ηνπο ζα ην επεθηείλνπλ. 33

34 Δδψ πξέπεη λα ζεκεησζεί φηη νη Βάζεηο δεδνκέλσλ δελ είλαη πξνλφκην ησλ ειεθηξνληθψλ Τπνινγηζηψλ. Βάζεηο δεδνκέλσλ ππήξραλ πξηλ απφ ηνπο Η/Τ, ζε έληππε κνξθή. Όκσο ζήκεξα κε ηνλ φξν βάζε δεδνκέλσλ αλαθεξφκαζηε ζρεδφλ απνθιεηζηηθά ζηελ ειεθηξνληθή ηνπο κνξθή. Η SQL (Structed Query Language) είλαη ε πην θνηλή γιψζζα εξσηήζεσλ γηα δηαρείξηζε ζρεζηαθψλ βάζεσλ δεδνκέλσλ. Με ηελ SQL κπνξεί λα γίλεη αλάθηεζε εγγξαθψλ, εηζαγσγή λέσλ, δηαγξαθή, ελεκέξσζε εγγξαθψλ δεδνκέλσλ απφ κηα βάζε δεδνκέλσλ. Γελ είλαη πιήξεο γιψζζα πξνγξακκαηηζκνχ αιιά κέζσ πνιπάξηζκσλ εληνιψλ πξνζθέξεη νινθιεξσκέλε δηαρείξηζε ησλ ζρεζηαθψλ βάζεσλ δεδνκέλσλ. Η πξψηε ηεο πινπνίεζε έγηλε ην 1974 θαη κεηά απφ ηε καθξά πνξεία ηεο, ζήκεξα έρεη θαηαθηήζεη πνιιά ζπζηήκαηα δηαρείξηζεο βάζεσλ δεδνκέλσλ. H ΜySql είλαη έλα, αλνηθηνχ θψδηθα, ζχζηεκα δηαρείξηζεο ζρεζηαθψλ βάζεσλ δεδνκέλσλ. Σν ζχζηεκα δηαρείξηζεο MySql ινηπφλ δίλεη ηε δπλαηφηεηα ηεο απνζήθεπζεο, αλαδήηεζεο, ηαμηλφκεζεο, νκαδνπνίεζεο, αλάθιεζεο δεδνκέλσλ κε βάζε ηε γιψζζα εξσηεκάησλ SQL. Σν γεγνλφο φηη ε ΜySql είλαη ζρεζηαθή ζπλεπάγεηαη φηη ε νξγάλσζε ησλ δεδνκέλσλ γίλεηαη ζε δηαθνξεηηθνχο πίλαθεο νη νπνίνη ζρεηίδνληαη κεηαμχ ηνπο κε θάπνην ζαθψο νξηζκέλν ηξφπν. Η ΜySql επηπιένλ δχλαηαη λα ειέγρεη ηελ πξφζβαζε ζηα δεδνκέλα, εμαζθαιίδνληαο έηζη ηε δπλαηφηεηα ε πξφζβαζε λα γίλεηαη απφ δηαθνξεηηθνχο ρξήζηεο. Κάζε ρξήζηεο έρεη ζπγθεθξηκέλα δηθαηψκαηα πάλσ ζηηο βάζεηο δεδνκέλσλ πνπ ηνπ ηα δίλεη ε ΜySql. [ 1a,2a,5a,1b,3c,20c,23c] Παξαθάησ αθνινπζεί ην απινχζηεξν παξάδεηγκα κε γεληθφ θψδηθα MySql SELECT field1, field2, field3 FROM table WHERE condition; 34

35 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ ηνηρεία Γιώζζαο Η γιψζζα SQL ππνδηαηξείηαη ζε δηάθνξα γισζζηθά ζηνηρεία, κεηαμχ ησλ νπνίσλ: Δξσηήκαηα πνπ αλαθηνχλ δεδνκέλα κε βάζε ζπγθεθξηκέλα θξηηήξηα. Δθθξάζεηο πνπ κπνξεί λα παξάγεη είηε κνλνδηάζηαηεο αμίεο ή πίλαθεο πνπ απνηεινχληαη απφ ζηήιεο θαη γξακκέο δεδνκέλσλ. Πξνυπνζέζεηο πνπ δηεπθξηλίδνπλ ζπλζήθεο φηη κπνξνχλ λα αμηνινγεζνχλ ζε SQL three-valued logic (3VL). Boolean αμίεο νη νπνίεο ρξεζηκνπνηνχληαη γηα ηνλ πεξηνξηζκφ ησλ επηπηψζεσλ ησλ δειψζεσλ θαη ησλ εξσηεκάησλ, ή λα αιιάμεη ηελ ξνή ηνπ πξνγξάκκαηνο. Ρήηξεο, νη νπνίεο ζε νξηζκέλεο πεξηπηψζεηο είλαη, πξναηξεηηθά, ζπζηαηηθά ζηνηρεία ησλ δειψζεσλ θαη ηα εξσηήκαηα. Σν Whitespace γεληθά αγλνείηαη ζε SQL δειψζεηο θαη εξσηήκαηα, θαζηζηψληαο επθνιφηεξε ηελ κνξθνπνίεζε ηνπ SQL θψδηθα γηα ηελ αλαγλσζηκφηεηα. Οη SQL δειψζεηο πεξηιακβάλνπλ επίζεο ην εξσηεκαηηθφ (";") γηα δήισζε ηεξκαηηζκνχ. Αλ θαη δελ απαηηείηαη γηα θάζε πιαηθφξκα, νξίδεηαη σο ηππηθφ κέξνο ηεο SQL γξακκαηηθήο Δξσηήκαηα Η πην θνηλή ιεηηνπξγία ζε βάζεηο δεδνκέλσλ SQL είλαη ην εξψηεκα, πνπ πξαγκαηνπνηείηαη κε ηε ιέμε θιεηδί SELECT. Η SELECT αλαθηά δεδνκέλα απφ έλα ζπγθεθξηκέλν πίλαθα, ή πνιιαπινχο ζρεηηθνχο πίλαθεο ζε κηα βάζε δεδνκέλσλ. Δλψ ζπρλά ηαμηλνκνχληαη κε δειψζεηο Data Manipulation Language (DML), ην πξφηππν SELECT ζεσξείηαη μερσξηζηφ απφ ην SQL DML, δεδνκέλνπ φηη δελ έρεη κφληκεο επηπηψζεηο ζηα δεδνκέλα πνπ απνζεθεχνληαη ζε κηα βάζε δεδνκέλσλ. εκεηψλεηαη φηη ππάξρνπλ θάπνηα πιαηθφξκα εηδηθά γηα ηηο παξαιιαγέο ησλ SELECT πνπ κπνξεί λα πθίζηαληαη νη επηπηψζεηο ηνπο ζε κηα βάζε δεδνκέλσλ, φπσο είλαη ην SELECT INTO ζχληαμε πνπ ππάξρεη ζε νξηζκέλεο βάζεηο δεδνκέλσλ. Σα SQL εξσηήκαηα δίλνπλ ζην ρξήζηε ηε δπλαηφηεηα λα νξίζνπλ κηα πεξηγξαθή ηνπ επηδησθφκελνπ απνηειέζκαηνο πνπ έρεη ηεζεί, αιιά αθήλεηαη ζηηο ζπζθεπέο ηνπ ζπζηήκαηνο δηαρείξηζεο βάζεσλ δεδνκέλσλ (DBMS) λα ζρεδηάζνπλ, ηε βειηηζηνπνίεζε, θαη εθηειεί ηηο πιηθέο ελέξγεηεο πνπ είλαη αλαγθαίεο γηα λα παξάγνπλ απηφ ην απνηέιεζκα 35

36 κε ηνλ δπλαηφηεξν απνηειεζκαηηθφ ηξφπν. Μηα SQL εξψηεζε πεξηιακβάλεη κηα ιίζηα ησλ ζηειψλ πνπ ζα πεξηιεθζνχλ ζην ηειηθφ απνηέιεζκα ακέζσο κεηά ην SELECT. Ο αζηεξίζθνο * κπνξεί επίζεο λα ρξεζηκνπνηεζεί σο "κπαιαληέξ" δείθηεο γηα λα δηεπθξηληζηεί φηη φιεο νη δηαζέζηκεο ζηήιεο ελφο πίλαθα (ή πίλαθεο πνιιαπινχο) είλαη πνπ πξέπεη λα επηζηξαθνχλ. Η SELECT είλαη ε πην πνιχπινθε δήισζε ζηελ SQL, κε πνιιέο πξναηξεηηθέο ιέμεηο-θιεηδηά, κεηαμχ ησλ νπνίσλ: Η FROM πνπ ππνδειψλεη ηελ πίλαθα ή πίλαθεο απφ ηνπο νπνίνπο ηα δεδνκέλα πξέπεη λα αλαθηεζνχλ. Η FROM κπνξεί λα πεξηιακβάλεη πξναηξεηηθά ηελ JOIN ψζηε λα εληαρζνχλ ζε πίλαθεο πνπ ζπλδένληαη κεηαμχ ηνπο κε βάζε θξηηήξηα πνπ νξίδεηαη απφ ην ρξήζηε. Η WHERE πεξηιακβάλεη έλα ππνθείκελν ζχγθξηζεο, ην νπνίν ρξεζηκνπνηείηαη γηα λα πεξηνξίζεη ηνλ αξηζκφ ησλ γξακκψλ πνπ επηζηξέθνληαη απφ ην εξψηεκα. Η WHERE εθηειείηαη πξηλ απφ ην GROUP BY. Η WHERE εμαιείθεη φιεο ηηο γξακκέο απφ ην απνηέιεζκα φηαλ ε ζχγθξηζε δελ αμηνινγεί ζε True. Σν GROUP BY ρξεζηκνπνηείηαη γηα λα ζπλδπάζεη, ή νκαδνπνηήζεη, ζεηξέο κε ηηο αληίζηνηρεο αμίεο ησλ ζηνηρείσλ ζε κηα κηθξφηεξε ζεηξά γξακκψλ. Σν GROUP BY ρξεζηκνπνηείηαη ζπρλά ζε ζπλδπαζκφ κε ην ζπλνιηθέο SQL ιεηηνπξγίεο ή λα εμαιείςεη ζεηξέο απφ έλα ζχλνιν απνηειεζκάησλ. Η HAVING πεξηιακβάλεη ζχγθξηζε πνπ ρξεζηκνπνηείηαη γηα ηελ εμάιεηςε ησλ βαζηθψλ γξακκψλ κεηά ην GROUP BY θαη ηζρχεη γηα ην ζχλνιν ησλ απνηειεζκάησλ. Δπεηδή πξάηηεη ζρεηηθά κε ηα απνηειέζκαηα ηνπ GROUP BY, ζπλνιηθέο ιεηηνπξγίεο κπνξνχλ λα ρξεζηκνπνηεζνχλ ζηελ HAVING. Η ORDER BY ρξεζηκνπνηείηαη γηα λα εληνπίζεη ηηο ζηήιεο πνπ ρξεζηκνπνηνχληαη θαη λα ηαμηλνκήζεη ηα δεδνκέλα πνπ πξνθχπηνπλ, θαη κε πνηα ζεηξά ζα πξέπεη λα είλαη ηαμηλνκεκέλα (νη επηινγέο είλαη αχμνπζα ή θζίλνπζα). Η ζεηξά ησλ γξακκψλ πνπ επηζηξέθνληαη απφ έλα SQL εξψηεκα δελ είλαη πνηέ εγγπεκέλε άλ έλα ORDER BY δελ δηεπθξηληζηεί. 36

37 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Υεηξαγώγεζε Πξψηνλ, ππάξρνπλ ηα ζηνηρεία ηεο Data Manipulation Language (DML). Η DML είλαη ην ππνζχλνιν ηεο γιψζζαο πνπ ρξεζηκνπνηείηαη γηα ηελ πξνζζήθε, ελεκέξσζε θαη δηαγξαθή δεδνκέλσλ: Σν INSERT ρξεζηκνπνηείηαη γηα λα πξνζηεζνχλ γξακκέο ζε ππάξρνληα πίλαθα, γηα παξάδεηγκα: INSERT INTO My_table (field1, field2, field3) VALUES ('test', 'N', NULL); Σν UPDATE ρξεζηκνπνηείηαη γηα λα ηξνπνπνηήζεη ηηο ηηκέο κηαο ζεηξάο πθηζηάκελσλ γξακκψλ πίλαθα, π.ρ.: UPDATE My_table SET field1 = 'updated value' WHERE field2 = 'N'; Σν DELETE θαηαξγεί ην κεδέλ ή πεξηζζφηεξεο ππάξρνπζεο ζεηξέο απφ έλαλ πίλαθα, π.ρ.: DELETE FROM My_table WHERE field2 = 'N'; Οξηζκόο δεδνκέλσλ Η δεχηεξε νκάδα είλαη νη ιέμεηο-θιεηδηά Data Definition Language (DDL). Η DDL επηηξέπεη ζην ρξήζηε λα νξίζεη λένπο πίλαθεο θαη ζπλαθή ζηνηρεία. Οη πεξηζζφηεξεο εκπνξηθέο βάζεηο δεδνκέλσλ SQL έρνπλ ηδηφθηεηεο επεθηάζεηο ζε DDL, πνπ επηηξέπνπλ ηνλ έιεγρφ ησλ φρη ζπλεζηζκέλσλ ιεηηνπξγηψλ ηνπ ζπζηήκαηνο βάζεο δεδνκέλσλ. Σα πην βαζηθά ζεκεία ηεο DDL είλαη ε CREATE, RENAME, TRUNCATE θαη DROP δειψζεηο: Η CREATE επηηξέπεη έλα αληηθείκελν (έλα ηξαπέδη, γηα παξάδεηγκα) λα δεκηνπξγεζεί ζην εζσηεξηθφ ηεο βάζεο δεδνκέλσλ. Η DROP επηηξέπεη ζε έλα ππάξρνλ αληηθείκελν κέζα ζηελ βάζε δεδνκέλσλ λα δηαγξαθεί, ζπλήζσο αλεπαλφξζσηα. Η TRUNCATE δηαγξάθεη φια ηα δεδνκέλα απφ έλαλ πίλαθα (κε ζπλήζε, αιιά θνηλή δήισζε SQL). Η ALTER δήισζε επηηξέπεη ζηνλ ρξήζηε λα ηξνπνπνηήζεη έλα ππάξρνλ αληηθείκελν κε δηάθνξνπο ηξφπνπο - γηα παξάδεηγκα, ε πξνζζήθε ζηήιεο ζε ππάξρνλ πίλαθα. 37

38 Πιενλεθηήκαηα ηεο MySql ε απηφ ην ζεκείν παξαηίζεληαη κεξηθά απφ ηα πιενλεθηήκαηα ηεο MySql πνπ ηελ θαζηζηνχλ αληαγσληζηηθή έλαληη άιισλ παθέησλ δηαρείξηζεο βάζεσλ δεδνκέλσλ. Σα βαζηθά πιενλεθηήκαηα ηεο είλαη: Απόδνζε. Η MySql είλαη αξθεηά γξήγνξε. Πνιιέο δνθηκέο πνπ έρνπλ γίλεη δείρλνπλ φηη ππεξέρεη ζε ηαρχηεηα έλαληη ησλ αληαγσληζηψλ ηεο. Δπθνιία Χξήζεο. Η MySql είλαη αξθεηά εχθνιε ζηελ εθκάζεζε ηεο, αθφκα θαη φηαλ θάπνηνο πνπ δελ έρεη μαλαρξεζηκνπνηήζεη παξφκνηα πξντφληα θαηαζθεπήο βάζεσλ δεδνκέλσλ. Κόζηνο. Η MySql είλαη πξντφλ αλνηθηνχ θψδηθα θαη δηαηίζεηαη δσξεάλ γηα πξνζσπηθή ρξήζε. Η εκπνξηθή άδεηα ηεο δηαηίζεηαη ζε ρακειφ θφζηνο. Απηφ ζεκαίλεη φηη αλ θάπνηνο ζέιεη λα ηε ρξεζηκνπνηήζεη γηα εθαξκνγέο πξνζσπηθήο ρξήζεο ή γηα εθαξκνγέο πνπ ζα είλαη αλνηθηνχ θψδηθα δελ ρξεηάδεηαη λα αγνξάζεη θάπνηα άδεηα. Άδεηα απαηηείηαη αλ θάπνηνο ηε ρξεζηκνπνηήζεη γηα εκπνξηθέο εθαξκνγέο πνπ δελ ζα είλαη αλνηθηνχ θψδηθα. Μεηαθεξζηκνηεηα. Η MySql κπνξεί λα ρξεζηκνπνηεζεί ζε πνιιά ζχγρξνλα ιεηηνπξγηθά ζπζηήκαηα. είλαη ζπκβαηή κε πνιιέο εθδφζεηο ησλ Microsoft Windows θαη κε ιεηηνπξγηθά Unix, φπσο νη δηάθνξεο εθδφζεηο ηνπ δεκνθηινχο ιεηηνπξγηθνχ αλνηθηνχ θψδηθα Linux. Πεγαίνο Κώδηθαο. Η MySql αλήθεη ζηελ νηθνγέλεηα ηνπ ινγηζκηθνχ αλνηθηνχ θψδηθα φπσο αλαθέξζεθε πξνεγνχκελα. πλεπψο ν θαζέλαο κπνξεί λα απνθηήζεη θαη λα ηξνπνπνηήζεη ηνλ πεγαίν θψδηθά ηεο, πξνζαξκφδνληαο ηνλ ζηηο αλάγθεο ηνπ ή δηνξζψλνληαο ηπρφλ bugs. Δπηπιένλ ην γεγνλφο φηη είλαη δηαζέζηκνο ν πεγαίνο θψδηθαο βνεζάεη ζηε ζπλερή αλαλέσζε θαη δηφξζσζε ηεο MySql αθνχ εθαηνκκχξηα άλζξσπνη ζε φιν ηνλ θφζκν εξγάδνληαη πάλσ ζε απηή. Έηζη δελ ρξεηάδεηαη θάπνηνο λα πεξηκέλεη κηα λέα επίζεκε έθδνζή θάπνηαο 38

39 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 3 ν ΚΔΦΑΛΑΙΟ 3.1 Σξηώλ Δπηπέδσλ Αξρηηεθηνληθή (3-Tier) Η αξρηηεθηνληθή ηνπ ζπζηήκαηνο επεξεάδεη ηε ιεηηνπξγηθφηεηα, απφδνζε, απνηειεζκαηηθφηεηα, ζπληήξεζε θαη επέθηαζε ηνπ θαζ φιε ηε δηάξθεηα δσήο ηνπ θαη γηα απηφ ρξεηάδεηαη ηδηαίηεξε πξνζνρή ζην αξρηθφ ζηάδην ζρεδίαζεο ψζηε ην ζχζηεκα λα είλαη ζσζηά δνκεκέλν. H πην γλσζηή αξρηηεθηνληθή ηα ηειεπηαία είθνζη ρξφληα, θπξίσο ζε εθαξκνγέο βάζεσλ δεδνκέλσλ είλαη απηή ηνπ πειάηε-εμππεξεηεηή (Client - Server). ε απηή ηελ αξρηηεθηνληθή, ν πειάηεο ζηέιλεη έλα αίηεκα (Request) γηα δεδνκέλα ζηνλ εμππεξεηεηή θαη απηφο επηζηξέθεη ηελ απάληεζε (Response), ηελ νπνία επεμεξγάδεηαη ν πειάηεο θαη εκθαλίδεη ζην ρξήζηε ηα απνηειέζκαηα (Δηθφλα 4) Εικόνα 4 Παράδειγμα Client Server Εφαρμογισ Σν πξφβιεκα κε απηή ηελ πξνζέγγηζε είλαη φηη ε εκθάληζε ησλ δεδνκέλσλ θαη ε επεμεξγαζία ηνπο γίλεηαη απφ ην ίδην πξφγξακκα, ηνλ πειάηε. Αλ ππάξρνπλ πνιιαπιά θαλάιηα δηάρπζεο ηεο πιεξνθνξίαο ή ζπρλή αιιαγή ζηε κνξθή παξνπζίαζεο, ηφηε ζα πξέπεη λα αιιάδεη θάζε θνξά ε client εθαξκνγή. Σα ηειεπηαία ρξφληα κε ηελ εκθάληζε ηνπ δηαδηθηχνπ, έρεη επηθξαηήζεη ζε εθαξκνγέο web ε αξρηηεθηνληθή ηξηψλ επηπέδσλ (3- tier Αrchitecture) ε νπνία ηνπνζεηεί ζε δηαθνξεηηθά ελλνηνινγηθά επίπεδα ηε ινγηθή ηνπ 39

40 πξνγξάκκαηνο πνπ επεμεξγάδεηαη ηα δεδνκέλα απφ ηνλ ηξφπν θαη κέζν πνπ γίλεηαη ε παξνπζίαζε. Οη ηερλνινγίεο ηεο πιεξνθνξηθήο θαη ησλ επηθνηλσληψλ κεηαβάιινληαη κε πνιχ γξήγνξνπο ξπζκνχο. Απηέο νη αιιαγέο, ζπρλά κεηαβάιινπλ θαη ηνλ ηξφπν πνπ δεκηνπξγνχληαη νη εθαξκνγέο θαη ηα πξνγξάκκαηα. Με ηνλ δηαρσξηζκφ ηεο εθαξκνγήο καο ζε 3 επίπεδα πινπνίεζεο (3 tier αξρηηεθηνληθή) κπνξνχκε λα πξνθπιάμνπκε ηα πξνγξάκκαηα καο απφ φιεο απηέο ηηο ηερλνινγηθέο αιιαγέο, κεηψλνληαο θαη πνιιέο θνξέο εμαιείθνληαο ην γεγνλφο ηνπ φηη απηέο νη αιιαγέο κπνξνχλ λα επεξεάζνπλ κειινληηθά ηα πξνγξάκκαηα καο. ηνλ θφζκν ηνπ πξνγξακκαηηζκνχ θαη ηεο αλάπηπμεο εθαξκνγψλ, ηνπνζεηείηαη ζε μερσξηζηφ επίπεδν ην επίπεδν ιεηηνπξγίαο θαη ην επίπεδν παξνπζίαζεο γηα λα πξνζηαηέςεη ηελ εθαξκνγήο καο απφ απηήλ ηελ πνιππινθφηεηα. Απηφ δίλεη ηελ δπλαηφηεηα ζηελ εθαξκνγή καο λα ζπγθεληξψλεηαη ζην πεξηβάιινλ ρξήζηε (UI User Interface) ην νπνίν είλαη ζηελ νπζία ην επίπεδν παξνπζίαζεο θαη πψο ηειηθά ν ρξήζηεο ηεο εθαξκνγήο αιιειεπηδξά κε ηα δεδνκέλα. Σα επίπεδα δηαρσξηζκνχ ζηελ 3 Tier Αξρηηεθηνληθή είλαη ην Δπίπεδν Παξνπζίαζεο (Presentation Layer), ην Δπίπεδν Λεηηνπξγίαο (Business Layer) θαη ην Δπίπεδν Γεδνκέλσλ (Data Access Layer) ηα νπνία κπνξνχκε λα δνχκε ζην δηάγξακκα πνπ αθνινπζεί. (Δηθφλα) Εικόνα 5 3 Tier Αρχιτεκτονικι 40

41 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Εικόνα 6 3 Tier Αρχιτεκτονικι Επίπεδα και λειτουργίεσ 1. Ωο πξψην ζηάδην γηα ηελ αλάπηπμε ηεο εθαξκνγήο ρξεζηκνπνηήζεθε ην Δπίπεδν Γεδνκέλσλ (Data Access Layer), δειαδή ε αλάπηπμε θαη ε πξνζαξκνγή ηεο βάζεο δεδνκέλσλ ζην πεξηβάιινλ PhPMyAdmin ηνπ Υampp. 2. ην ηξίην ζηάδην αλαπηχρζεθε ην Δπίπεδν Λεηηνπξγίαο (Business Layer) δειαδή ν θψδηθαο PhP (θιάζεηο, κέζνδνη, θηι. κε ηελ νπνία επηηπγράλεηαη ε ιεηηνπξγία θαη επηθνηλσλία ησλ επηπέδσλ Παξνπζίαζεο θαη Γεδνκέλσλ. Σα πξνγξάκκαηα Dreamweaver ηεο Macromedia θαη WinMerge θαζψο θαη ην PhPBB βνήζεζαλ ζην απνηέιεζκα ηνπ ηξίηνπ ζηαδίνπ 3. ην δεχηεξν ζηάδην γηα ηελ αλάπηπμή ηεο εθαξκνγήο ρξεζηκνπνηήζεθε ην Δπίπεδν Παξνπζίαζεο (Presentation Layer) δειαδή ε αλάπηπμε ηνπ πεξηβάιινληνο δηεπαθήο ηνπ ρξήζηε (User Interface). Σα δηάθνξα εκπινπηηζκέλα κε δηάθνξεο ηερλνινγίεο θαη γιψζζεο.html αξρεία πνπ είλαη ππεχζπλα γηα ην πψο ζα θαίλεηαη ε εθαξκνγή. Σa πξνγξάκκαηα Dreamweaver ηεο Macromedia, ην Photoshop Cs3 θαη ην WinMerge βνήζεζαλ ζην απνηέιεζκα ηνπ δεχηεξνπ ζηαδίνπ. 41

42 Δθαξκνγέο πνπ έρνπλ βαζηζηεί ζηελ αξρηηεθηνληθή 3-tier απνθαινχληαη ζπρλά Server Centric, δηφηη επηηξέπνπλ ζηα θνκκάηηα ηεο εθαξκνγήο (components) πνπ αλήθνπλ ζην business tie λα ηξέρνπλ ζε εηδηθνχο servers πνπ είλαη εληειψο αλεμάξηεηνη απφ ην user interface ή ηελ πινπνίεζε ησλ βάζεσλ δεδνκέλσλ πνπ αλήθνπλ ζην data tier. Απηή ε απεμάξηεζε ηεο ινγηθήο ηεο εθαξκνγήο απφ ην presentation tier θαη ην data tier επηθέξεη πνιιά πιενλεθηήκαηα. Μηα θαη ε εθαξκνγήο Portal & Forum έρεη ζηεζεί αθξηβψο κε απηφ ηνλ ηξφπν, κπνξνχκε λα αλαθέξνπκε κεξηθα απφ απηά ηα πιενλεθηήκαηα, ηα νπνία ζπλνςίδνληαη ζηνλ παξαθάησ πίλαθα. Τπνζηήξημε πνιιαπιώλ πξνγξακκαηηζηηθώλ γισζζώλ Κεληξηθνπνηεκέλα components Ιζνξξνπία θόξηνπ εξγαζίαο Καιύηεξε πξόζβαζε ζηα δεδνκέλα Βειηησκέλε αζθάιεηα Απινπνηεκέλε πξόζβαζε ζε εμσηεξηθνύο πόξνπο Σα components κηαο εθαξκνγήο κπνξνχλ λα γξαθηνχλ άλεηα ζε δηαθνξεηηθέο πξνγξακκαηηζηηθέο γιψζζεο. Θα κπνξνχζε, παξαδείγκαηνο ράξελ, ε ινγηθή ηεο εθαξκνγήο λα πινπνηεζεί ζε C++ θαη Asp.net, ελψ ην user interface ζα κπνξνχζε λα πινπνηεζεί ζε PhP θαη Html. Tα components φισλ ησλ εθαξκνγψλ κπνξνχλ λα ηξέρνπλ ζε θεληξηθνχο δηαθνκηζηέο (servers), έηζη ψζηε λα γίλεηαη πνιχ απινχζηεξε ε δηαδηθαζία ζπληήξεζεο ή αιιαγήο ηνπο. Σα components κηαο εθαξκνγήο κπνξνχλ λα κνηξαζηνχλ ζε πνιιαπινχο servers ζην δίθηπν, επηηξέπνληαο έηζη ηελ εμηζνξξφπεζε ηνπ θφξηνπ εξγαζίαο ηνπ θάζε server. Πεξηνξηζκνί πνπ πηζαλφλ λα ππήξραλ ζηελ ζχλδεζε πνιιαπιψλ ρξεζηψλ ζηελ βάζε δεδνκέλσλ εθκεδελίδνληαη, θαζψο ε βάζε κηιάεη πιένλ κφλν κε θάπνηα ζπγθεθξηκέλα components. Δπίζεο, νη νδεγνί θαη ε ζχλδεζε γηα ηελ βάζε δεδνκέλσλ δελ ρξεηάδεηαη πιένλ λα βξίζθνληαη ηνπηθά ζην κεράλεκα ηνπ ρξήζηε. Οη πφξνη ηνπ ζπζηήκαηνο ρξεζηκνπνηνχληαη πνιχ θαιχηεξα, θαζψο ζηελ αξρηηεθηνληθή 3-tier νη ζπλδέζεηο πξνο ηελ βάζε δεδνκέλσλ γίλνληαη κφλν φηαλ ρξεηάδνληαη θαη απειεπζεξψλνληαη ακέζσο κφιηο εθπιεξψζνπλ ηνλ ζθνπφ ηνπο. Components πνπ αλήθνπλ ζην Business Tier κπνξνχλ πιένλ λα δηαζθαιηζηνχλ ρξεζηκνπνηψληαο θάπνηα θεληξηθνπνηεκέλε ππνδνκή. Η πξφζβαζε ζην θάζε component κπνξεί λα δνζεί ή λα αξλεζεί μερσξηζηά, δηεπθνιχλνληαο ην ξφιν ησλ Administrators. Η πξφζβαζε ζε εμσηεξηθέο εθαξκνγέο φπσο είλαη εθαξκνγέο πνπ ηξέρνπλ πάλσ ζε mainframes πνπ ζπιιέγνπλ δεδνκέλα απινπνηείηαη ζεκαληηθά. Έλαο gateway server π.ρ., ζεσξείηαη απιά άιιν έλα component πνπ ρξεζηκνπνηεί ε εθαξκνγή. 42

43 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 3.2 ύγρξνλα εξγαιεία αλάπηπμεο, ζρεδίαζεο θαη εθηέιεζεο ηεο εθαξκνγήο. ε απηφ ην ππνθεθάιαην ζα αλαθέξνπκε ηα βαζηθά ζχγρξνλα εξγαιεία αλάπηπμεο ζρεδίαζεο θαη πξνγξακκαηηζκνχ πξνθεηκέλνπ λα έξζεη εηο πεξαο ε πινπνίεζεο ηεο εθαξκνγήο ηνπ Portal θαη Forum. Γίλεηαη θαηαλνεηφ φηη παξ φιε ηε πξνζπάζεηα γηα ηε ιεπηνκεξήο πεξηγξαθή φισο ησλ βεκάησλ πνπ αθνινπζήζεθαλ, είλαη δχζθνιν λα αλαθεξζνχλ φια ηα βήκαηα κε ηελ παξακηθξή ηδηαίηεξε ιεπηνκέξεηα θαη αλάιπζε ζηε παξνχζα πηπρηαθή εξγαζία Xampp Δηζαγσγηθά ζηνηρεία θαη νξηζκόο Σν Xampp είλαη έλα δσξεάλ Open Source Software Web Server παθέην δειαδή είλαη έλα ρξήζηκν βνήζεκα πνπ καο δίλεη ηελ δπλαηφηεηα λα θάλνπκε ηνλ ππνινγηζηή καο έλα Web Server θαη φρη κφλν, θαη απνηειείηαη θπξίσο απφ ηνλ Apache Http Server, MySql Database θαη ηνπο PhP θαη Perl δηεξκελεπηέο. Απφ ην φλνκα ηνπ βέβαηα πξνθχπηνπλ θαη νη ιεηηνπξγίεο πνπ ππνζηεξίδεη σο νινθιεξσκέλν παθέην Web Server X X - Cross Platform A Apache Http Server M MySql Database P Php Language P Perl Language Εικόνα 7 Ετοιμολογία, Δομι Xampp 43

44 Σα ραξαθηεξηζηηθά ιεηηνπξγηθά ζηνηρεία ηνπ Xampp είλαη ηα εμήο θαη ππνζηεξίδεηαη απφ ηα ιεηηνπξγηθά ζπζηήκαηα Windows 2000, XP, Vista, 7 : Apache (IPv6 enabled), MySql PBXT engine, PHP 5.3.1, OpenSSL 0.9.8l, PhPMyAdmin 3.2.4, XAMPP Control Panel 2.5.8, XAMPP CLI Bundle 1.6, Webalizer , Mercury Mail Transport System v4.72, msmtp , FileZilla FTP Server , SQLite , SQLite , ADOdb 5.10, eaccelerator rc1, Xdebug dev, Ming Σν Xampp είλαη έλα απφ ηα πην ρξήζηκα παθέην εξγαιείσλ ελφο ζχγρξνλνπ πξνγξακκαηηζηή. Τπάξρνπλ πξνγξάκκαηα ζαλ θαη απηφ ζην δηαδίθηπν φκσο γηα ην Portal θαη Forum επηιέρζεθε ην xampp ιφγσ ηνπ φηη είλαη έλα ειαθξχ γηα ππνινγηζηηθή ηζρχ πξφγξακκα, εχρξεζην, θαη κε πνιιέο ζεκαληηθέο θαη ζπλερψο αλαβαζκηδφκελεο ιεηηνπξγίεο. Όπσο είπακε θαη πην πάλσ, κε απηφ ην πξφγξακκα κπνξνχκε λα κεηαηξέςνπκε ην πξνζσπηθφ καο ειεθηξνληθφ ππνινγηζηή ζε ηνπηθφ Web Server. Ωζηφζν ζα κπνξνχζε λα πεη θάπνηνο πσο κπνξεί λα γίλεη θάηη ηέηνην. Η απάληεζε ζα γίλεη εχθνια αληηιεπηή αθνχ εμεηαζηνχλ ηα παξαθάησ. [1c] Λόγνη ρξήζεο ηνπ Xampp Οη ζεκαληηθφηεξνη ιφγνη πνπ θάλνπκε ρξήζε ηνπ Xampp είλαη: 1. Σν open source PhPbb ινγηζκηθφ απαηηεί ηηο ιεηηνπξγίεο πνπ πξνζθέξεη ην xampp. Γηα λα ιεηηνπξγήζεη ε βάζε δεδνκέλσλ ηνπ Portal θαη Forum πνπ ζα δηαηεξεί φια ηα ζηνηρεία ηεο εθαξκνγήο απαηηεί ηελ MySql γιψζζα εγθαηεζηεκέλε ζε Server, Γηα λα ιεηηνπξγήζεη ε ζπλεξγαζία ηεο βάζεο δεδνκέλσλ κε ηα PhP scripts απαηηείηαη ε εγθαηάζηαζε θάπνηαο έθδνζεο ηεο γιψζζαο PhP. Γηα λα πξνβάιιεηαη ην απνηέιεζκα ηνπ εθηειεζκέλνπ θψδηθα ηεο PhP πνπ βξίζθεηαη ζηελ εθαξκνγή φπσο ζα πξνβαιιφηαλ αλ ηε είρακε αλεβαζκέλε ζε θάπνην Server ζην δηαδίθηπν, ρξεηάδεηαη o Apache Http Server πνπ καο δίλεη ηε δπλαηφηεηα λα ην θάλνπκε απηφ ζε Local ηνπηθφ επίπεδν θαη φρη ζε Web δηαδηθηπαθφ επίπεδν 44

45 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 2. Ο πην εχθνινο ηξφπνο γηα λα κεηαηξέςνπκε ηνλ ππνινγηζηή καο ζε Web Server θαη λα πεξηέρεη ηνλ Apache Http Server,ηελ MySql θαη ηελ PhP γιψζζα 3. Ο πην γξήγνξνο ηξφπνο. Πξαθηηθά απηφ ζεκαίλεη φηη δελ ρξνλνηξηβνχκε φπσο ηα πξνεγνχκελα ρξφληα θαη δελ εγθαζηζηνχκε ζηνλ ππνινγηζηή καο μερσξηζηά ην θάζε πξφγξακκα π.ρ. Apache Http Server,ηελ MySql θαη ηελ PhP γιψζζα θαη δελ πξνζπαζνχκε λα ηα ζπλδπάζνπκε θαη λα ηα ξπζκίζνπκε έηζη φπσο πξέπεη ψζηε λα ζπλεξγάδνληαη πιήξσο ψζηε ηειηθά λα κπνξέζνπκε έρνπκε έλα Web Server ζηε δηάζεζή καο. 4. πλερψο αλαβαζκηδφκελν. Σν Xampp θαηά θαηξνχο αλαβαζκίδεηαη σο πξνο ηηο ιεηηνπξγίεο ηνπ θαη βγαίλνπλ ζπλερψο λέεο εθδφζεηο. Απηφ καο απαιιάζζεη απφ ην λα αλαβαζκίδακε απφ κφλνη καο ην θάζε πξφγξακκα μερσξηζηά π.ρ. ηελ έθδνζε ηεο PhP. 5. Οξγαλσκέλν πεξηβάιινλ ρξήζεο θαη δηαρείξηζεο. Σν γξαθηθφ πεξηβάιινλ ηνπ xampp είλαη πνιχ εχρξεζην θαη θηιηθφ κε ηνλ ρξήζηε-πξνγξακκαηηζηή. Η θάζε ιεηηνπξγία είλαη θαιά δνκεκέλε θαη ζσζηά ηνπνζεηεκέλε ζε απηφ ην παθέην ψζηε λα απνθεχγνληαη ηα ζθάικαηα θαη νη αζπκβαηφηεηεο. Έηζη γηα απηφ πνπ ην ρξεζηκνπνηεί ηα πξάγκαηα γίλνληαη πνιχ πην εχθνια. 6. χγρξνλν εξγαιείν. Ο θάζε θαιφο πξνγξακκαηηζηήο πνπ έρεη δήιν γηα απηφ πνπ θάλεη δε κέλεη ζε ζηάζηκν επίπεδν. πλεπψο έρνπκε ζεκαληηθνχο ιφγνπο λα εθζπγρξνληδφκαζηε κε ηα λέα εξγαιεία πνπ καο παξέρνληαη ειεχζεξαa κηαο θαη ην πξφγξακκα είλαη open source. Μπνξνχκε λα έρνπκε πνιιά πξνγξάκκαηα θαη ιεηηνπξγίεο ζε έλα παθέην θαη φρη μερσξηζηά. 7. Δπέιηθην. Τπνζηεξίδεηαη απφ ηα πην δηαδεδνκέλα ιεηηνπξγηθά ζπζηήκαηα Δγθαηάζηαζε ηνπ Xampp ζε ιεηηνπξγηθό ζύζηεκα Windows Ξεθηλάκε ηελ εθαξκνγή θάλνληαο δηπιφ θιηθ ζην εηθνλίδην ηνπ setup ηεο εθαξκνγήο. Αθνινπζνχκε ην βήκαηα πνπ εκθαλίδνληαη ζηηο νζφλεο ηνπ νδεγνχ εγθαηάζηαζεο : 45

46 Εικόνα 8 Οδθγόσ Εγκατάςταςθσ Xampp 1/5 Εικόνα 9 Οδθγόσ Εγκατάςταςθσ Xampp 2/5 ηελ επφκελε νζφλε νξίδεηε ηα ηκήκαηα ηεο εθαξκνγήο πνπ ζέιεηε λα εγθαηαζηαζνχλ. Γηα ηελ εγθαηάζηαζε ζε έλα πξνζσπηθφ ππνινγηζηή γηα ηε δνθηκή ηνπ ζπζηήκαηνο θαιφ είλαη λα κελ εγθαηαζηήζεηε ηνλ Apache Server, MySql ζαλ Services. ηε δηθή καο πεξίπησζε φκσο, απηφ είλαη πνπ καο ρξεηάδεηαη. Απηά ηα Services. Οπφηε ηα επηιέγνπκε γηα λα εγθαηαζηαζνχλ. Εικόνα 10 Οδθγόσ Εγκατάςταςθσ Xampp 3/5 Πξηλ παηήζνπκε Install επηιέγνπκε ηηο ιεηηνπξγίεο πνπ ζέινπκε λα εγθαηαζηήζνπκε. Μεηά ην πάηεκα ηνπ πιήθηξνπ Install, μεθηλά ε εγθαηάζηαζε ε νπνία ηειεηψλεη κε ηελ παξαθάησ νζφλε : 46

47 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Εικόνα 11 Οδθγόσ Εγκατάςταςθσ Xampp 4/5 ηε ζπλέρεηα επηιέγνπκε Ναη ζην παξάζπξν δηαιφγνπ ηεο επφκελεο γηα λα μεθηλήζεη ην Xampp Control Panel. Απφ εθεί κπνξείηε λα θάλεηε Start ηνλ Apache Server θαη ηε MySql, φπσο θαίλεηαη ζηηο παξαθάησ νζφλεο. Εικόνα 12 Οδθγόσ Εγκατάςταςθσ Xampp 5/5 Εικόνα 13 Xampp Εκτζλεςθ, Apache & MySql Μεηά απφ ηηο θηλήζεηο απηέο ην πξναπαηηνχκελν ινγηζκηθφ γηα ηε ιεηηνπξγία ηνπ PhPbb ινγηζκηθνχ έρεη νινθιεξσζεί. Μπνξνχκε λα δνθηκάζνπκε ηε ιεηηνπξγία ηνπ Xampp αλνίγνληαο ηνλ Internet Explorer ή ηνλ Mozilla θαη λα δψζεηε ηε δηεχζπλζε ε νπνία είλαη ηνπηθή καο δηεχζπλζε. Θα πξέπεη λα εκθαληζηεί ε παξαθάησ νζφλε : 47

48 Εικόνα 14 Xampp Εκτζλεςθ, Εμφάνιςθ Μενοφ Αλ καο έρεη εκθαληζηεί ε παξαπάλσ νζφλε ηφηε απηφ ζεκαίλεη ε εγθαηάζηαζε νινθιεξψζεθε κε επηηπρία. Παξαηεξνχκε επίζεο ζηελ εηθφλα φηη ήδε ηξέρνπλ ν Apache θαη ε MySql, σζηφζν αλ ζέινπκε λα ζηακαηήζνπκε ηε ιεηηνπξγία ηνπο παηάκε ην Stop. Αλ επηζπκνχκε λα ηεζνχλ μαλά ζε ιεηηνπξγία, απιά παηάκε Start θαη μεθηλάλε λα ηξέρνπλε. Η PhP δελ ρξεηάδεηαη ελεξγνπνίεζε, θνξηψλεηαη απηφκαηα. Με απηφ ηνλ απινχζηαην ηξφπν έρνπκε θαηαθέξεη λα κεηαηξέςνπκε ηνλ ππνινγηζηή καο ζε έλαλ Web Server πνπ λα ππνζηεξίδεη κία κεγάιε γθάκα ππεξεζηψλ θαη ιεηηνπξγηψλ θάζε ζηηγκή πνπ ην ρξεηαδφκαζηε. εκεηψλεηαη φηη γηα λα ηξέμνπκε νηηδήπνηε ζέινπκε κε ην xampp ζα πξέπεη λα εηζάγνπκε κέζα ζην θάθειν c:\xampp\htdocs\teikastorias θαη δεκηνπξγψληαο έλαλ ππνθάθειν πξνθεηκέλνπ λα κε κπεξδεπνληαη ηα αξρεία κεηαμχ ηνπο ζε πεξίπησζε ζπλνλπκίαο κε άιια αξρεία. Η δηαδξνκή πνπ ζα εθηειέζνπκε ζηνλ web browser καο ζε απηή ηε πεξίπησζε είλαη ε εμήο: _απσείος.καηάληξη Γηα λα ηξέμνπκε ην Portal θαη Forum σο κηα δηαδηθηπαθή εθαξκνγή απφ ηνλ ππνινγηζηή καο ρξεηαδφκαζηε απαξαίηεηα ινηπφλ ην Xampp. 48

49 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ PhPBB Δηζαγσγηθά ζηνηρεία γηα ην PhPBB Σν PhPBB είλαη έλα ειεχζεξν ινγηζκηθφ αλνηρηνχ θψδηθα (Open Source) φπνπ παξέρεη ειεχζεξα ηνλ πεγαίν θψδηθά ηνπ (source code), ν νπνίνο είλαη ζηε αξρηθή ην κνξθή ε αιιηψο ζα κπνξνχζακε λα πνχκε ζην θαηψηεξν ζηάδην αλάπηπμεο ηνπ θαη επηηξέπεη ζε θάπνηνλ λα δεκηνπξγήζεη ηνλ αξρηθφ ζθειεηφ ελφο Forum. Λεηηνπξγεί σο έλα ζεκέιην βάζε θψδηθα ψζηε ν νπνηνζδήπνηε πνπ ζα επηζπκήζεη λα ηνλ ρξεζηκνπνηήζεη λα κπνξεί λα επέκβεη ζε απηφλ θαη λα αλαπηχμεη πεξαηηέξσ ην ινγηζκηθφ πξνζαξκφδνληαο ην ζηηο δηθέο ηνπ αλάγθεο. Δμεηάζακε πξνεγνπκέλσο ηα νθέιε ρξήζεο ινγηζκηθνχ κε αλνηρηφ βαζηθφ θψδηθα θαη είλαη ζεκαληηθφ λα ηνληζηεί ζε απηφ ην ζεκείν ηεο εξγαζίαο φηη κε βάζε απηή ηε ζθέςε, ε εξγαζία απηή κπνξεί λα απνηειέζεη θίλεηξν γηα πνιιέο ελέξγεηεο απφ άιινπο πξνγξακκαηηζηέο. Η έλλνηα ηνπ ειεχζεξνπ ινγηζκηθνχ ζπλίζηαηαη απφ κέξνπο κνπ θαη εχρνκαη λα σζήζεη φιν θαη πεξηζζφηεξνπο λα αζρνιεζνχλ κε απηφ θαζψο πξνζθέξνπλ ηηο γλψζεηο, ηηο ηδέεο θαη ην ρξφλν ηνπο ψζηε λα βειηησζνχλ πνιιέο απφ ηηο ππεξεζίεο πνπ ήδε απνιακβάλνπκε δσξεάλ θαη πνιιέο απφ ηηο ππεξεζίεο πνπ έρνπκε αλάγθε λα δεκηνπξγεζνχλ. πλεπψο ε ελαζρφιεζε θάπνηνπ πνπ πξαγκαηηθά ην αγαπάεη κπνξεί λα θέξεη θαιά απνηειέζκαηα ζην επξχ θνηλφ. Κάιιηζηα άιινη πξνγξακκαηηζηέο κπνξνχλ λα παξαηεξήζνπλ πσο έλαο πξνγξακκαηηζηήο έρεη αλαιάβεη κε έλα ειεχζεξν θψδηθα πνπ ηνπ δίλεηαη λα κπνξεί λα ην θάλεη λα εμειηρζεί θαη λα αλαπηπρζεί ηφζν ψζηε απφ ηα νθέιε πνπ ζα πξνθχπηνπλ λα κπνξνχλ λα παίξλνπλ ηδέεο γηα πεξηζζφηεξε βειηίσζε ηνπ αξρηθνχ θψδηθα. [8c,10c] 49

50 Δγθαηάζηαζε Αξρηθνύ θώδηθα Γηα ηελ εγθαηάζηαζε ηνπ αξρηθνχ θψδηθα ηνπ ινγηζκηθνχ PhPbb δελ έρνπκε παξά λα επηζθεθηνχκε αξρηθά ην web site PhPbb.com θαη λα θαηεβάζνπκε ην ηειεπηαίν θαη πην ελεκεξσκέλν παθέην αλνηρηνχ θψδηθα εγθαηάζηαζεο. ηε εξγαζία ρξεζηκνπνίεζα ηo PhPBB_version rar ζπκπηεζκέλν αξρείν. Απφ εθείλν ην ζεκείν θαη έπεηηα κεηξάεη ε δηάζεζε, ην κεξάθη θαη νη πξνγξακκαηηζηηθέο ηθαλφηεηεο θάπνηνπ ψζηε λα ην αλαπηχμεη φζν θαιχηεξα κπνξεί πξνθεηκέλνπ λα αληαπνθξίλεηαη ζηηο αλάγθεο ηνπ. Αο δνχκε κεξηθά αξρηθά βήκαηα γηα ηελ εγθαηάζηαζε ηνπ PhPBB. Απνζπκπηέδνπκε ην αξρείν πνπ έρνπκε θαηεβάζεη φπσο πεξηγξάθεηαη ιίγν παξαπάλσ θαη ηνπνζεηνχκε ηνλ απνζπκπηεζκέλν θάθειν κε ηνλ πεγαίν θψδηθα ζην c:\xampp\htdocs\teikastorias\portalforum. Μφιηο είκαζηε έηνηκνη κε ηα δηθαηψκαηα ηξέρνπκε ζηνλ web browser καο ηελ εμήο δηεχζπλζε teikastorias/portalforum/install/index.php. Αλ έρνπκε θάλεη ζσζηά ηα πξνεγνχκελα βήκαηα, ε νζφλε πνπ ζα πξέπεη λα έρνπκε κπξνζηά καο είλαη ε παξαθάησ εηθφλα. Εικόνα 15 PhPbb Εγκατάςταςθ Δδψ είλαη ε αξρηθή νζφλε εγθαηάζηαζε ηνπ αξρηθνχ πεγαίνπ θψδηθα ηνπ PhPbb. Πξψηα ζα επηιέμνπκε ηελ γιψζζα θαη ζηελ ζπλέρεηα παηάκε change. 50

51 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Έπεηηα ζα γίλνπλ θάπνηεο δνθηκέο γηα ηηο ξπζκίζεηο ηνπ θεληξηθνχ ππνινγηζηή θαη ησλ αξρείσλ γηα λα εμαζθαιηζηεί ε ζσζηή εγθαηάζηαζε θαη ε εθηέιεζε ηνπ PhPBB. Μφιηο ζηγνπξεπηνχκε φηη ν θεληξηθφο καο ππνινγηζηήο παξέρεη φιεο ηηο δπλαηφηεηεο γηα ηελ εγθαηάζηαζε παηάκε Δθθίλεζε εγθαηάζηαζεο. Δάλ θάπνηα δπλαηφηεηα δελ ππνζηεξίδεηε δελ ζα κπνξέζεηε λα ζπλερίζεηε. ηε ζπλέρεηα ζα καο εκθαλίζεη ηελ νζφλε παξαθάησ φπνπ ζα πξνζζέζνπκε ηα ζηνηρεία καο γηα λα ζπλδεζνχκε κε ηεο βάζε δεδνκέλσλ καο. (Δηθφλα 16) Εικόνα 16 PhPbb Ρυκμίςεισ ε απηφ ην ζεκείν θάλνπκε ηηο ξπζκίζεηο πνπ καο δεηάεη κε ηνλ εμήο ηξφπν: Δπηιέγνπκε ηνλ ηχπν ηεο βάζεο δεδνκέλσλ, ζπλήζσο είλαη MySql (ηνλίδεηαη φηη κπνξνχκε λα δεκηνπξγήζνπκε θαη κφλνη καο ηε βάζε δεδνκέλσλ καο αιιά δελ πξνηείλεηαη γηα απηνχο πνπ ην επηρεηξνχλ γηα πξψηε θνξά) Δπηιέγνπκε ην φλνκα ην φλνκα θεληξηθνχ ππνινγηζηή Βάζεο Γεδνκέλσλ ζπλήζσο είλαη localhost ( ζηελ πεξίπηωζε πνπ ην ηξέρνπκε ηνπηθά ζηνλ ππνινγηζηή κέζω 51

52 θάπνηνπ πξνγξάκκαηνο όπωο ην Xampp. Σηελ πεξίπηωζε πνπ ζέινπκε λα ην βάινπκε ζην δηαδίθηπν απιά νξίδνπκε ηε δηεύζπλζε ηνπ θεληξηθνύ κηζζωκέλνπ ππνινγηζηή πνπ έρνπκε. Θα είλαη ηεο κνξθήο Δπηιέγνπκε ηε ζχξα ηνπ θεληξηθνχ ππνινγηζηή Βάζεο Γεδνκέλσλ, ζπλήζσο είλαη ε ζχξα 80, φκσο δελ είλαη πάληα ζηαζεξή, γηα απηφ ρξεηάδεηαη πξνζνρή Δηζάγνπκε έλα φλνκα ζηε βάζε δεδνκέλσλ ην νπνίν είλαη ελδεηθηηθφ γηα λα κπνξνχκε λα ηε μερσξίδνπκε απφ άιιεο βάζεηο πνπ ίζσο δεκηνπξγήζνπκε κέζσ ηεο MySql ή κέζσ ηνπ PhPMyAdmin. Δηζάγνπκε έλα φλνκα ρξήζηε ζηε βάζε δεδνκέλσλ. Δηζάγνπκε επίζεο θαη έλαλ θσδηθφ γηα ηε βάζε δεδνκέλσλ. Σέινο εηζάγνπκε έλα πξφζεκα γηα ηνπο πίλαθεο νη νπνίνη ζα δεκηνπξγνχληαη ζηελ βάζε δεδνκέλσλ καο, είηε απφ εκάο είηε απφ ηνπο δηάθνξνπο ρξήζηεο νη νπνίνη ζα θάλνπλ ρξήζε ηεο εθαξκνγήο πνπ ζα αλαπηχμνπκε. Γηα παξάδεηγκα νξίδνπκε σο prefix ην «tei». Έηζη φηαλ ζα δεκηνπξγήζνπκε έλαλ πίλαθα αλαθνηλψζεσλ γηα ηε βάζε δεδνκέλσλ καο, πξνθεηκέλνπ λα είλαη ζπκβαηφο κε φιε ηελ βάζε σο ζχλνιν, ην φλνκα ηνπ πίλαθα ζα έρεη ηελ κνξθή tei_table_anakoinwsewn. ηε βάζε δεδνκέλσλ ηεο εξγαζίαο ρξεζηκνπνηήζεθε σο prefix ην «rgv» Αλ θάλνπκε απηά ηα βήκαηα ζσζηά ηφηε ζα νινθιεξψζνπκε ηελ εγθαηάζηαζε ηνπ πεγαίνπ θψδηθα ηνπ αλνηρηνχ ινγηζκηθνχ PhPBB κε επηηπρία. Έπεηηα απφ απηφ δηαγξάθνπκε ην θάθειν (install) γηα λα κελ ππάξρνπλ πξνβιήκαηα αζπκβαηφηεηαο. ηηο επφκελεο ζειίδεο πξφθεηηαη λα δείμνπκε κεξηθνχο πίλαθεο απφ ηνπο νπνίνπο απνηειείηαη ε βάζε καο θαη πσο κπνξνχκε λα δεκηνπξγήζνπκε θαη δηθνχο καο αλ είκαζηε έρνπκε θάπνην ππφβαζξν γλψζε απφ γιψζζα MySql. Θα πξέπεη λα έρνπκε κέζα ζην θάθειν roussos_project1 απηνχο ηνπ θαθέινπο θαη αξρεία θαη έλα αξρείν index.html ην νπνίν είλαη ζρεδηαζκέλν λα εθηειεί ηνλ πεγαίν θψδηθα θαη λα καο εκθαλίδεη ηα πξψηα απνηειέζκαηα. 52

53 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Εικόνα 17 Φάκελοσ Εφαρμογισ Σν θάζε αξρείν εδψ πεξηέρεη ην αλνηρηφ θψδηθα ζε.php. Αλ έρνπκε θάπνηεο βαζηθέο γλψζεηο ζε PhP ζα είλαη πνιχ εχθνιν λα θαηαιάβνπκε κεξηθέο γξακκέο θψδηθα. Ωζηφζν απηφ δελ ζεκαίλεη φηη έρνπκε ηελ πιήξε γλψζε γηα ηα αξρεία καο PhP. Απφ πξνγξακκαηηζηηθή άπνςε ζα ήηαλ αδηαλφεην έλα άηνκν λα ζηήζεη έλα Forum κφλνο ηνπ. Γηα ην ζπγθεθξηκέλν αξρηθφ πεγαίν θψδηθα ε νκάδα ηνπ PhPΒΒ πνπ απνηειείηαη απφ εθαηνληάδεο κέιε ζε φιν ηνλ θφζκν, εξγάζηεθε πάλσ απφ 3 ρξφληα γηα λα νινθιεξψζεη ην αξρηθφ ηεο παθέην. Απφ εθεί θαη έπεηηα δηάθνξεο νκάδεο πξνζζέηνπλ θψδηθα θαη πξνζπαζνχλ λα ζπλερίζνπλ ην έξγν ηεο νκάδαο θαη θάπνηνο πνπ ζεσξεί φηη κπνξεί λα βνεζήζεη ψζηε βειηησζεί πεξαηηέξσ ην αξρηθφ ηκεκα ηνπ πεγαίνπ θψδηθα κπνξεί λα ζηείιεη ηα επηηεχγκαηα ηνπ. Σν ίδην έγηλε θαη κε ηελ παξνχζα πηπρηαθή. Σν Portal & Forum ινηπφλ βαζίζηεθε ζε απηά ηα αξρηθά ηκήκαηα θψδηθα ψζηε λα κπνξέζεη λα αλαπηπρζεί πεξεηαίξσ. Υσξίο απηφ γηα νπνηνδήπνηε πξνγξακκαηηζηή ζα έπαηξλε κεξηθά ρξφληα γηα λα έξζεη ζε απηφ ην ζεκείν. Η φιε ηδέα ηνπ ινγηζκηθνχ αλνηρηνχ θψδηθα φπσο είπακε είλαη λα ηνλ πάξνπκε λα ηνλ επεμεξγαζηνχκε θαη λα δνχκε ηη κπνξνχκε λα θάλνπκε γηα λα ηνλ βειηηψζνπκε θαη λα ηνλ επεθηείλνπκε. Αθνινπζεί ην αξρηθφ ζρεζηαθφ κνληέιν δνκήο αξρείσλ ηνπ PhPbb πνπ απνηειεί ηελ θχξηα δνκή ηνπ. 53

54 Εικόνα 18 Αρχικό ςχεςιακό μοντζλο δομισ αρχείων του PhPbb Ο θαζέλαο κπνξεί λα βαζηζηεί ζε απηή ηελ αξρηθή δνκή θαη λα αξρίζεη λα επεθηείλεη ηνλ θψδηθα θαη ηα αξρεία ζχκθσλα κε ηηο αλάγθεο ηνπ. Δίλαη αμηνζεκείσην λα παξαηεξήζνπκε φηη ππάξρεη έλαο θάθεινο cache ν νπνίνο ρξεζηκνπνηείηαη γηα ηελ πξνζσξηλή απνζήθεπζε ησλ πξνζσξηλψλ εθηειέζηκσλ αξρείσλ.php. Έπεηηα απφ κεξηθά ιεπηά, ηα αξρεία απηά είλαη ξπζκηζκέλα λα δηαγξάθνληαη. Ο ρξφλνο δσήο ηνπο κπνξεί λα κεηαβιεζεί απφ ην cache.php 54

55 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Δξγαιεία Macromedia Dreamweaver 8,Adobe Photoshop CS3,WinMerge Με ην Dreamweaver εξγαιείν έγηλε εθηθηή ε ζρεδίαζε ησλ.html αξρείσλ αιιά θαη ε ζχλδεζή ηνπ κε ηα.php αξρεία ηνπ Potal & Forum. Απηφ ην πξφγξακκα θάλεθε ηδηαίηεξα ρξήζηκν δηφηη δίλεη ηελ δπλαηφηεηα λα ζρεδηάδνληαη δηάθνξεο forms εκπινπηηζκέλεο κε ζπκπεξηθνξέο, buttons, text area θαη λα ζπκπιεξψλεη απφ κφλν ηνπ ηνλ ζρεηηδφκελν θψδηθα ζχκθσλα κε ηε ζρεδίαζε πνπ έρεηο θάλεη. Αληρλεχεη ηα ιάζε πνπ ηπρφλ κπνξεί λα ππάξρνπλ ζηνλ θψδηθα θαη ζνπ πξνηείλεη θάπνηεο ιχζεηο. Γηαζέηεη βηβιηνζήθεο κε θψδηθα ζρεδφλ γηα φιεο ηηο γιψζζεο πξνγξακκαηηζκνχ πνπ ρξεζηκνπνηνχληαη ζην δηαδίθηπν, ελψ κπνξεί θαη αλαγλσξίδεη θψδηθεο ζρεδφλ κε νπνηνδήπνηε format. Αθνινπζεί εηθφλα ηνπ αξρείνπ ηεο εθαξκνγήο login.html ππφ επεμεξγαζία. Εικόνα 19 Dreamweaver, Επεξεργαςία αρχείου login.html 55

56 Σν Photoshop είλαη έλα άιιν πνιχ ρξήζηκν εξγαιείν πνπ βνήζεζε πνιχ ζην ζρεδηαζηηθφ κέξνο ηνπ Portal & Forum. Δίλαη έλα πξφγξακκα επεμεξγαζίαο εηθφλαο κε πνιιέο δπλαηφηεηεο θαη παξέρεη ηα κέζα γηα λα δεκηνπξγία εηθφλσλ θαη γξαθηθψλ πνπ ζα ρξεηαζηνχλ ζην html αξρείν ζε κνξθή εηθφλαο. Γηα παξάδεηγκα απηφ ην πξφγξακκα ρξεζηκνπνηήζεθε γηα λα δεκηνπξγεζεί ε θσηνγξαθία θαη ηα πεδία ηεο αξρηθήο ζειίδαο ηεο εθαξκνγήο πνπ δείρλεη ηελ Καζηνξηά απφ ςειά παλνξακηθά ζε δηαθνξεηηθέο επνρέο. Απηή ε θσηνγξαθία χζηεξα ελζσκαηψζεθε ζε έλα πεδίν πνπ αλήθεη ζην index.html αξρείν. Αθνινπζεί ε εηθφλα ηνπ πξνγξάκκαηνο (Δηθφλα 20) θαηά ηε ζρεδίαζε ηεο θσηνγξαθίαο πνπ ζα είλαη ζηελ αξρηθή νζφλε ηεο εθαξκνγήο. Εικόνα 20 Photoshop Cs3 - Πρόγραμμα Επεξεραγαςίασ Εικόνασ Logo Portal & Forum Πνιχ ρξήζηκν επίζεο θάλεθε ζηελ πνξεία ην εξγαιείν Winmerge. Απηφ ην πξφγξακκα δίλεη ηελ δπλαηφηεηα λα θνξηψλνληαη πεξηζζφηεξα ηνπ ελφο αξρεία κε θψδηθα θαη λα ηα ζπγθξίλεη ζρεηηθά κε ηηο νκνηφηεηεο θαη ηηο δηαθνξέο ηνπο. Απφ πξνγξακκαηηζηηθή άπνςε, ην Winmerge βνεζά ζηελ εξγαζία ζην λα μερσξίδνπκε ηηο αιιαγέο πνπ έρνπκε θάλεη ζηνλ αξρηθφ πεγαίν θψδηθα PhP θαζψο θαη λα παξαηεξνχκε αλ έρνπκε δηαγξάςεη άζειά καο θψδηθά αλάκεζα ζε πνιιέο άιιεο δεθάδεο ζεηξέο θψδηθα. 56

57 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 4 ν ΚΔΦΑΛΑΙΟ 4.1 Portal & Forum Δπίπεδν δεδνκέλσλ Αλάπηπμε θαη δηαρείξεζε ηεο βάζεο δεδνκέλσλ ζην PhPMyAdmin Αλαθεξφκαζηε ζην Δπίπεδν Γεδνκέλσλ (Data Access Layer). Όζνλ αθνξά ηε δεκηνπξγία ηεο βάζεο δεδνκέλσλ γηα ην Portal & Forum ππάξρνπλ δχν ηξφπνη. Δίηε λα επηιέμεη θαλείο λα δεκηνπξγεζεί απηφκαηα κηα βάζε θαηά ηελ εγθαηάζηαζε ην αλνηρηνχ ινγηζκηθνχ PhPbb, είηε λα αλαιάβεη λα ηελ δεκηνπξγήζεη κέζα απφ ην πεξηβάιινλ PhPMyAdmin ηνπ xampp θαη έπεηηα λα ηελ ζπλδέζεη κε ηνλ θψδηθα PhP. Οη πξνρσξεκέλνη πξνγξακκαηηζηέο ηείλνπλ λα μεθηλνχλ εληειψο απφ ηελ αξρή ηνλ θψδηθα ηεο βάζεο δεδνκέλσλ. ηε ζπγθεθξηκέλε εξγαζία ν θψδηθαο βαζίζηεθε ζε έλαλ αξρηθφ ζθειεηφ θαη χζηεξα αλαπηχρζεθε ζχκθσλα κε ηηο αλάγθεο πνπ πξνέθπςαλ γηα κηα βάζε ε νπνία ζα απνηειείηαη απφ θνηηεηέο, θαζεγεηέο, επηζθέπηεο θαζψο θαη απφ δηάθνξα ζέκαηα ζπδήηεζεο. Απηή ε βάζε δεδνκέλσλ είλαη ζπλδεδεκέλε κε ηα PhP αξρεία θαη ζα θξαηάλε φια εθείλα ηα ζηνηρεία πνπ ζα πξνθχπηνπλ απφ ηε ρξήζε ηεο εθαξκνγήο. Σα PhP αξρεία φπσο ζα δνχκε παξαθάησ, ζπλδένληαη ε ελζσκαηψλνληαη κε ηε ζεηξά ηνπο, κε ηα αξρεία html. Γηα ηελ αλάπηπμε ηεο βάζεο δεδνκέλσλ αλνίγνπκε ην γξαθηθφ πξφγξακκα δεκηνπξγίαο δηαρείξηζεο βάζεσλ δεδνκέλσλ ηνπ xampp, ην PhPMyAdmin φπσο θαίλεηαη θαη παξαθάησ ζηελ Δηθφλα 21 Εικόνα 21 PhPMyAdmin Δθμιουργία Και Διαχείριςθ Βάςεων Δεδομζνων 57

58 Γηα λα δεκηνπξγεζεί κηα βάζε δεδνκέλσλ, είλαη απαξαίηεην λα πξνζέμνπκε ην ηη φλνκα ζα βάινπκε ζηελ βάζε καο αιια θαη ηελ θσδηθνπνίεζε ηελ νπνία ζα ππνζηεξίδεη. Αο δνχκε έλα παξάδεηγκα πνπ ζρεηίδεηαη κε ηελ πξνγνχκελε εηθφλα: Έρνπκε ρξσκαηίζεη κε θφθθηλν θαη κπιε ηα ζεκεία πνπ καο ελδηαθέξνπλ. ην πεδίν απηφ πνπ νλνκάδεηαη δεκηνπξγία λέαο βάζεο ζα γξάςνπκε ην φλνκα ηεο βάζεο καο. Θα ηελ νλνκάζνπκε Roussos_Forum.ηε ζπλέρεηα ζην πεδίν MySql connection collation ζα επηιέμνπκε ηελ θσδηθνπνίεζε utf8_general_ci. Έπεηηα πξέπεη λα παηήζνπκε ην θνπκπί Γεκηνπξγία Η επφκελε νζφλε πνπ ζα καο εκθαληζηεί είλαη ε παξαθάησ (Δηθφλα 22). Εικόνα 22 Δθμιουργία Πινάκων και Πεδίων τθ Βάςθ Δεδομζνων Όηαλ βξεζνχκε ζηελ Δηθφλα 22 βιέπνπκε ηα εμήο: ηα αξηζηεξά ππάξρεη ε βάζε πνπ κφιηο δεκηνπξγήζακε. Σν (0) ζεκαίλεη φηη ε βάζε απηή έρεη 0 πίλαθεο. ηα δεμηά, ππάξρεη έλα πεδίν ην νπνίν καο δεηάεη λα γξάςνπκε ην φλνκα ηνπ πηλαθά καο θαη έλα κηθξφηεξν πεδίν ην νπνίν καο δεηάεη λα δψζνπκε ηνλ αξηζκφ ησλ πεδίσλ ηα νπνία ζα δηαζέηεη ν πίλαθαο. Αο νλνκάζσ ηνλ πίλαθά κνπ atei_users_data_entry. Αιήζεηα πφζα πεδία ζα έρεη ν πίλαθαο; Θα έρεη έλα πεδίν πνπ ζα δέρεηαη ην username, έλα φλνκα,έλα επίζεην, ηδηφηεηα κέινπο (θνηηεηήοθαζεγεηήο),ηε ζρνιή πνπ αλήθεη, έηνο εηζαγσγήο θαη έλα πνπ ζα δέρεηαη mail. Ο αξηζκφο πεδίσλ καο ζχλνιν είλαη 7; Όρη, είλαη 8! Θα εμεγήζνπκε ηνλ ιφγν πνπ ρξεηαδφκαζηε έλα αθφκα πεδίν κε έλα ζχληνκν παξάδεηγκα. 58

59 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Αο ππνζέζνπκε φηη έρνπκε έλα πίλαθα ν νπνίνο έρεη 10 εγγξαθέο. Δάλ ζέιεη θάπνηνο λα βξεη ηελ ηξίηε εγγξαθή πσο κπνξεί λα γλσξίδεη πνηά είλαη ε ηξίηε εγγξαθή ρσξίο λα ρξεηάδεηαη λα θνηηάεη ηνλ πίλαθα; Δάλ γηα παξάδεηγκα έρεη 200 εγγξαθέο κε ρξήζηεο θνηηεηέο θαη θαζεγεηέο πψο ζα κπνξεί λα γλσξίεη πνηα εγγξαθή είλαη ε 125 ε ; Άξα ινηπφλ πξέπεη λα ππάξρεη έλα πεδίν ην πεξηερφκελν ηνπ νπνίνπ λα απμάλεηαη θάζε θνξά πνπ ζα πξνζηίζεηαη κία εγγξαθή θαη λα είλαη κνλαδηθφ. Απηφ ινηπφλ ην πεδίν νλνκάδεηαη Primary Key θαη είλαη έλαο ηξφπνο ηαπηνπνίεζεο φισλ ησλ εγγξαθψλ ζηε βάζε δεδνκέλσλ. ε κία βάζε κε εθαηνληάδεο πίλαθεο, απηή ε δπλαηφηεηα είλαη ζίγνπξα πνιχ ρξήζηκε. Άξα ινηπφλ ν αξηζκφο πνπ ζα ηνπνζεηήζνπκε κέζα ζην θνπηάθη είλαη 8. Με ην πνπ παηήζνπκε Δθηέιεζε ζα εκθαληζηεί ε Δηθφλα 23 πνπ είλαη παξαθάησ. Εικόνα 23 Δθμιουργία Πίνακα - Ειςαγωγι τοιχείων τα Πεδία ε απηά ηα πεδία νξίδσ ην φλνκα ηνπ θάζε πεδίνπ ηνπ πίλαθα. Έρσ δψζεη ηα εμήο νλφκαηα: id ζην πεδίν πνπ ζα έρεη ην primary key, Username ζην πεδίν πνπ δέρεηαη ην φλνκα ρξήζηε,onoma ζην πεδίν πνπ ζα δέρεηαη ην φλνκα, epitheto ζην πεδίν πνπ ζα δέρεηαη ην επίζεην, idiotita_melous ζην πεδίν πνπ ζα δέρεηαη ηελ ηδηφηεηα κέινπο, sxoli 59

60 ζην πεδίν πνπ ζα δέρεηαη ηε ζρνιή, etos_eisagwgis ζην πεδίν πνπ ζα δέρεηαη ην έηνο εηζαγσγήο ηνπ θνηηεηήο/θαζεγεηή, θαη ζην πεδίν πνπ ζα δέρεηαη ην . Με ηε ρξήζε ησλ dropdowns νξίδσ ηη ηχπνο ζα είλαη ην δεδνκέλν πνπ ζα εηζάγνπκε.σν id θπζηθά θαη ζα είλαη αθέξαηνο αθνχ ζα είλαη ν κνλαδηθφο αξηζκφο πνπ ζά έρεη ε θάζε εγγξαθή ζηε βάζε. Σα ππφινηπα πεδία εθηφο απφ ην έηνο εηζαγσγήο ζα δέρνληαη δεδνκέλα ηχπνπ VARCHAR δειαδή θαη αξηζκνχο θαη λνχκεξα, ελψ ην έηνο εηζαγσγήο ζα είλαη ηχπνπ YEAR δειαδή κφλν αξηζκνχο κε κήθνο έηνπο. Αλ πξνζέμνπκε θαιά ζηελ Δηθφλα 23, έρνπκε νξίζεη ην πεδίν id ζαλ Primary Key θαη ην A_I ζεκαίλεη Auto Increment δειαδή ην πεξηερφκελν ηνπ πεδίνπ απηνχ na απμάλεηαη απηφκαηα θάζε θνξά πνπ κία λέα εγγξαθή ζα εηζάγεηαη ζηελ βάζε. Σν 4, 10, 20 ζηα πεδία κήθνο-ηηκέο είλαη ην πιήζνο ησλ ραξαθηήξσλ πνπ κπνξεί λα δερηεί ην πεδίν ηνπ πίλαθά καο. Παηάκε ην θνπκπί απνζήθεπζε θαη είκαζηε έηνηκνη κε ηνλ πίλαθά καο νπφηε θαη καο εκθαλίδεη ηελ επφκελε νζφλε ζηελ Δηθφλα 24. Εικόνα 24 Αποτζλεςμα Δθμιουργία Πίνακα Και Πεδίων Έηζη ινηπφλ δεκηνπξγήζακε έλα πίλαθα atei_user_data_entry ζηε βάζε δεδνκέλσλ ηνπ roussos_forum. 60

61 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ ην ζεκείν 1, παξαηεξνχκε φηη δεκηνπξγήζεθαλ ηα πεδία καο επηηπρψο θαη γηα επαιήζεπζε καο δείρλεη απηή ηελ θνξά ηνλ θψδηθα ζε SQL θαη φρη ζε γξαθηθφ πεξηβαιινλ φπσο πξνεγνπκέλσο. ην ζεκείν 2 κπνξνχκε λα δνχκε ηνλ πίλαθα atei_user_data_entry φπνπ αλήθεη θάησ αθξηβψο απφ ην roussos_forum πνπ ζεκαίλεη φηη είλαη βαζηθφο πίλαθαο ην ζεκείν 3 ζηελ έλδεημε SQL καο δίλεηαη ε δπλαηφηεηα λα επέκβνπκε ζηνλ sql θψδηθα ηνπ πίλαθα καο θαη εθηελέζηεξα ηεο βάζε καο. Μπνξνχκε λα επεμεξγαζηνχκε ηνλ θψδηθα φπσο έρνπκε πεη, ζχκθσλα κε ηηο αλάγθεο καο, φκσο ζέιεη πξνζνρή γηαηί ζε πνιινχο πίλαθεο πνπ ζπλδένληαη κεηαμχ ηνπο ε παξακηθξή απξφζερηε αιιαγή κπνξεί λα έρεη ηξαγηθά απνηειέζκαηα γηα ηε ζπλνιηθή βάζε δεδνκέλσλ καο. Έλα παξάδεηγκα επεμεξγαζία sql θψδηθα είλαη ην παξαθάησ. Εικόνα 25 Επεξεργαςία SQL κώδικα ην ζεκείν 4 ηεο Δηθφλαο 23, παξαηεξνχκε φηη καο δίλνληαη δηάθνξεο επηινγέο απφ ηνλ πίλαθα εξγαιείσλ. Η επηινγή «Δηζαγσγή» καο δίλεη ηε δπλαηφηεηα λα εηζάγνπκε πεξαηηέξσ ζηνηρεία,ηηκέο θαη λα ειέγμνπκε ηε αλ ε ιεηηνπξγία ησλ πεδίσλ είλαη νξζή. Λεηηνπξγεί θάπσο ζαλ compiler ζα κπνξνχζακε λα πνχκε. Η επηινγή «Δμαγσγή» καο δίλεη ηε δπλαηφηεηα λα εμάγνπκε έλαλ πίλαθα απφ ηελ βάζε δεδνκέλσλ καο ψζηε αλ επηζπκνχκε λα ηνλ εηζάγνπκε ζε θάπνηα άιιε βάζε δεδνκέλσλ λα κπνξνχκε λα ην θάλνπκε απηφ θαη λα ρξεζηκνπνηήζνπκε ηνλ πίλαθα. Η εμαγσγή γίλεηαη ζε δηάθνξα format αξρείσλ θαη απηφ είλαη βνιηθφ θαζψο δελ είκαζηε πεξηνξηζκέλνη γηαηί ζε αληίζεηε πεξίπησζε ε βάζε καο ίζσο λα κελ αλαγλψξηδε αθφκα θαη ηελ ειιεληθή γιψζζα. Η επηινγή «Import» καο παξέρεη ηε δπλαηφηεηα λα εηζάγνπκε θάπνηνπο πίλαθεο πνπ επηζπκνχκε απφ θάπνηα βάζε δεδνκέλσλ, σζηφζν καο δίλεη θαη ηελ δπλαηφηεηα λα εηζάγνπκε θαη κία νιφθιεξε βάζε δεδνκέλσλ. Βιέπε (Δηθφλα 26). 61

62 Εικόνα 26 PhPMyAdmin Ειςαγωγι, Εξαγωγι, Import ην ζεκείν 5 ηεο Δηθφλαο 23 παξαηεξνχκε φηη ην πξφγξακκα καο δίλεη ηε δπλαηφηεηα λα δεκηνπξγήζνπκε άκεζα θψδηθα PhP γηα ηε βάζε καο. Απηφ είλαη πνιχ ρξήζηκν σζηφζν εθηφο απφ απηφ εκείο ζηε εξγαζία έρνπκε ρξεζηκνπνηήζεη θαη ην Dreamweaver γηα λα επηηειέζεη απηή ηελ εξγαζία. Καηά απηφ ηνλ ηξφπν γηα ην Portal & Forum έρεη δεκηνπξγεζεί θαη αλαπηπρζεί κε ηελ βνήζεηα θαη άιισλ πηλάθσλ θαη ππφ-πηλάθσλ (κε ηε ρξήζε ηνπ Open Source θψδηθα) ε βάζε δεδνκέλσλ rgv (roussosgiorgosvasliki). Πξέπεη λα ιερζεί φηη ηα ζχληνκα θαη κηθξά νλφκαηα ζηηο βάζεηο δεδνκέλσλ βνεζάλε πνιχ, δηφηη πνιιέο εκθαλίδνληαη θαη ζηνλ Web Browser καο. Δθφζνλ είδακε πσο κπνξνχκε λα δεκηνπξγήζνπκε πίλαθεο θαη πεδία γηα απηή ηε εξγαζία, αο δνχκε ζπλνπηηθά θαη κεξηθά ζεκεία ηεο δνκήο ηεο rgv database ζηελ νπνία ζηεξίδεηαη νιφθιεξν ην Portal & Forum. 62

63 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Portal & Forum Database Γνκή Πηλάθσλ Δδψ ζα πεξηγξαθνχλ ζχληνκα θάπνηνη πίλαθεο πνπ απνηεινχλ ηελ βάζε δεδνκέλσλ νη νπνίνη ζην ζχλνιν είλαη 76. Γηα λα ζηεζεί κηα βάζε δεδνκέλσλ ζσζηά θαη πφζν κάιινλ γηα κία ηέηνηα εθαξκνγή, δελ εμαξηάηαη απηφ κφλν απφ ηελ δηθή καο ηερλνγλσζία φζν θη αλ γλσξίδνπκε απφ πξνγξακκαηηζκφ. Έηζη κε ηε ρξήζε ηνπ PhPbb ην έξγν πεξαηψζεθε επθνιφηεξα. Ωζηφζν ζηε πεξίπησζε πνπ ελψλνπκε δηαθνξεηηθνχο πίλαθεο κεηαμχ ηνπο απφ δηαθνξεηηθέο βάζεηο ζέιεη πξνζνρή θαη θαιή κειέηε ησλ βάζεσλ γηα λα κε πξνθχπηνπλ ζθάικαηα απφ ην ζπλδπαζκφ ηνπο. Απηφ είλαη έλα πνιχ ζπρλφ θαηλφκελν ζηε αλάπηπμε βάζεσλ δεδνκέλσλ ζε πξνγξακκαηηζηηθφ πεξηβάιινλ. Πξνηνχ αλαθεξζνχλ παξαθάησ νη πίλαθεο ζα ρξεηαζηεί λα γλσξίδνπκε θάπνηεο βαζηθέο ιέμεηο-θιεηδηά πνπ ζα καο ρξεηαζηνχλ απφ εδψ θαη έπεηηα. config include users topics posts Παξάκεηξνο ειέγρνπ Φφξησζε αξρείσλ Υξήζηεο Θέκαηα πδεηήζεσλ Γεκνζηεχζεηο Παξαθάησ ζα πεξηγξαθνχλ κεξηθά ζηνηρεία πηλάθσλ θαζψο θαη ε ζπλνπηηθή ηνπο ιεηηνπξγία rgv_profile_fields_data Εικόνα 27 Δομι rgv Βάςθσ δεδομζνων για το Portal & Forum 63

64 Δίλαη ν πίλαθαο πνπ ιακβάλεηαη ππφςε απφ ηελ εθαξκνγε (Site Portal & Forum) θαηά ηελ εγγξαθή ελφο κέινπο. Απνηειείηαη απν βαζηθά απαηηνχκελα παηδία πνπ έρνπκε νξίζεη λα θαίλνληαη ζην πξνθίι ηνπ θάζε κέινπο θαη ηα δηαηεξεί ε βάζε δεδνκέλσλ. Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME user_id mediumint(8) Όχι 0 Id monadiko gia kathe xristi pf_idiotita_melous mediumint(8) Ναι NULL pf_sxoli_spoudwn mediumint(8) Ναι NULL pf_etos_eisagwgis bigint(20) Ναι NULL rgv_attachments Δίλαη ν πίλαθαο φπνπ ζα δηαηεξεί πιεξνθνξίεο ζρεηηθά κε ηα ζπλεκκέλα αξρεία πνπ ζα αλεβάδεη ζηελ εθαξκνγή ν θάζε ρξήζηεο. Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME attach_id mediumint(8) Όχι Id monadiko post_msg_id mediumint(8) Όχι 0 Id monadiko topic_id mediumint(8) Όχι 0 Id monadiko in_message tinyint(1) Όχι 0 poster_id mediumint(8) Όχι 0 Id monadiko real_filename varchar(255) Όχι download_count mediumint(8) Όχι 0 attach_comment text Όχι extension varchar(100) Όχι filesize int(20) Όχι 0 filetime int(11) Όχι 0 thumbnail tinyint(1) Όχι 0 rgv_confirm Δίλαη ν πίλαθαο φπνπ ζα δηαηεξεί πιεξνθνξίεο ζρεηηθά κε ηηο θφξκεο επηβεβαίσζεο γηα δεηήκαηα (password,connections,sessions θ.η.ι.) 64

65 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME confirm_id varchar(32) Όχι Id monadiko session_id varchar(32) Όχι Id monadiko confirm_type tinyint(3) Όχι 0 code varchar(8) Όχι seed int(10) Όχι 0 rgv_forums Δίλαη ν πίλαθαο φπνπ ζα δηαηεξεί ηελ θάζε ιεπηνκέξεηα κεηαμχ ηνπ ρξήζηε θαη ησλ δεκνζηεχζεσλ ησλ νπνίσλ πξαγκαηνπνηεί. Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME Forum_id mediumint(8) Όχι Id monadiko parent_id mediumint(8) Όχι 0 Id monadiko Forum_parents mediumtext Όχι Forum_name varchar(255) Όχι Forum_link varchar(255) Όχι Forum_password varchar(40) Όχι Forum_image varchar(255) Όχι Forum_rules text Όχι Forum_rules_link varchar(255) Όχι Forum_topics_per_page tinyint(4) Όχι 0 Forum_type tinyint(4) Όχι 0 Forum_status tinyint(4) Όχι 0 Forum_posts mediumint(8) Όχι 0 Forum_topics mediumint(8) Όχι 0 Forum_last_post_id mediumint(8) Όχι 0 65

66 Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME Forum_last_poster_id mediumint(8) Όχι 0 Forum_last_post_time int(11) Όχι 0 Forum_last_poster_name varchar(255) Όχι rgv_log Δίλαη ν πίλαθαο φπνπ ζα δηαηεξεί φηηδήπνηε ζρεηίδεηαη κε ην ηζηνξηθφ ησλ ρξεζηψλ θαη ησλ ελξγεηψλ πνπ θάλνπλ Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME log_id mediumint(8) Όχι Id monadiko log_type tinyint(4) Όχι 0 Id monadiko user_id mediumint(8) Όχι 0 Id monadiko Forum_id mediumint(8) Όχι 0 Id monadiko topic_id mediumint(8) Όχι 0 Id monadiko log_ip varchar(40) Όχι log_time int(11) Όχι 0 log_operation text Όχι log_data mediumtext Όχι rgv_portal_block_index Δίλαη ν πίλαθαο φπνπ ζα δηαρεηξίδεηαη θαη ζα δηαηεξεί ζηνηρεία ζε ζρέζε κε ηα blocks (κπινθ) ηνπ πφξηαι ζε ζρέζε κε ηελ αξρηθή ζειίδα ηνπ Portal & Forum Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME block_id mediumint(8) Όχι Id monadiko block_index tinyint(1) Όχι 0 block_edit mediumint(8) Όχι 0 block_name varchar(255) Όχι 66

67 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME block_position varchar(2) Όχι block_view varchar(20) Όχι 0 block_content text Ναι NULL rgv_portal_menu Καη εδψ είλαη ν πίλαθαο κε ηα ζηνηρεία ηνπ κελνχ φπνπ θαη ζα δηαηεξνχληαη Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME menu_id mediumint(8) Όχι Id monadiko menu_img varchar(150) Όχι menu_name varchar(150) Όχι menu_url varchar(150) Όχι menu_view varchar(20) Όχι menu_open mediumint(8) Όχι 0 rgv_posts Δίλαη ν πίλαθαο ζα δηαηεξεί φηη ζηνηρείν αθνξά ηηο δεκνζηεχζεηο πνπ πξαγκαηνπνηεί ν ρξήζηεο κέζα ζηελ εθαξκνγή, νη νπνίεο κε ηε ρξήζε ησλ κεηξεηψλ ζα θαηαγξάθνληαη θαη ζηα logs πνπ είδακε πξνεγνπκέλσο Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME post_id mediumint(8) Όχι Id monadiko topic_id mediumint(8) Όχι 0 Id monadiko Forum_id mediumint(8) Όχι 0 Id monadiko poster_id mediumint(8) Όχι 0 Id monadiko icon_id mediumint(8) Όχι 0 Id monadiko poster_ip varchar(40) Όχι enable_sig tinyint(1) Όχι 1 67

68 Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME post_username varchar(255) Όχι post_subject varchar(255) Όχι post_text mediumtext Όχι post_postcount tinyint(1) Όχι 1 post_edit_time int(11) Όχι 0 post_edit_reason varchar(255) Όχι post_edit_user mediumint(8) Όχι 0 post_edit_count smallint(4) Όχι 0 post_edit_locked tinyint(1) Όχι 0 rgv_profile_fields Δίλαη ν πίλαθαο ζα δηαηεξεί ηα ππφινηπα απηηνχκελα ζηνηρεία ηνπ πξνθίι ησλ ρξεζηψλ θαηά ηελ εγγξαθή. Υσξίδνληαη κε ηα άιια ζηνηρεία δηφηη κεξηθά ζηνηρεία ζα έρνπλ εζσηεξηθή πξφζβαζε (κφλν κέζα ζηελ εθαξκνγή) θαη άιια ζηνηρεία ζα εμσηεξηθή πξφζβαζε ζηέιλνληαη κέζσ θαη πξνο ηα έμσ. (Δθηφο εθαξκνγήο) πρ θαηά ηελ ελεξγνπνίεζε εγγξαθήο κέινπο. Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME field_id mediumint(8) Όχι Id monadiko field_name varchar(255) Όχι field_type tinyint(4) Όχι 0 field_ident varchar(20) Όχι field_length varchar(20) Όχι field_validation varchar(20) Όχι field_required tinyint(1) Όχι 0 field_show_on_reg tinyint(1) Όχι 0 field_show_profile tinyint(1) Όχι 0 68

69 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ rgv_search_results Δίλαη ν πίλαθαο βνεζάεη ζην λα θάλεη θάπνηνο ρξήζηεο αλαδήηεζε κέζα ζηελ εθαξκνγή θαη λα ηνπ εκθαλίζεη δηάθνξεο δεκνζηεχζεηο θαη «ζπγγξαθείο» δειαδή κέιε. Θα δηαηεξεί ζηνηρεία ζρεηηθά κε ηηο ιέμεηο - θιεηδηά πνπ πξέπεη λα ρξεζηκνπνηνχληαη θαζψο θαη γηα ην ρξφλν πνπ θάλεη απηή ε δηαδηθαζία. Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME search_key varchar(32) Όχι search_time int(11) Όχι 0 search_keywords mediumtext Όχι search_authors mediumtext Όχι rgv_sessions Δίλαη ν πίλαθαο πνπ ζα δηαηεξεί ηα ζηνηρεία γηα ηηο ζπλδέζεηο πνπ γίλνληαη απφ δηάθνξεο δέζκεο ελεξγεηψλ. Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME session_id varchar(32) Όχι Id monadiko session_user_id mediumint(8) Όχι 0 Id monadiko session_forum_id mediumint(8) Όχι 0 Id monadiko session_last_visit int(11) Όχι 0 session_start int(11) Όχι 0 session_time int(11) Όχι 0 session_ip varchar(40) Όχι session_browser varchar(150) Όχι session_forwarded_for varchar(255) Όχι session_page varchar(255) Όχι session_viewonline tinyint(1) Όχι 1 session_autologin tinyint(1) Όχι 0 session_admin tinyint(1) Όχι 0 69

70 rgv_topics_posted Δίλαη ν πίλαθαο πνπ ζα δηαηεξεί ζηνηρεία ζρεηηθά κε ηηο δεκηνζηεχζεηο πνπ έγηλαλ θαη απφ πνηνλ έγηλαλ. Μία δεκνζίεπζε έρεη έλα id σο Primary Key θαη ζπλδέεηαη άκεζα κε ην id ηνπ ρξήζηε-κέινπο Πεδίο Σύπορ Κενό Πποκαθοπιζμένο ρόιηα MIME user_id mediumint(8) Όχι 0 Id monadiko topic_id mediumint(8) Όχι 0 Id monadiko topic_posted tinyint(1) Όχι 0 Id monadiko rgv_users Δίλαη ν πίλαθαο πνπ ζα δηαηεξεί ζηνηρεία φια ηα ζηνηρεία ηνπ ρξήζηε ζε ζρέζε κε ην ζχζηεκα. Απφ απηά ηα ζηνηρεία κεξηθά είλαη νξαηά ζηνλ ρξήζηε ελψ αληίζεηα ζηνλ Γηαρεηξηζηή φια είλαη νξαηά. Απηφ ζα είλαη ν πίλαθαο ειέγρνπ ησλ ζηνηρείσλ. Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME user_id mediumint(8) Όχι Id monadiko user_type tinyint(2) Όχι 0 group_id mediumint(8) Όχι 3 Id monadiko user_permissions mediumtext Όχι user_perm_from mediumint(8) Όχι 0 user_ip varchar(40) Όχι user_regdate int(11) Όχι 0 username varchar(255) Όχι user_password varchar(40) Όχι user_passchg int(11) Όχι 0 user_ varchar(100) Όχι user_birthday varchar(10) Όχι 70

71 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME user_lastvisit int(11) Όχι 0 user_lastmark int(11) Όχι 0 user_warnings tinyint(4) Όχι 0 user_last_warning int(11) Όχι 0 user_login_attempts tinyint(4) Όχι 0 user_posts mediumint(8) Όχι 0 user_rank mediumint(8) Όχι 0 user_new_privmsg int(4) Όχι 0 user_unread_privmsg int(4) Όχι 0 user_notify_pm tinyint(1) Όχι 1 user_notify_type tinyint(4) Όχι 0 user_allow_pm tinyint(1) Όχι 1 user_allow_viewonline tinyint(1) Όχι 1 user_allow_view tinyint(1) Όχι 1 user_allow_mass tinyint(1) Όχι 1 user_options int(11) Όχι 895 user_avatar varchar(255) Όχι user_avatar_type tinyint(2) Όχι 0 user_avatar_width smallint(4) Όχι 0 rgv_warnings Δίλαη ν πίλαθαο πνπ ζα δηαηεξεί ζηνηρεία ζε ζρέζε κε ηηο πξνεηδνπνηήζεηο πνπ ιακβάλνπλ νη ρξήζηεο ζε πεξίπησζε κε ππαθνήο ζηνπ θαλφλεο ηνπ Portal & Forum θαη δηαηεξεί ηνλ ρξήζηε πεξηνξηζκέλν ελψ ηνπ γλσζηνπνηεί ηελ αηηία γηα ηελ νπνία έγηλε κία ηέηνηα ελέξγεηα θαζψο θαη ην ζεκείν πνπ έγηλε κέζα ζε θάπνηα δεκνζίεπζε. Οη θαλφλεο θαηαγξάθνληαη ζε έλαλ άιιν πίλαθα κε φλνκα rgv_rules. 71

72 Πεδίο Σύπορ Κενό Πποκαθοπιζμένο σόλια MIME warning_id mediumint(8) Όχι Id monadiko user_id mediumint(8) Όχι 0 Id monadiko post_id mediumint(8) Όχι 0 Id monadiko log_id mediumint(8) Όχι 0 Id monadiko warning_time int(11) Όχι 0 Τπάξρνπλ θαη πνιινί άιινη πίλαθεο ηνπο νπνίνπο δελ κπνξνχκε λα ηνπο λα θέξνπκε ζε απηφ ην θέηκελν ιφγσ ρψξνπ, αιια ε ιεηηνπξγία ηνπο είλαη εμίζνπ ζεκαληηθή έρνληαο ζπνπδαίν ξφιν ζηελ δνκή θαη ζηελ αζθάιεηα ηνπ Portal & Forum. Πσο γίλνληαη φκσο ν εξσηήζεηο ζηε ζπγθεθξηκέλε βάζε απφ ηελ MySql; Γηα παξάδεηγκα κπνξνχκε λα δνχκε πην πάλσ ηα πεδία ηνπ πίλαθα rgv_users. Δάλ ζα ζέιακε λα αλαθηήζνπκε ηα ζηνηρεία φισλ ησλ ρξεζηψλ ε εληνιή πνπ ην θάλεη απηφ είλαη: SELECT * FROM rgv_users Δάλ ζα ζέιακε κφλν ην φλνκα,ηε δηεχζπλζε ειεθηξνληθνχ ηαρπδξνκείνπ γηα ην ρξήζηε, θαζψο θαη ην ID ηνπ ρξήζηε δειαδή ηε κνλαδηθή ηνπ ηαπηφηεηα, ζε απηή ηελ πεξίπησζε ζα κπνξνχζαηε λα είκαζηε πην ζπγθεθξηκέλνη, φπσο θαίλεηαη ζηνλ θψδηθα παξαθάησ: SELECT username, user_ , user_id FROM rgv_users Σψξα ηη γίλεηαη πνπ ζηελ πεξίπησζε πνπ ζέινπκε θάπνηνπο ρξήζηεο πνπ ζα εκθαληζηνχλ λα κεηνλνκαζηνχλ ζε κέιε ηνπ Portal & Forum; Η απάληεζε δίλεηαη κε ην εμήο ηκήκα θψδηθα ηεο MySql. SELECT username as MemberName, user_ as Member_ _Address, user_id as Member_ID FROM rgv_users Aλ ζέινπκε λα εκθαλίζνπκε ηε πξψηε (παιαηφηεξε) θαη ηε ηειεπηαία (πην πξφζθαηε) απφ ηηο εκεξνκελίεο εγγξαθήο ρξήζηε; Απηφ κπνξεί γίλεη σο εμήο: SELECT MIN (user_regdate) AS First_Member_Date, MAX (user_regdate) AS Most_Recent_Member_Date ΑΠΟ rgv_users Ναη κπνξνχκε λα ρξεζηκνπνηνχκε πάλσ απφ κία θνξά ηα ζηνηρεία ησλ ρξεζηψλ ψζηε λα εμάγνπκε ηαπηφρξνλα θάπνηα απνηειέζκαηα. Η βάζε δεδνκέλσλ είλαη ην ζεκαληηθφηεξν ζηνηρείν ζην νπνίν ζηεξίδεηαη φιε ε εθαξκνγή γηα απηφ θηφιαο ιέγεηαη βάζε. Απφ εθεί μεθηλνχλ φια. Πσο φκσο απηά ηα δεδνκέλα πνπ δηαηεξνχληαη κπνξνχλ λα εμάγνληαη ζηνλ Web Browser σο απνηειέζκαηα εξσηήζεσλ πνπ γίλνληαη ζηε βάζε; Η κειέηε ηνπ θψδηθα PhP ηεο εθαξκνγήο βνεζάεη ζε απηφ. 72

73 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 4.2 Portal & Forum Δπίπεδν Λεηηνπξγίαο Αλάπηπμε Παξακεηξνπνίεζε θώδηθα PhP απηφ ην ζεκείν πξέπεη λα ιερζεί φηη ε δεκηνπξγία θαη ε αλάπηπμε θψδηθα κηα ηέηνηα εθαξκνγήο δελ είλαη θαζφινπ εχθνιε ππφζεζε επεηδή κηα γιψζζα φπσο ε PhP εθηειείηαη ζηελ κεξηά ηνπ server (Server Side) θαη κπνξεί άιιν λα δείρλεη ζηελ θάζε ηνπ πξνγξακκαηηζκνχ θαη άιιν σο απνηέιεζκα εθηέιεζεο. Τπάξρνπλ θαη άιινη ιφγνη πνπ δπζθνιεχνπλ ην ζελάξην αλάπηπμεο σζηφζν κε ηελ βνήζεηα ηνπ PhPbb open source software μεπεξάζηεθαλ. Καηά θχξην ιφγν νη θιάζεηο πνπ ρξεζηκνπνηνχληαη ζην θψδηθα θνξηψλνληαη απφ ην αλνηρηφ ινγηζκηθφ. Γηα ηε ιεηηνπξγία φκσο ηνπ Portal & Forum ρξεηάδεηαη λα παξέκβνπκε ζε κεξηθά ζεκαληηθά αξρεία θψδηθα.php ψζηε λα ηα παξακεηξνπνηήζνπκε ζχκθσλα κε ηηο δηθέο καο απαηηήζεηο. Πξέπεη λα ιερζεί φηη ζε θάζε πεξίπησζε έρνπλ γίλεη πνιιέο δνθηκέο ψζηε λα κε δεκηνπξγνχληαη ιάζε. Πέξα απφ αξρεία πνπ δεκηνπξγήζεθαλ θαηά ηελ πεξάησζε απηήο ηεο εξγαζίαο, ρξεζηκνπνηήζεθαλ θαη πξφηππα αξρεία ηα νπνία είλαη αλνηρηά πξνο ρξήζε ήδε απφ ην αλνηρηφ ινγηζκηθφ ηεο PhPbb.Γηα λα κε δεκηνπξγνχκε γηα θάζε ιεηηνπξγία πνπ ζα καο ρξεηαζηεί ζηελ εθαξκνγή θάπνην αξρείν html / PhP θνξηψλνπκε ηνλ θψδηθα απφ ηηο βηβιηνζήθεο πνπ ήδε καο πξνζθέξεη ην αλνηρηφ ινγηζκηθφ ρσξίο λα επέκβνπκε ζην customization ησλ αξρείσλ, απιά ηα ζπλδένπκε κε θάπνηεο εληνιέο θφξησζεο κε απηά ηα αξρεία πνπ έρνπκε δεκηνπξγήζεη. Όπσο παξαηεξνχκε ζηελ Δηθφλα 17 πνπ είδακε ιίγν πην πίζσ ππάξρεη έλα αξρείν κε φλνκα config.php ην νπνίν είλαη έλα ζεκαληηθφ αξρείν πνπ φπσο ιέεη θαη ην φλνκά ηνπ δηακνξθψλεη θάπνηα ζηνηρεία. Απηά ηα ζηνηρεία έρνπλ λα θάλνπλ κε ηνλ πσο ζα επηθνηλσλνχλ ηα PhP script κε ηε βάζε δεδνκέλσλ θαη κε πνην ηξφπν ζα γίλνληαη αλαγλσξίζηκα απφ απηή. [5a,6a,3b,1c,7c,8c,10c,11c,12c,13c,14c] Σν config.php είλαη ην αξρείν ην νπνίν ζπζηήλεηαη κε ηελ βάζε δεδνκέλσλ θαη πεξηέρεη ηα ζηνηρεία γηα ηελ επηθνηλσλία κεηαμχ PhP θαη MySql. Πεξηιακβάλεη ηνλ εμήο παξακεηξνπνηεκέλν θψδηθα <?PhP // Μελ αιιάδεηο ηίπνηα ζε απηφ ην αξρείν εάλ δελ είζαη ζίγνπξνο γηα ην ηη θάλεηο. $dbms = 'MySql'; // Γήισζε ηνπ ηχπνπ ηεο βάζεο δεδνκέλσλ $dbhost = 'localhost'; // Δπεηδή ην ηξέρνπκε ηνπηθά βάδνπκε localhost 73

74 $dbport = ''; $dbname = 'rgv'; // Δδψ νξίζακε ην φλνκα ηεο βάζεο πνπ ζα ρξεζηκνπνηεί ην Portal //and Forum. Πην πάλσ είδακε πσο ρξεζηκνπνηνχκε ηε βάζε πνπ δεκηνπξγήζακε. $dbuser = 'root'; // Σν root είλαη ην username ηεο βάζεο δεδνκέλσλ καο $dbpasswd = ''; //Γηα ιφγνπο επθνιίαο παξαιείςακε λα εηζάγνπκε θσδηθφ $table_prefix = 'rgv_'; // Σν πξφζεκα πνπ ζα έρνπλ νη πίλαθεο ηεο βάζεο $acm_type = 'file'; // φια είλαη ηχπνπ αξρείνπ $load_extensions = true); // έλδεημε φηη εγθαηαζηήζακε ην PhPbb.?> Σν αξρείν common.php Ο θψδηθαο απηφο θάλεη ξπζκίζεηο γηα πξάγκαηα πνπ πξέπεη λα γίλνπλ πξηλ ηξέμεη ην Portal & Forum. πγθεθξηκέλα δηαρεηξίδεηαη ηνλ έιεγρν θάπνησλ ηηκψλ φπσο $ HTTP_XX_VARS (εθθαζάξηζε απφ ηπρφλ απξφβιεπηεο ηηκέο), ν έιεγρνο ησλ ξπζκίζεσλ δηαθνκηζηή, θαη ειέγρνπο πνπ πεξηιακβάλνπλ έλα ζσξφ άιια αξρεία πνπ ρξεζηκνπνηνχληαη ζε θάζε ζειίδα (constants.php, profile.php, sessions.php, θαη νχησ θαζεμήο). <?PhP // Set time zone date_default_timezone_set('utc'); if (!defined('in_phpbb')) exit; $starttime = explode(' ', microtime()); $starttime = $starttime[1] + $starttime[0]; // Με απηφ αλαθέξνληαη φια ηα ιάζε ηα νπνία δεκηνπξγνχληαη θαηά ηελ εθηέιεζε error_reporting(e_all ^ E_NOTICE); function deregister_globals() $not_unset = array( 'GLOBALS' '_GET' '_POST' '_COOKIE' '_REQUEST' => true, => true, => true, => true, => true, 74

75 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ ); '_SERVER' => true, '_SESSION' => true, '_ENV' => true, '_FILES' => true, 'PhPEx' => true, 'PhPbb_root_path' => true // Διέγρνπκε αλ ην SESSION γηα ηελ εθαξκνγή καο κπνξεί λα αξρηθνπνηεζεί. if (!isset($_session)!is_array($_session)) $_SESSION = array(); // φιεο νη κέζνδνη πνπ ρξεζηκνπνηνχκε θαηαρσξνχληαη ζε έλα κεγάιν πίλαθα $input = array_merge( array_keys($_get), array_keys($_post), array_keys($_cookie), array_keys($_server), array_keys($_session), array_keys($_env), array_keys($_files) ); foreach ($input as $varname) if (isset($not_unset[$varname])) // βνήζεηα ησλ cookies if ($varname!== 'GLOBALS' isset($_get['globals']) isset($_post['globals']) isset($_server['globals']) isset($_session['globals']) isset($_env['globals']) isset($_files['globals'])) exit; else $cookie = &$_COOKIE; while (isset($cookie['globals'])) foreach ($cookie['globals'] as $registered_var => $value) if (!isset($not_unset[$registered_var])) unset($globals[$registered_var]); $cookie = &$cookie['globals']; unset($globals[$varname]); unset($input); if (!defined('phpbb_installed')) $server_name = (!empty($_server['http_host']))? strtolower($_server['http_host']) : ((!empty($_server['server_name']))? $_SERVER['SERVER_NAME'] : getenv('server_name')); $server_port = (!empty($_server['server_port']))? (int) $_SERVER['SERVER_PORT'] : (int) getenv('server_port'); 75

76 $secure = (isset($_server['https']) && $_SERVER['HTTPS'] == 'on')? 1 : 0; $script_name = (!empty($_server['php_self']))? $_SERVER['PHP_SELF'] : getenv('php_self'); if (!$script_name) $script_name = (!empty($_server['request_uri']))? $_SERVER['REQUEST_URI'] : getenv('request_uri'); $url = (($secure)? ' : ' $server_name; if ($server_port && (($secure && $server_port <> 443) (!$secure && $server_port <> 80))) $url.= $script_path; header('location: '. $url); exit; if (defined('debug_extra')) $base_memory_usage = 0; if (function_exists('memory_get_usage')) $base_memory_usage = memory_get_usage(); // Δδψ απαηηνχληαη λα θνξησζνχλ θάπνηα αξρεία απφ ην PhPbb, γηα ιεηηνπξγία. require($phpbb_root_path. 'includes/acm/acm_'. $acm_type. '.'. $PhPEx); require($phpbb_root_path. 'includes/cache.'. $PhPEx); require($phpbb_root_path. 'includes/template.'. $PhPEx); require($phpbb_root_path. 'includes/session.'. $PhPEx); require($phpbb_root_path. 'includes/auth.'. $PhPEx); require($phpbb_root_path. 'includes/functions.'. $PhPEx); require($phpbb_root_path. 'includes/functions_content.'. $PhPEx); require($phpbb_root_path. 'includes/constants.'. $PhPEx); require($phpbb_root_path. 'includes/db/'. $dbms. '.'. $PhPEx); require($phpbb_root_path. 'includes/utf/utf_tools.'. $PhPEx); require($phpbb_root_path. 'Portal/includes/functions_Portal.'.$PhPEx); // αξρηθνπνηνχκε κεξηθέο βαζηθέο θιάζεηο $user = new user(); $auth = new auth(); $template = new template(); $cache = new cache(); $db = new $sql_db(); // Δδψ γίλεηαη ε ζχλδεζε ηνπ Portal & Forum κε ηε βάζε δεδνκέλσλ $db->sql_connect($dbhost, $dbuser, $dbpasswd, $dbname, $dbport, false, defined('phpbb_db_new_link')? PHPBB_DB_NEW_LINK : false);?> Σν αξρείν Index.PhP ην νπνίν είλαη θαη ην πξψην αξρείν PhP πνπ εμάγεη απνηειέζκαηα ζηελ νζφλε ην ηξνπνπνηήζακε σο έρεη: 76

77 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ <?PhP define('in_phpbb', true); $PhPbb_root_path = (defined('phpbb_root_path'))? PHPBB_ROOT_PATH : './'; $PhPEx = substr(strrchr( FILE, '.'), 1); include($phpbb_root_path. 'common.'. $PhPEx); include($phpbb_root_path. 'includes/functions_display.'. $PhPEx); // Δδψ αξρηθνπνηνχκε ην session καο θαη θάζε πξνβνιή κηαο ζπδήηεζεο απν ηνλ ρξήζηε ζα έρεη ηελ έλδεημε viewforum $user->session_begin(); $auth->acl($user->data); $user->setup('viewforum'); display_forums('', $config['load_moderators']); // Δδψ ζέηνπκε λα δηαηεξνχληαη θάπνηα ζηαηηζηηθά ζηνηρεία θαη λα πξνζκεηξνχληαη αλαιφγσο $total_posts = $config['num_posts']; $total_topics = $config['num_topics']; $total_users = $config['num_users']; $l_total_user_s = ($total_users == 0)? 'TOTAL_USERS_ZERO' : 'TOTAL_USERS_OTHER'; $l_total_post_s = ($total_posts == 0)? 'TOTAL_POSTS_ZERO' : 'TOTAL_POSTS_OTHER'; $l_total_topic_s = ($total_topics == 0)? 'TOTAL_TOPICS_ZERO' : 'TOTAL_TOPICS_OTHER'; if ($auth->acl_gets('a_group', 'a_groupadd', 'a_groupdel')) $sql = 'SELECT group_id, group_name, group_colour, group_type FROM '. GROUPS_TABLE. ' WHERE group_legend = 1 ORDER BY group_name ASC'; else $sql = 'SELECT g.group_id, g.group_name, g.group_colour, g.group_type FROM '. GROUPS_TABLE. ' g LEFT JOIN '. USER_GROUP_TABLE. ' ug ON ( g.group_id = ug.group_id AND ug.user_id = '. $user->data['user_id']. ' AND ug.user_pending = 0 ) WHERE g.group_legend = 1 AND (g.group_type <> '. GROUP_HIDDEN. ' OR ug.user_id = '. $user- >data['user_id']. ') ORDER BY g.group_name ASC'; $result = $db->sql_query($sql); $legend = array(); while ($row = $db->sql_fetchrow($result)) $colour_text = ($row['group_colour'])? ' style="color:#'. $row['group_colour']. '"' : ''; $group_name = ($row['group_type'] == GROUP_SPECIAL)? $user->lang['g_'. $row['group_name']] : $row['group_name']; if ($row['group_name'] == 'BOTS' ($user->data['user_id']!= ANONYMOUS &&!$auth- >acl_get('u_viewprofile'))) $legend[] = '<span'. $colour_text. '>'. $group_name. '</span>'; 77

78 else $legend[] = '<a'. $colour_text. ' href="'. append_sid("$phpbb_root_pathmemberlist.$phpex", 'mode=group&g='. $row['group_id']). '">'. $group_name. '</a>'; $db->sql_freeresult($result); $legend = implode(', ', $legend); // Generate birthday list if required... $birthday_list = ''; if ($config['load_birthdays'] && $config['allow_birthdays']) $now = getdate(time() + $user->timezone + $user->dst - date('z')); $sql = 'SELECT user_id, username, user_colour, user_birthday FROM '. USERS_TABLE. " WHERE user_birthday LIKE '". $db->sql_escape(sprintf('%2d-%2d-', $now['mday'], $now['mon'])). "%' AND user_type IN (". USER_NORMAL. ', '. USER_FOUNDER. ')'; $result = $db->sql_query($sql); while ($row = $db->sql_fetchrow($result)) $birthday_list.= (($birthday_list!= '')? ', ' : ''). get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']); if ($age = (int) substr($row['user_birthday'], -4)) $birthday_list.= ' ('. ($now['year'] - $age). ')'; $db->sql_freeresult($result); // Οξίδνπκε κεξηθέο βαζηθέο κεηαβιεηέο $template->assign_vars(array( 'TOTAL_POSTS' => sprintf($user->lang[$l_total_post_s], $total_posts), //χλνιν δεκνζηέπζεσλ 'TOTAL_TOPICS' => sprintf($user->lang[$l_total_topic_s], $total_topics), // χλνιν ζεκάησλ 'TOTAL_USERS' => sprintf($user->lang[$l_total_user_s], $total_users), // χλνιν ρξεζηψλ 'NEWEST_USER' => sprintf($user->lang['newest_user'], get_username_string('full', $config['newest_user_id'], $config['newest_username'], $config['newest_user_colour'])), // Οξίζακε φηαλ εγγξάθεηαη έλαο ρξήζηεο λα ηνλ εκαλίδεη σο λέν κέινο θαη κε δηαθνξεηηθφ ρξψκα λα εκθαλίδεηαη ζηε ιίζηα κειψλ. 'LEGEND' 'BIRTHDAY_LIST' => $legend, => $birthday_list, 'FORUM_IMG' => $user->img('forum_read', 'NO_NEW_POSTS'), // Γηα θάζε ζπδήηεζε νξίδνπκε κηα εηθφλα ζε πεξίπησζε πνπ δελ ππάξρνπλ λέεο δεκνζηεχζεηο 'FORUM_NEW_IMG' => $user->img('forum_unread', 'NEW_POSTS'), // Γηα θάζε ζπδήηεζε νξίδνπκε κηα εηθφλα ζε πεξίπησζε πνπ ππάξρνπλ λέεο δεκνζηεχζεηο 'FORUM_LOCKED_IMG' => $user->img('forum_read_locked', 'NO_NEW_POSTS_LOCKED'), // Γηα θάζε ζπδήηεζε νξίδνπκε κηα εηθφλα ζε πεξίπησζε 'FORUM_NEW_LOCKED_IMG' => $user->img('forum_unread_locked', 'NO_NEW_POSTS_LOCKED'), // Γηα θάζε ζπδήηεζε νξίδνπκε κηα εηθφλα ζε πεξίπησζε πνπ έρεη θιεηδσζεί θαη δελ αλαγλψζηεθε 78

79 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ 'S_LOGIN_ACTION' => append_sid("$phpbb_root_pathucp.$phpex", 'mode=login'), 'S_DISPLAY_BIRTHDAY_LIST' => ($config['load_birthdays'])? true : false, 'U_MARK_FORUMS' => ($user->data['is_registered'] $config['load_anon_lastread'])? append_sid("$phpbb_root_pathindex.$phpex", 'hash='. generate_link_hash('global'). '&mark=forums') : '', 'U_MCP' => ($auth->acl_get('m_') $auth- >acl_getf_global('m_'))? append_sid("$phpbb_root_pathmcp.$phpex", 'i=main&mode=front', true, $user->session_id) : '') ); // Η ζειίδα πνπ εηζάγεηαη - εμάγεηαη ζηνλ browser σο index page_header($user->lang['index']); /* * Δηζάγνπκε γηα ην Πφξηαι καο ηηο ζπλαξηήζεηο θαη ηα πεδία blocks πνπ ζα ππάξρνπλ ζηελ εθαξκνγή */ if (defined('portal_index_page')) $user->setup('mods/portal_xl'); include_once($phpbb_root_path. 'Portal/includes/functions.'.$PhPEx); include_once($phpbb_root_path. 'Portal/includes/functions_acronym.'. $PhPEx); include_once($phpbb_root_path. 'Portal/includes/index_blocks.'. $PhPEx); include_once($phpbb_root_path. 'Portal/includes/functions_blocks_index.'. $PhPEx); /* * switch template if the Portal index/viewtopic is active */ if (defined('portal_index_page')) $template->set_filenames(array( 'body' => 'Portal/Portal_index_body.html', )); else $template->set_filenames(array( 'body' => 'index_body.html', )); page_footer(); // εδψ είλαη ην θάησ κέξνο ηεο ζειίδαο ην νπνίν θνξηψλεηαη ζε μερσξηζηφ frame ψζηε λα είλαη θνηλφ ζε φιεο ηηο ζειίδεο?> 79

80 4.3 Portal & Forum Δπίπεδν Παξνπζίαζεο Αλάπηπμε Δθαξκνγήο User Interface (UI) ε απηφ ην επίπεδν εληάζζεηαη ην ζρεδηαζηηθφ κέξνο ηνπ Portal & Forum θαη νηηδήπνηε αθνξά ηελ εκθάληζε ηνπ. Σα αξρεία πνπ απαξηίδνπλ ηελ εθαξκνγή γηα απηφ ην επίπεδν είλαη.html κεξηθά απφ ηα νπνία είλαη εκπινπηηζκέλα κε θψδηθα PhP θαη javascript αλάινγα κε ηε ιεηηνπξγηθφηεηα ηνπ θάζε αξρείνπ. Σα αξρεία ηεο εθαξκνγήο ζε επίπεδν παξνπζίαζεο θαζψο θαη ν θψδηθαο ζα αλαθεξζνχλ ζην παξάξηεκα απηνχ ηνπ θεηκέλνπ. Όπσο είπακε θαη πξνεγνπκέλσο γηα λα κε δεκηνπξγνχκε γηα θάζε ιεηηνπξγία πνπ ζα καο ρξεηαζηεί ζηελ εθαξκνγή θάπνην αξρείν html / PhP θνξηψλνπκε ηνλ θψδηθα απφ ηηο βηβιηνζήθεο πνπ ήδε καο πξνζθέξεη ην αλνηρηφ ινγηζκηθφ ρσξίο λα επέκβνπκε ζην customization ησλ αξρείσλ, απιά ηα ζπλδένπκε κε θάπνηεο εληνιέο θφξησζεο κε απηά ηα αξρεία πνπ έρνπκε δεκηνπξγήζεη. Απηφ ζα ην δνχκε ζηηο παξαθάησ ζειίδεο. Γηα λα γίλεη πην θαηαλνεηή ε εκθάληζε ηεο εθαξκνγήο ζα ηελ ρσξίζνπκε ζε ηκήκαηα ηα νπνία έρνπλ σο εμήο: PORTAL Δγγξαθή ύλδεζε Forum Αλαδήηεζε Όξνη Υξήζεο Πξνζσπηθό Απόξξεην πρλέο Δξσηήζεηο Εικόνα 28 Σο Portal και τα τμιματά του Πξνηνχ εμεηαζηεί ε αλάιπζε φισλ ησλ ηκεκάησλ ζα εμεηαζηεί ε αλάπηπμε ηνπ ηκήκαηνο Όξνη Υξήζεο πνπ θαηά παξφκνην ηξφπν αλαπηχρζεθε θαη ην θάζε ηκήκα. 80

81 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Δδψ ζα δνχκε πσο δεκηνπξγήζακε / πξνζζέηνπκε έλα ηκήκα γηα ηελ εθαξκνγή θαη πσο απηφ ζπλδπάδεηαη κε ηνλ θψδηθα PhP & html ψζηε λα εθθέξεη απνηειέζκαηα. Γηα παξάδεηγκα ην ηκήκα Όξνη Υξήζεο. ** Με ηελ βνήζεηα ηνπ Dreamweaver θαη ηνπ Photoshop ε εθαξκνγή αλαπηχρζεθε θαη δηακνξθψζεθε ψζηε ε εκθάληζή ηεο λα είλαη εχρξεζηε, ειθπζηηθή θαη πεξηεθηηθή.** Πξέπεη λα ζπκόκαζηε όηη θαηά ηελ δηάξθεηα πνπ δεκηνπξγνύκε έλα αξρείν PHP λα βεβαησλόκαζηε πάληα όηη δελ ππάξρνπλ θελέο γξακκέο θαη/ή θελά πξηλ ην <?PhP θαη κεηά ην?>. ε αληίζεηε πεξίπησζε κπνξεί λα κελ παίξλνπκε θάπνην απνηέιεζκα ζηελ νζόλε ή λα παίξλνπκε αιιά λα είλαη ηειείσο δηαθνξεηηθό από απηό πνπ αλακέλνπκε. ην παξάδεηγκα θηηάρλνπκε κηα απιή ζειίδα πνπ αλαθέξεη ιίγα ιφγηα γηα ηνπο φξνπο ρξήζεο ηεο εθαξκνγήο καο. Υξεζηκνπνηνχκε απηφ ην παξάδεηγκα γηα γίλεη θαηαλνεηή ε δηαδνρηθή δηαδηθαζία πνπ αθνινπζήζεθε ζε φια ηα αξρεία ηεο εθαξκνγήο. Αλνίγνπκε ην πξφγξακκα Dreamweaver θαη επηιέγνπκε Create New PhP ε πάκε εθεί πνπ ιέεη File New Dynamic Page PhP Εικόνα 29 Dreamweaver, Menu Δθμιουργία Αρχείου PhP 81

82 Κώδηθαο Αξρείνπ oroi_xrhshs.php <?PhP define('in_phpbb', true); $PhPbb_root_path = (defined('phpbb_root_path'))? PHPBB_ROOT_PATH : './'; $PhPEx = substr(strrchr( FILE, '.'), 1); include($phpbb_root_path. 'common.'. $PhPEx); //Star Session Management Δδψ αξρηθνπνηνχκε ην session καο ζε ζρέζε κε ηνλ ρξήζηε. $user->session_begin(); $auth->acl($user->data); $user->setup(); page_header('όξνη Υξήζεο'); $template->set_filenames(array( 'body' => 'oroi.html', )); make_jumpbox(append_sid("$phpbb_root_pathviewforum.$phpex")); page_footer();?> Όπσο θαίλεηαη ζηνλ θψδηθα πην πάλσ έρνπκε νξίζεη έλα αξρείν 'oroi.html' ζην νπνίν ζα εμαρζεί ην απνηέιεζκα ηνπ ζψκαηνο ηνπ θψδηθα PhP. Η PhP φπσο είπακε ζηηο πξνεγνχκελεο ζειίδεο μερσξίδεη ην ινγηθφ κέξνο ηεο ζειίδαο (θψδηθαο PHP) απφ ην κέξνο ηεο εκθάληζεο (ρξψκαηα, εηθφλεο, θφλην, θιπ) θαη ην θείκελν (ην αξρείν HTML) γηα απηφ θαη νξίζακε ην αξρείν 'oroi.html' ην νπνίν θαη ζα δεκηνπξγήζνπκε παξαθάησ. Ο θψδηθαο ζηνλ code editor μερσξίδεη κε ρξψκαηα ηε ιεηηνπξγηθφηεηα ηεο θάζε ιέμεο φπσο θαίλεηαη ζηελ Δηθφλα 30. Όπσο παξαηεξνχκε ην <? Καη?> είλαη έληνλα κε θφθθηλν ζηελ αξρή θαη ζην ηέινο ηνπ θψδηθα. Οη δεζκεπκέλεο ιέμεηο θαη δηαδηθαζίεο αλαπαξηζηνχληαη κε κπιε θαη πξάζηλν ρξψκα θαη νη ζχλδεζκνη θαζψο θαη νη δηάθνξεο δηαδξνκέο paths κε απιφ θφθθηλν. Σα ζρφιηα κε θίηξηλν θαη φια ηα ππφινηπα κε καχξν ρξψκα. Σψξα απνζεθεχνπκε ην αξρείν κε ην θψδηθα πνπ είλαη πην πάλσ σο oroi_xrhshs.php File Save As oroi_xrhshs.php Θπκίδνπκε φηη ην αξρείν.php είλαη εθηειέζηκν αξρείν πνπ εθηειείηαη ζηελ πιεπξά ηνπ server πνπ ζηελ πξνθεηκέλνπ πεξίπησζε είλαη ν apache server κέζσ ηνπ πξνγξάκκαηνο xampp. Σν αξρείν.html είλαη απηφ πνπ εθηειείηαη ζηελ πιεπξά ηνπ client θαη απηφ γίλεηαη κε ηελ βνήζεηα ηνπ web browser πνπ ρξεζηκνπνηνχκε. 82

83 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Εικόνα 30 Dreamweaver, oroi_xrhshs.php Σψξα ζα δεκηνπξγήζνπκε ην αξρείν html πνπ ζα πεξηέρεη ην πεξηερφκελν ηνπ oroi_xrhshs.php. Απηφ ην αξρείν ζα πεξηέρεη θαη φηη άιιν ζρεηίδεηαη κε ηνλ ηξφπν εκθάληζεο ησλ απνηειεζκάησλ. Καη πάιη κε ηνλ Drewamweaver επηιέγνπκε Create New Html ε πάκε εθεί πνπ ιέεη File New Basic Page Html Κώδηθαο Αξρείνπ oroi.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " <html xmlns=" <head> <body> <h2>όξνη Υξήζεο</h2> <div class="panel"> <div class="inner"><span class="corners-top"><span></span></span> <div class="content"> <p> Δδψ Βάδνπκε φινο ην πεξηερφκελν ησλ φξσλ πνπ ζέινπκε λα δηαβάδεη ν ρξήζηεο κε ηελ είζνδφ ηνπ ζην Portal & Forum. </p> </div> <span class="corners-bottom"><span></span></span></div> </div> </body> </html> 83

84 Σψξα απνζεθεχνπκε ην παξαπάλσ αξρείν (oroi.html) ζηνλ θάθειν πνπ βξίζθεηαη ε εθαξκνγή καο. Δπίζεο αλεβάδνπκε ην αξρείν aboutus.php ζηνλ θπξίσο θάθειν πνπ βξίζθεηαη ε εθαξκνγή (εθεί πνπ βξίζθεηαη ην αξρείν index.php) θαη ηέινο πεγαίλνπκε ζην γηα λα δνχκε ην απνηέιεζκα ηνπ αξρείνπ. Γηα λα είλαη φκσο πην νξγαλσκέλα ηα αξρεία καο απφ άπνςε εκθάληζεο αιιά θαη πξνγξακκαηηζκνχ ζε θψδηθα ζα κπνξνχζακε λα παξαιείςνπκε θάπνηα βήκαηα θαη λα δεκηνπξγήζνπκε κεξηθά μερσξηζηά αξρεία σο frames γηα ηελ θάζε ζειίδα πνπ ζα δεκηνπξγνχκε. Πσο; Αο ζθεθηνχκε φηη ε παξαθάησ απιή εηθφλα απνηειεί ηελ αξρηθή ζειίδα ηεο εθαξκνγήο καο ρσξηζκέλα ζε frames. Αξρηθή ζειίδα εθαξκνγήο Portal & Forum Πάλσ πιαίζην δνκήο (frame) ηεο ζειίδαο Portal & Forum.html Μεζαίν πιαίζην δνκήο (frame) ηεο ζειίδαο Portal & Forum.html Σπρφλ Πξφζζεην πιαίζην δνκήο (frame) ηεο ζειίδαο Portal & Forum.html Κάησ πιαίζην δνκήο (frame) ηεο ζειίδαο Portal & Forum.html Εικόνα 31 Δομι Frames Portal & Forum Εφαρμογισ Οπφηε ρξεζηκνπνηνχκε δηαθνξεηηθά frames πνπ απνηεινχλ ην θαζέλα έλα μερσξηζηφ αξρείν.html. Όια καδί κπνξνχλ λα ζπλζέζνπλ κηα ζειίδα, φπσο είλαη θαη ε αξρηθή ζειίδα ηεο εθαξκνγήο καο. Σν πάλσ frame απνηειεί ην πάλσ ζπλερέο εκθαληδφκελν κέξνο ηεο ζειίδαο ηεο εθαξκνγήο καο θαη ην νλνκάδνπκε overall_header.html Σν κεζαίν frame απνηειείηαη απφ πνιιά αξρεία ηα νπνία ζα κπνξνχζαλ λα είλαη νπνηαδήπνηε αξρεία.html θαη λα εκθαλίδνληαη ζην κέζν ηεο ζειίδαο. Σν πξφζζεην frame ζα κπνξνχζε λα είλαη έλα αξρείν κηθξφ.html θαη λα ελζσκαηψλεηαη ζε έλα άιιν κεγαιχηεξν. Δκείο ζηελ εθαξκνγή ρξεζηκνπνηνχκε έλα.html αξρείν πνπ ζα πεξηέρεη κηα κπάξα θχιηζεο φπνπ ζα κπνξνχκε λα κεηαβαίλνπκε ζε άιια ζεκεία ηεο ζειίδαο ηεο εθαξκνγήο. Απηφ ην αξρείν ην νλνκάδνπκε jumpbox.html. Σν θάησ frame απνηειεί ην θάησ ζπλερέο εκθαληδφκελν κέξνο ηεο ζειίδαο ηεο εθαξκνγήο καο θαη ην νλνκάδνπκε overall_footer.html 84

85 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Με ην Dreamweaver ζρεδηάδνπκε θαη εηζάγνπκε ηηο εηθφλεο πνπ ζα θαίλνληαη νη νπνίεο βξίζθνληαη ζε έλαλ θάθειν κε φλνκα images, θψδηθα.css,html θαη εηζάγνπκε ηνπο δηάθνξνπο ζπλδέζκνπο κε άιια αξρεία πνπ ζέινπκε θαζψο θαη ζπλδεηηθνχο θψδηθεο πνπ επηθνηλσλνχλ κε ηελ βάζε καο rgv. ην θάθειν PortalForum πνπ έρνπκε δεκηνπξγήζεη γηα ηελ εθαξκνγή δεκηνπξγήζακε έλα θάθειν κε φλνκα Theme. ε εθείλν ηνλ θάθειν ππάξρνπλ φινη νη θάθεινη κε ηα ζηνηρεία πνπ παίξλνπκε φηαλ ηα ρξεηαδφκαζηε. Απηά αθνξνχλ γξαθηθά, εηθφλεο, ζχκβνια. Δπνκέλσο φηαλ ζέινπκε λα θνξηψζνπκε κηα εηθφλα ζην αξρείν καο, απηφ ην θάλνπκε κε ην θψδηθα <img src="t_theme_path/images/icons_letters/r-gramma.png" alt="" width="48" height="41" border="0" /> πνπ ζεκαίλεη φηη θνξηψλνπκε κηα εηθφλα απφ θάπνηα πεγε. Απηή ε πεγή είλαη ε: C:\xampp\htdocs\ PortalForum\...\...\theme\images\ R-gramma.png. Ωζηφζν φηαλ πξνγξακκαηίδνπκε, δελ είλαη δπλαηφ λα γξάθνπκε φιε απηή ηε δηαδξνκή αιιά νχηε είλαη θαη εχρξεζην λα ππάξρεη. Γηα απηφ κε ηε δηαδηθαζία T_THEME_PATH αλαθεξφκαζηε απεπζείαο ζε κηα δηαδξνκή, ζην θάθειν theme θαη ζπλερίδνπκε απφ εθεί. Δπνκέλσο κε ηε ρξήζε ηνπ ="δηαδηθαζία" αλαθεξφκαζηε ζε κηα ζπγθεθξηκέλε δηαδξνκή ε ιεηηνπξγία εληφο ε εθηφο βάζεο δεδνκέλσλ. Εικόνα 32 Dreamweaver, Customization Overall_header.html Πάνω Frame εφαρμογισ 85

86 O θψδηθαο ρσξίο ηα tags αξρήο θαη ηέινπο θαη νη ινηπέο βηβιηνζήθεο πνπ θνξηψλνληαη γηα ην αξρείν overall_header.html είλαη ν παξαθάησ. Κώδηθαο overall_header.html <a name="top"></a> <a name="wrap"></a> <a name="wrap"></a> <table class="wrap" width="100%" cellpadding="0" cellspacing="0"> <td> <td width="18" height="18"><div align="left"><img src="t_theme_path/images/icons_letters/papia.png" alt="" width="48" height="41" border="0" /></a></div></td> <td width="18" height="18"><div align="left"><img src="t_theme_path/images/icons_letters/rgramma.png" alt="" width="48" height="41" border="0" /></a></div></td> <td width="18" height="18"><div align="left"><img src="t_theme_path/images/icons_letters/ogramma.png" alt="" width="48" height="41" border="0" /></a></div></td> <td width="18" height="18"><div align="left"><img src="t_theme_path/images/icons_letters/ugramma.png" alt="" width="48" height="41" border="0" /></a></div></td> <td width="18" height="18"><div align="left"><img src="t_theme_path/images/icons_letters/sgramma.png" alt="" width="48" height="41" border="0" /></a></div></td> <td width="18" height="18"><div align="left"><img src="t_theme_path/images/icons_letters/sgramma.png" alt="" width="48" height="41" border="0" /></a></div></td> <td width="18" height="18"><div align="left"><img src="t_theme_path/images/icons_letters/ogramma.png" alt="" width="48" height="41" border="0" /></a></div></td> <td width="18" height="18"><div align="left"><img src="t_theme_path/images/icons_letters/sgramma.png" alt="" width="48" height="41" border="0" /></a></div></td> <td width="18" height="18"><div align="left"><img src="t_theme_path/images/icons_letters/papia2flip.png" alt="" width="48" height="41" border="0" align="left" /></a></div></td> <td width="18" height="18" align="right"><div align="right"><a href=" src="t_theme_path/images/facebook_cloud.png" alt="" width="35" height="30" border="2" /></a></div></td> <td width="18" height="18"><div align="right"><a href=" src="t_theme_path/images/youtube_cloud.png" alt="" width="35" height="30" border="2" /></a></div></td> <div id="wrapheader"> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <td width="18" height="18"><img src="t_theme_path/images/tl.png" width="18" height="18" alt="" /></td> <td height="18" style="background:url('t_theme_path/images/tm.png');"></td> <td width="18" height="18"><img src="t_theme_path/images/tr.png" width="18" height="18" alt="" /></td> <td width="18" style="background:url('t_theme_path/images/ml.png');"></td> <td> <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" style="background:url('t_theme_path/images/logoforumabsoloutpanoramic1.png');"> <td height="250"><div class="logo"><br /> <span class="genmedw"></span></div></td> <td width="600" height="250" align="right" valign="top"> <!-- IF S_DISPLAY_SEARCH and not S_IN_SEARCH --> 86

87 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ <div class="midlink"> <br><br><br><br><br><br> <div id="search-box"> <form action="u_search" method="post" id="search"> <fieldset class="nb"> <input name="keywords" style="opacity:0.8;filter:alpha(opacity=80)" onmouseover="this.style.opacity=1;this.filters.alpha.opacity=100" onmouseout="this.style.opacity=0.8;this.filters.alpha.opacity=80" type="text" class="inputbox search" id="keywords" title="l_search_keywords" onblur="if(this.value=='')this.value='la_search_mini';" onclick="if(this.value=='la_search_mini')this.value='';" value="<!-- IF SEARCH_WORDS-- >SEARCH_WORDS<!-- ELSE -->L_SEARCH_MINI" maxlength="50" /> <input class="nb" name="submit" type="image" src="t_theme_path/images/search.png" align="absmiddle" /><br /> <a class="genmedw" href="u_search" title="l_search_adv_explain">l_search_adv</a> S_SEARCH_HIDDEN_FIELDS </fieldset> </form> </div> </div> </td> </table> <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0"> <td height="24" align="left" style="background:url('t_theme_path/images/bottomm.png');"> <div class="buttonwrapper"> <div class="navspacel"></div> <!-- IF S_USER_LOGGED_IN --> <!-- ELSEIF S_REGISTER_ENABLED --> <div style="float: left;"><img src="t_theme_path/images/icons_letters/click_register.png" alt="" width="34" height="28"></div> <a class="squarebutton" style="color: #66CCCC;" href="u_register">l_register</a> <div class="navspacel"></div> <!-- IF S_USER_LOGGED_IN --> <a class="squarebuttonl" href="u_profile"><span>l_profile</span></a><div class="navspacel"></div> <!-- IF S_DISPLAY_PM --> <a class="squarebuttonl" href="u_privatemsgs"><span>private_message_info</span></a><div class="navspacel"></div> <!-- IF U_RESTORE_PERMISSIONS --> <a class="squarebuttonl" href="u_restore_permissions"><span>l_restore_permissions</span></a> </div></td> <td width="431" height="24" align="right" style="background:url('t_theme_path/images/bottomr.png');"> <div class="buttonwrapper"> <div class="navspacer"></div> <!-- IF not S_IS_BOT --> <a class="squarebuttonr" href="u_login_logout"><span>l_login_logout</span></a><div class="navspacer"></div> <!-- IF S_DISPLAY_MEMBERLIST --> <a class="squarebuttonr" href="u_memberlist"><span>l_memberlist</span></a><div class="navspacer"></div> 87

88 <a class="squarebuttonr" href="u_faq"><span>l_faq</span></a></div></td> </table></td> <td width="18" style="background:url('t_theme_path/images/mr.png');"></td> <td width="18" height="18" align="right"><img src="t_theme_path/images/bl.png" width="18" height="18" alt="" /></td> <td height="18" style="background:url('t_theme_path/images/bm.png');"></td> <td width="18" height="18"><img src="t_theme_path/images/br.png" width="18" height="18" alt="" /></td> </table> </div> <table width="100%" cellspacing="0"> <td class="navbar"> <!-- INCLUDE adxmenu.html --> </td> // εδψ εηζάγσ ην menu κε ηα εθέ,λα ην ζπκάκαη. </table> </div> <div id="datebar"> <table width="100%" cellspacing="0"> <!-- IF S_BOARD_DISABLED --> <td class="gensmall"> <span class="error">l_board_disabled</span> </td> <td class="gensmall"><!-- IF S_USER_LOGGED_IN -- >LAST_VISIT_DATE</td> <td class="gensmall" align="s_content_flow_end">current_time<br /></td> </table> </div> overall_header.html Αο εμεγήζνπκε κεξηθά ηκήκαηα θψδηθα θαζψο δελ είλαη δπλαηφ λα εμεγήζνπκε ηνλ θάζε θψδηθα αλαιπηηθά. [2a,7a,3b] Με ην <div id="search-box"><form action="u_search" method="post" id="search">, <input class="nb" name="submit" type="image" src="t_theme_path/images/search.png" align="absmiddle" /><br /> πξνζζέζακε έλα πεδίν κε φλνκα search-box θαη ζα ππαθνχεη κε ηε κέζνδν post ζηε δηαδηθαζία U_SEARCH ε νπνία πξάηηεη έιεγρν αλαδήηεζεο γηα λα εθθέξεη απνηειέζκαηα κέζσ ηνπ θψδηθα PhP πνπ βξίζθεηαη ζε έλα άιιν αξρείν ην νπνίν επηθνηλσλεί κε ηελ βάζε δεδνκέλσλ καο. Δπίζεο δεκηνπξγήζακε ην textfield ζην νπνίν ζα κπνξνπλ λα γξάθνληαη νη ιέμεηο πξνο αλαδήηεζε. Δηθφλα 33 88

89 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Εικόνα 33 Dreamweaver, Customization Overall_header.html Textfield Αναηιτθςθσ Οξίδνπκε ην πιήζνο ησλ ραξαρηήξσλ πνπ ζέινπκε λα δέρεηαη ην textfield καο. Οξίδνπκε ηνλ ηχπν, πνπ ζηε ζπγθεθξηκέλε πεξίπησζε είλαη single line θαη ζεκαίλεη φηη ην πεξηερφκελν ηνπ πεδίνπ ζα εκθαλίδεηαη ζε κηα ζεηξά κφλν. Με ην multi line πεηπραίλνπκε λα ην πεξηερφκελν λα αλαδηπιψλεηαη θαη ην πεδίν λα κεγαιψλεη, ελψ κε ην password πεηπραίλνπκε λα απνθξχπηνπκε ην πεξηερφκελν κε κηα κάζθα ηνπ ηχπνπ ******* ιφγσ ησλ επαίζζεησλ πιεξνθνξηψλ πνπ πιεθηξνινγνχληαη. (Έηζη πεηχρακε θαη ην πεδίν εηζαγσγήο ζηνηρείσλ Όλνκα ρξήζε & Κσδηθφο θαηά ηελ χλδεζε ηνπ ρξήζηε) Με ην U_LOGIN_LOGOUT αλαθεξφκαζηε ζε κηα δηαδηθαζία θαηά ηελ νπνία ειέγρεηαη αλ ν ρξήζηεο είλαη ζπλδεδεκέλνο σο κέινο ε φρη. ε θάζε πεξίπησζε εκθαλίδεηαη ην απνηέιεζκα ηνπ ζπγθεθξηκέλνπ ειέγρνπ. Με ην LAST_VISIT_DATE αλαθεξφκαζηε ζε κηα δηαδηθαζία θαηά ηελ νπνία ειέγρνληαη ηα ζηνηρεία ηεο ηειεπηαίαο επίζθεςεο πνπ έθαλε ν ρξήζηεο ζηελ εθαξκνγή Με ην CURRENT_TIME δεηάκε απφ ην ζχζηεκα ηελ ηξέρνπζα ψξα Με ην FAQ δεηάκε ηε δηαδηθαζία ζχλδεζεο κε έλα αξρείν φπνπ πεξηέρνληαη νη έηνηκεο ζπρλέο εξσηήζεηο θαη απαληήζεηο πνπ κπνξεί λα θάλεη θάπνην κέινο Με ην MEMBERLIST δεηάκε ηε δηαδηθαζία ζχλδεζεο κε έλα αξρείν PhP πνπ ζα επηθνηλσλήζεη κε ηε βάζε θαη ζα δψζεη εληνιή λα εκθαλίζεη ηα κέιε ηεο εθαξκνγήο εάλ ην επηιέμεη ν ρξήζηεο. Με ην INCLUDE adxmenu.html νξίδνπκε λα θνξησζεί - ελζσκαησζεί κέζα ζην overall_header έλαο μερσξηζηφο θψδηθαο. (Σνλ έρσ βξεη θαη θαηεβάζεη απφ ην ηληεξλέη θαη είλαη έλα κελνχ γξακκέλν ζε δχν μερσξηζηά αξρεία html θαη java script. Έηζη γίλεηαη αληηιεπηφ φηη κπνξνχκε λα εηζάγνπκε νηηδήπνηε ζέινπκε ζε γιψζζα ζηελ νπνία «αθνχεη» ε εθαξκνγήο καο) Όιεο απηέο νη δηαδηθαζίεο παξακεηξνπνηήζεθαλ ψζηε λα εθθέξνπλ απνηειέζκαηα ζηα ειιεληθά θαη ζχκθσλα κε ηηο αλάγθεο ηεο εθαξκνγήο. 89

90 Σν απνηέιεζκα ηνπ θψδηθα overall_header ζε ζπλδπαζκφ κε to adxmenu.html είλαη ε Δηθφλα 34 (Όιεο νη εηθφλεο πνπ ρξεζηκνπνηνχληαη βξίζθνληαη κέζα ζην θάθειν theme/images) Εικόνα 34 Overall_header.html Πάνω Frame εφαρμογισ Αθνχ δεκηνπξγήζακε ην πάλσ frame overall_header.html, ζπλερίδνπκε κε ην κεζαίν frame ην νπνίν φπσο είπακε κπνξεί λα είλαη νηηδήπνηε ζέινπκε εκείο. Μπνξνχκε ζηε ζπγθεθξηκέλε πεξίπησζε λα νξίζνπκε λα είλαη ην αξρείν oroi.html. Σν ηειηθφ απνηέιεζκα ζα δνζεί παξαθάησ. Οπφηε ζπλερίδνπκε κε ην πξφζζεην frame ην jumpbox.html γηα ην νπνίν αλαθέξακε ηελ ιεηηνπξγία ηνπ. Εικόνα 35 Dreamweaver, Customization jumpbox.html Πρόςκετο Frame εφαρμογισ 90

91 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Κώδηθαο jumpbox.html <!-- IF S_DISPLAY_JUMPBOX --> <form method="post" name="jumpbox" action="s_jumpbox_action" onsubmit="if(document.jumpbox.f.value == -1)return false;"> <table cellspacing="0" cellpadding="0" border="0"> <!-- BEGIN jumpbox_forums --> <!-- IF jumpbox_forums.s_forum_count eq 1 --> <option value="-1"> </option> <option value="jumpbox_forums.forum_id" selected="selected"jumpbox_forums.selected><!-- BEGIN level --> <!-- END level - ->jump box_forums.forum_name</option> <!-- END jumpbox_forums --> </select> <input class="btnlite" type="submit" value="l_go" /></td> </table> </form> Jumpbox.html Σν απνηέιεζκα ηνπ θψδηθα Jumpbox.html είλαη ε Δηθφλα 36 Εικόνα 36 jumpbox.html Πρόςκετο Frame εφαρμογισ Με ην jumpbox_forums.s_forum_count eq 1 θαη ην <option value="-1"> </option> ξπζκίδνπκε ην jumpbox λα παξεη κηα πξψηε ηηκή σο επηινγή «νη παχιεο» πξνθεηκέλνπ λα κελ δείρλεη θάπνην θελφ αιιά κηα πιεξνθνξία ψζηε λα ιεηηνπξγεί θαη ε γξακκή θχιηζεο. Με ην L_GO ελλννχκε ηε ιέμε κεηάβαζε πνπ ζηνλ θψδηθα δελ θαίλεηαη, φκσο θάλεηε ε δεζκεπκέλε ιέμε πνπ θαιεί κηα δηαδηθαζία αλαπαξάζηαζεο γιψζζαο πνπ βξίζθεηαη ζε έλα αξρείν γιψζζαο. Δθεί νξίδνπκε θαη ζπκβνιίδνπκε φιεο ηηο ειιεληθέο ιέμεηο πνπ αλαπαξηζηνχλ θάπνηεο δηαδηθαζίεο. Αθνχ δεκηνπξγήζακε ην πξφζζεην frame jumpbox.html, αλ επηζπκνχκε ην πξνζζέηνπκε - θνξηψλνπκε κε ηνλ θψδηθα INCLUDE adxmenu.html θαη ζε άιια αξρεία. πλερίδνπκε 91

92 κε ην θάησ θαη ηειεπηαίν frame ην overall_footer.html ην νπνίν ζα ζα εκθαλίδεηαη ζπλέρεηα φπσο κε ην πάλσ frame ην overall_header.html. Εικόνα 37 Dreamweaver, Customization Overall_footer.html Κάτω Frame εφαρμογισ Κώδηθαο overall_footer.html <style type="text/css"> <!--.style1 color: #0066CC; font-weight: bold;.style4 font-size: 18px --> </style> <br clear="all" /> <div id="footer"> <br /> // Πεξίπησζε Γηαθνξεηηθήο Κσδηθνπνίεζεο. Τπνζηεξίδεη ζίγνπξα UTF-8. Δδψ Δηζάγσ ην Copyright // To translation info είλαη κία θξάζε θαη κία εηθφλα (ππνγξαθή κνπ) ηελ νπνία ηελ φξηζα λα θνξηψλεηαη απφ έλα εμσηεξηθφ αξρείν //Όπσο θαίλεηαη θαη πην πάλσ ζηελ εηθφλα ζην πεξηβάιινλ ηνπ Dreamweaver έρνπκε ηνπνζεηήζεη φια //απηά ηα ζηνηρεία πνπ ζρεηίδνληαη κε ηα πλεπκαηηθά δηθαηψκαηα θαζψο θαη ηηο ππνγξαθέο απηψλ πνπ //έρνπλ ζπκβάιεη, κέζα ζε έλαλ πίλαθα βάζε css ψζηε λα είλαη ζηε ζσζηή ζέζε πάληα. <span class="copyright"><strong>α.τ.ε.ι ΚΑΣΤΟΡΙΑΣ <span class="style4"> </span> 2010, ALL RIGHTS RESERVED </strong><br /> Powered by <span class="style1">roussos Giorgos. </span>& PhPBB <!-- IF TRANSLATION_INFO --><br /> TRANSLATION_INFO </span></div> </td> </table> <br clear="all" /> <div style="display:none" id="resizemod"></div> </body> </html> 92

93 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Σν απνηέιεζκα ηνπ θψδηθα είλαη: Εικόνα 38 Overall_footer.html Κάτω Frame εφαρμογισ Με ην overall_footer.html σο ηειεπηαίν frame νινθιεξψζεθε φιε ε δηαδηθαζία αλάπηπμεο ησλ μερσξηζηψλ frame. Σν εξψηεκα πνπ πξνθχπηεη ηψξα είλαη πσο ζα κπνξνχκε φια απηά λα ηα βιέπνπκε καδί σο κηα ζειίδα. Αξρηθά αζρνινχκαζηε κε ην κεζαίν frame, θαη χζηεξα πξνζζέηνπκε πάλσ θαη θάησ ηνλ θαηάιιειν θψδηθα θφξησζεο εμσηεξηθνχ θψδηθα. Απηφ επηηπγράλεηαη κε ην include φπσο είπακε θαη πξσηχηεξα. Η δνκή ηνπ θψδηθα ζα είλαη ε εμήο. Αλνίγνπκε ην αξρείν oroi.html ην νπνίν ζα είλαη ην κεζαίν frame, έπεηηα 1) γξάθνπκε πξψηα αθξηβψο πάλσ ηνλ θψδηθα <!-- INCLUDE overall_header.html --> ην νπνίν ζα είλαη ην πξψην frame 2) αθξηβψο απφ θάησ έρνπκε ήδε ηνλ θψδηθα ηνπ oroi.html ην νπνίν είλαη ην κεζαίν frame 3) γξάθνπκε ηνλ θψδηθα <!-- INCLUDE jumpbox.html --> πνπ είλαη ην ηξίην frame 4) <!-- INCLUDE overall_footer.html --> πνπ είλαη ην ηέηαξην θαη ηειεπηαίν frame. Με απηφ ηνλ ηξφπν δελ έρνπκε πνιιέο γξακκέο θψδηθα ζηα αξρεία καο, αληίζεηα θνξηψλνπκε φηη αξρεία ζέινπκε κφλν κε ζεηξά θψδηθα. Απφ πξνγξακκαηηζηηθή άπνςε θαη ζε απηή ηελ εξγαζία αιιά θαη ζε θάζε εξγαζία απηφ βνεζάεη πνιχ, ελψ γίλεηαη ην πξφγξακκα εχρξεζην θαη πην αζθαιέο αθνχ δελ επεκβαίλνπκε άκεζα ζηνλ θψδηθα ηνπ αξρείνπ άιια έκκεζα. 1) <!-- INCLUDE overall_header.html --> 2)<h2>Όξνη Υξήζεο</h2> <div class="panel"> <div class="inner"><span class="corners-top"><span></span></span> <div class="content"> <p> Δδψ Βάδνπκε φινο ην πεξηερφκελν ησλ φξσλ πνπ ζέινπκε λα δηαβάδεη ν ρξήζηεο κε ηελ είζνδφ ηνπ ζην Portal & Forum. </p> </div> <span class="corners-bottom"><span></span></span></div> </div> </body> </html> 3) <!-- INCLUDE jumpbox.html --> 4)<!-- INCLUDE overall_footer.html --> Η δνκή ηνπ παξαπάλσ θψδηθα χζηεξα απφ ηελ εθηέιεζε ηνπ απφ ηνλ Web Browser ζα έρεη σο απνηέιεζκα ηελ Δηθφλα 39 93

94 Εικόνα 39 φνκεςθ και δόμθςθ ςελίδασ.html με frames Παξαηεξνχκε αξρηθά ην πξψην frame ην νπνίν είλαη ην overall_header.html θαη βξίζθεηαη ζην πάλσ κέξνο ηεο Δηθφλαο 39, ην δεχηεξν frame ην oroi.html ην νπνίν είλαη ζην κέζν ηεο εηθφλαο, ην ηξίην frame ην searchbox.html ην νπνίν είλαη θάησ δεμηά ζηελ εηθφλα, θαη ην ηέηαξην frame ην overall_footer.html ην νπνίν βξίζθεηαη ζην ηέινο ηεο εηθφλαο. πλνςίδνληαο, κε ηελ βνήζεηα μερσξηζηψλ κεκνλσκέλσλ αξρείσλ.html πνπ απνηεινχλ ηα frames,κπνξέζακε θαη αλαπηχμακε έλα άιιν έλα άιιν.html αξρείν ην νπνίν είλαη ε ζχλζεζε ησλ frames. Υσξίο λα ζπαηαινχκε ρξφλν, λνπ θαη γξακκέο θψδηθα γηα απηά πνπ ήδε έρνπκε δεκηνπξγήζεη, αιιά θαιψληαο ηε δηέπζπλζε ζηελ νπνία βξίζθεηαη πεξηερφκελν ελφο αξρείνπ.html, δειαδή ηνλ θψδηθά ηνπ, πξνθχπηεη ε δπλαηφηεηα απηή, ηεο επαλαρξεζηκνπνίεζεο θψδηθα ηελ νπνία θαη ρξεζηκνπνηνχκε ζε φιε ηελ εθαξκνγή. Μ απηφ ηνλ ηξφπν ινηπφλ έγηλε θάλακε development & customization ηεο εθαξκνγήο ζε επίπεδν παξνπζίαζεο. ηε ζπλέρεηα εμεηάδεηαη ε ρξήζε ηεο εθαξκνγήο. 94

95 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Υξήζε Δθαξκνγήο User Interface (UI) Οη ρξήζηεο ηεο εθαξκνγήο Portal & Forum φηαλ ζα έρνπλ πξφζβαζε ζε απηή κέζσ ην δηαδηθηχνπ, (ζηε ζπγθεθξηκέλε PORTAL πεξίπησζε εξγαδφκαζηε κέζσ localhost φπσο αλαθέξακε ζηα πξνεγνχκελα θεθάιαηα), ζα έρνπλ ηε δπλαηφηεηα ηεο πξψηεο επαθήο κε ηελ αξρηθή ζειίδα ε νπνία νλνκάδεηαη Portal. Απφ απηφ ην ζεκείν εηζφδνπ ν ρξήζηεο έρεη ηελ δπλαηφηεηα λα κεηαθέξεηαη ζε έλα άιιν ζεκείν ηεο εθαξκνγήο, ην Forum, θαζψο θαη λα έρεη ζηε δηάζεζή ηνπ δηάθνξεο ιεηηνπξγίεο πξνο φθειφο ηνπ. Εικόνα 40 Portal,Αρχικι ελίδα Εφαρμογισ (UI) 95

96 Ο ρξήζηεο γηα λα έρεη πξφζβαζε ζηηο ππεξεζίεο (Forum, PORTAL δηαθεκίζεηο, άξζξα, downloads) ηνπ Portal & Forum ζα πξέπεη λα είλαη εγγεγξακκέλνο ρξήζηεο-κέινο. Γηα λα εγγξαθεί σο κέινο πξέπεη λα παηήζεη ζην πεδίν Δγγξαθή «Δγγξαθή», ην νπνίν είλαη ηνπνζεηεκέλν ζε ηξία κέξε ψζηε λα κπνξεί λα ην παξαηεξήζεη ν ρξήζηεο θαηά ηελ είζνδφ ηνπ ζηελ εθαξκνγή. Δίλαη έλα ππνρξεσηηθφ βήκα γηα απηφλ πνπ ζέιεη λα έρεη νιηθή πξφζβαζε ζηελ εθαξκνγή θαη ζπλάκα πξνλφκηα πνπ θάπνηνο επηζθέπηεο δελ ηα έρεη φπσο ην λα δεκνζηεχεη άξζξα, αξρεία, δεκνζηεχζεηο θ.η.ι. Γηα λα εγγξαθηεί θάπνην κέινο ζα πξέπεη λα ζπκθσλήζεη πξψηα κε ηνπο φξνπο ρξήζεο ηνπο νπνίνπο έρσ ζπγγξάςεη γηα ηελ εθαξκνγή. ε αληίζεηε πεξίπησζε δελ γίλεηαη κέινο θαη δξνκνινγείηαη ζηελ αξρηθή ζειίδα. Εικόνα 41 Portal,Σμιμα Εγγραφισ Χριςτθ 96

97 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Πξηλ ππνβάιεη θάπνηνο ζην ζχζηεκα ηελ αίηεζή ηνπ γηα εγγξαθή, πξέπεη λα ζπκπιεξψζεη θάπνηα ππνρξεσηηθά πεδία κε πξνζσπηθά ηνπ ζηνηρεία, αιιά θαη θάπνηα ζηνηρεία ηα νπνία ζα ηα γλσξίδεη κφλν ην ζχζηεκα. Σα ζηνηρεία απηά είλαη : Όλνκα κέινπο Σν κήθνο πξέπεη λα είλαη απφ 3 κέρξη 20 ραξαθηήξεο. Καιφ είλαη ηα κέιε λα έρνπλ έλα φλνκα κέινπο ην νπνίν ζα ηνπο ραξαθηεξίδεη, φκσο απηφ δελ είλαη ππνρξεσηηθφ, έηζη ν θαζέλαο κπνξεί λα επηιέμεη φηη φλνκα κέινπο ζέιεη. Γηεύζπλζε ειεθηξνληθνύ ηαρπδξνκείνπ Πξέπεη λα εηζαρζεί κηα έγθπξε δηεχζπλζε ψζηε λα κπνξεί λα νινθιεξσζεί ε εγγξαθή ηνπ ρξήζηε. Πξφθεηηαη λα ζηαιεί απηφκαην απφ ην ζχζηεκα ηεο εθαξκνγήο Portal & Forum ζηελ δηεχζπλζε πνπ δειψλεη ν ρξήζηεο θαη λα ηνπ δεηεζεί λα θάλεη ελεξγνπνίεζε ινγαξηαζκνχ κέζα απφ ην ινγαξηαζκφ ηνπ. ηελ πεξίπησζε πνπ επηζπκνχλ λα εγγξαθηνχλ ζηελ εθαξκνγή θαζεγεηέο πνπ αλήθνπλ ζην Σ.Δ.Ι., πξέπεη ππνρξεσηηθά λα δειψζνπλ ηε δηεχζπλζε ειεθηξνληθνχ ηαρπδξνκείνπ πνπ ηνπ παξέρεηαη απφ ην Σ.Δ.Ι., ψζηε ν Γηαρεηξηζηήο ηνπ ζπζηήκαηνο λα κπνξεί λα πηζηνπνηήζεη φηη φλησο πξφθεηηαη γηα δηδαθηηθφ πξνζσπηθφ. Δπηβεβαίσζε δηεύζπλζεο ειεθηξνληθνύ ηαρπδξνκείνπ Κσδηθόο πξόζβαζεο Έλα ζεκαληηθφ ζηνηρείν είλαη ν θσδηθφο πξφζβαζεο, ν νπνίνο απνζεθεχεηαη ζηελ βάζε δεδνκέλσλ. Ο ρξήζηεο νθείιεη λα ηνλ ζπκάηαη. Δπηβεβαίσζε θσδηθνύ πξόζβαζεο Γιώζζα Μφλν ζηελ ειιεληθή έρσ πξνγξακκαηίζεη ηελ εθαξκνγή λα ιεηηνπξγεί. Άιιεο γιψζζεο δελ ππνζηεξίδνληαη. Ωξνινγηαθή δώλε Μηα ζεκαληηθή επηινγή γηα ρξήζηεο θπξίσο θνηηεηέο νη νπνίνη εηζέξρνληαη ζην ζχζηεκα απφ ηελ Κχπξν ψζηε λα ζπκβαδίδεη ε ηνπηθή ηνπο ψξα κε ην ξνιφη ηνπ ζπζηήκαηνο ηεο εθαξκνγήο Ιδηόηεηα Μέινπο Δδψ επηιέγεη ν ρξήζηεο ηελ ηδηφηεηα ηνπ, σο θνηηεηήο / θαζεγεηήο / Μέινο Δθηφο Σ.Δ.Ι. Καζηνξηάο 97

98 ρνιή-σκήκα πνπδώλ Ο ρξήζηεο εθφζνλ έρεη επηιέμεη ηελ ηδηφηεηά ηνπ, θαιείηαη λα ζπκπιεξψζεη θαη ηε ζρνιή-ηκήκα ζην νπνίν αλήθεη αλάκεζα απφ ηηο ηέζζεξηο επηινγέο πνπ ηνπ δίλεη ην ζχζηεκα. o Σ.Δ.Ι. Καζηνξηάο - Σκήκα Πιεξνθνξηθήο Καη Σερλνινγίαο Τπνινγηζηψλ o Σ.Δ.Ι. Καζηνξηάο - Σκήκα Γηεζλνχο Δκπνξίνπ o Σ.Δ.Ι. Καζηνξηάο - Σκήκα Γεκνζίσλ ρέζεσλ Καη Δπηθνηλσλίαο o Άιιε Σξηηνβάζκηα ρνιή Σεο Διιάδαο Έηνο Δηζαγσγήο Κώδηθαο Δπηβεβαίσζεο: Γηα ηελ απνθπγή απηφκαησλ εγγξαθψλ ε εθαξκνγή απαηηεί λα εηζάγεη ν ρξήζηεο θαη έλαλ θσδηθφ επηβεβαίσζεο. Ο θσδηθφο απηφο εκθαλίδεηαη σο εηθφλα. Η κέζνδνο απηή νλνκάδεηαη CAPTCHA ην νπνίν είλαη έλα ηεζη ζρεδηαζκέλν κε PhP script πνπ ρξεζηκνπνηείηαη ζηα πξνγξάκκαηα δηαδηθηχνπ γηα λα ειέγμεη ην ζχζηεκα αλ ν ρξήζηεο είλαη άλζξσπνο ή bot. Παηψληαο ζην button ππνβνιή, ν ρξήζηεο ππνβάιεη αίηεζε ζην ζχζηεκα γηα εγγξαθή σο κέινο. Απηή ζα εγθξηζεί απφ ηνλ δηαρεηξηζηή θαη ζα ειεγρηεί πξνηνχ ν ρξήζηεο νξηζηεί σο κέινο. Δπίζεο φπσο είπακε ζηέιλεηαη απηφκαην απφ ην ζχζηεκα ηεο εθαξκνγήο Portal & Forum ζηελ δηεχζπλζε πνπ δειψλεη ν ρξήζηεο θαη απφ εθεί νινθιεξψλεη ηελ εγγξαθή ηνπ, κέζσ ελεξγνπνίεζεο ινγαξηαζκνχ. Η ελεξγνπνίεζε ινγαξηαζκνχ είλαη κηα δηαδηθαζίαο φπνπ πηζηνπνηείηαη φηη φληνο ν ρξήζηεο έρεη ππφ ηελ θαηνρή ηνπ ηελ δηεχζπλζε ειεθηξνληθνχ ηαρπδξνκείνπ πνπ έρεη δειψζεη ζην ζχζηεκα. Δγγξαθή PORTAL ύλδεζε Αθνχ νινθιεξψζεη ν ρξήζηεο ηελ εγγξαθή ηνπ θαη εγθξηζεί απφ ηνλ Γηαρεηξηζηή, έπεηηα ζα πξέπεη λα θάλεη «χλδεζε» ψζηε λα απνθηήζεη ηελ πξφζβαζή ηνπ ζην ζχζηεκα σο κέινο. Γηα λα επηηεπρζεί απηφ, πξέπεη λα εηζάγεη ην φλνκα ρξήζηε θαζψο θαη ηνλ θσδηθφ πξφζβαζεο ζηα θαηάιιεια textfield θαη λα παηήζεη ην button ζχλδεζε. Σα ζηνηρεία απηά ζα ειεγρηνχλ θαη αλ φλησο ηεξνχληαη ζηε βάζε δεδνκέλσλ rgv ηφηε ν ρξήζηεο αλαγλσξίδεηαη σο κέινο. 98

99 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ PORTAL Δγγξαθή ύδεζε Forum Εικόνα 42 Portal,Σμιμα φνδεςθσ Χριςτθ Ο ρξήζηεο εθφζνλ έρεη ζπλδεζεί ζην Portal & Forum ηνπ Α.Σ.Δ.Ι Καζηνξηάο θαη αλαγλσξίδεηαη σο κέινο ηνπ, έρεη ηε δπλαηφηεηα λα ζπκκεηέρεη ζην «Forum» ζε έλα ειεθηξνληθφ ρψξν ζπδεηήζεσλ κε άιια κέιε ηνπ Α.Σ.Δ.Ι Καζηνξηάο ζρεηηθά κε ζέκαηα πνπ αθνξνχλ ηε ζρνιή θαη ηα ηεθηαηλφκελα ηεο. Σα ζέκαηα δελ είλαη ζηαζεξά, ζπλερψο απμάλνληαη θαζψο ν θάζε ρξήζηεο έρεη ηε δπλαηφηεηα επίζεο λα δεκηνπξγεί ζέκαηα ζπδεηήζεσλ αιιά θαη λα δεκνζηεχεη απαληήζεηο καδί κε ηνπο ππφινηπα κέιε. Καηά ηε εξγαζία απηή, δεκηνπξγήζεθαλ κεξηθά αξρηθά ζέκαηα ηα νπνία ηα κέιε κπνξνχλ λα ηα επεθηείλνπλ θαη λα ηα εκπινπηίζνπλ κε πεξηζζφηεξν πιηθφ (ζεκεηψζεηο, ζέκαηα εμεηαδφκελσλ καζεκάησλ, βαζκνινγίεο, δεκνςεθίζκαηα, αγγειίεο θ.η.ι.). Τπάξρνπλ ζέκαηα επίζεο, ηα νπνία είλαη πεξηνξηζκέλεο πξφζβαζεο, δειαδή απαηηνχλ θάπνην θσδηθφ εηζφδνπ ψζηε λα ζπκκεηέρεη θάπνηνο. Απηφ είλαη ρξήζηκν θπξίσο γηα ην δηδαθηηθφ πξνζσπηθφ. Δπίζεο έλα κέινο κπνξεί λα επηθνηλσλεί κε άιια κέιε ηνπ Portal & Forum φρη κφλν κέζσ δεκνζηεχζεσλ, αιιά θαη κέζσ πξνζσπηθψλ κελπκάησλ ζηηο νπνίεο δελ έρνπλ πξφζβαζε άιια κέιε εθηφο ησλ δχν κειψλ ησλ νπνίσλ δηεμάγεηαη ε ηδησηηθή ζπδήηεζε. Κάζε δξαζηεξηφηεηα κέινπο, ζέκα, δεκνζίεπζε θ.η.ι. απνζεθεχεηαη ζηελ βάζε δεδνκέλσλ ζε κνξθή MySql γιψζζαο θαη δηαηεξείηαη ζπλερψο, εθηφο αλ ν Γηαρεηξηζηήο / πληνληζηήο θξίλεη απαξαίηεην λα δηαγξαθεί θιεηδσζεί - κεηαθηλεζεί θάπνην ζέκα ζπδήηεζεο ην νπνίν παξαβηάδεη ηνπ φξνπο ρξήζεο ηεο εθαξκνγήο. Σν PhPbb open source 99

100 software πνπ ρξεζηκνπνηήζεθε γηα ηελ αλάπηπμε ηεο εθαξκνγήο δίλεη ηε δπλαηφηεηα λα θξππηνγξαθνχληαη φια απηά ηα δεδνκέλα πνπ ηεξνχληαη ζηε βάζε δεδνκέλσλ rgv. πλεπψο αλ θάπνηνο κε εμνπζηνδνηεκέλνο ρξήζηεο επηρεηξήζεη λα αλνίμεη ηε βάζε δελ ζα ππάξρεη θαλέλαο απνιχησο θίλδπλνο. ηελ παξαθάησ εηθφλα έρεη ζπλδεζεί ν ρξήζηεο RGV (RoussosGiorgosVasiliki) σο κέινο Γηαρεηξηζηήο θαη έρεη νιηθή πξφζβαζε ζηα πεξηερφκελα ηνπ Portal & Forum ηνπ Σ.Δ.Ι. Καζηνξηάο. Εικόνα 43 Portal,Σμιμα Forum 100

101 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ PORTAL Δγγξαθή ύλδεζε Forum Αλαδήηεζε Έλα άιιν ηκήκα ηεο εθαξκνγήο είλαη ε «Αλαδήηεζε». Απηή είλαη κηα δπλαηφηεηα ηεο εθαξκνγήο λα αλαδεηά ζέκαηα, δεκνζηεχζεηο, αξρεία, κέιε, θηι ηα νπνία ηεξνχληαη ζηε βάζε δεδνκέλσλ. Σα απνηειέζκαηα κηαο αλαδήηεζεο είλαη νξαηά ζε κνξθή δεδνκέλσλ html θαη φρη ζε κνξθή φπνπ θάπνηνο κπνξεί λα έρεη πξφζβαζε ζηε βάζε δεδνκέλσλ. Η ιεηηνπξγία ηεο αλαδήηεζεο ρξεζηκνπνηείηαη απφ ηα κέιε θαη βνεζάεη πνιχ ψζηε ζέκαηα πνπ έρνπλ δεκνζηεπηεί λα κε δεκνζηεχνληαη μαλά ψζηε λα απνθεχγνληαη νη δηπιφ-εγγξαθέο δηπιφ-δεκνζηεπζεηο ζηελ βάζε δεδνκέλσλ ηεο εθαξκνγήο θξηηήξηα Εικόνα 44 Portal,Σμιμα Αναηιτθςθσ 101

102 PORTAL Δγγξαθή ύλδεζε Forum Αλαδήηεζε Όξνη Υξήζεο ε απηφ ην ηκήκα ηεο εθαξκνγήο ν ρξήζηεο κπνξεί λα κεηαβεί είηε αλ παηήζεη πάλσ ζην ζχλδεζκν «Όξνη Υξήζεο» είηε κεηαβηβάδεηαη κέζσ ελφο PhP script απηφκαηα, σο ππνρξεσηηθφ βήκα γηα αλάγλσζε ησλ φξσλ ρξήζεο πξνηνχ θάλεη «Δγγξαθή» ε πξνεγνχκελεο ζειίδεο, εμεηάζηεθε πσο αλαπηχρηεθε ην ηκήκα φξνη ρξήζεο θαζψο θαη ηε ζχλδεζή ηνπ κε άιια αξρεία html πνπ απνηεινχλ frames. Οη φξνη ρξήζεο είλαη θάπνηνη θαλνληζκνί ηνπο νπνίνπο ηνπο έρεη ζπγγξάςεη ν Γηαρεηξηζηήο (ζηελ πεξίπησζή καο ν RGV user) γηα φια ηα κέιε ψζηε λα ηνπο ηεξνχλ θαη λα ππάξρεη νκαιή ιεηηνπξγία ηεο εθαξκνγήο απφ άπνςε εζηθήο θαη θπξίσο. Εικόνα 45 Portal, Όροι Χριςθσ 102

103 Ανάπηςξη Portal & Forum για ηο Α.Σ.Ε.Ι. Καζηοπιάρ με ηη σπήζη ηηρ PHP & ΜySQL γλώζζαρ Ρούζζορ Γεώπγιορ Δγγξαθή ύλδεζε Forum Έλα άιιν ηκήκα ηεο εθαξκνγήο είλαη ην ηκήκα «Πξνζσπηθφ Απφξξεην» θαη έρεη λα θάλεη κε ηνλ ηνκέα ηεο αζθάιεηα ησλ ζηνηρείσλ ησλ ρξεζηψλ ρξεζηκνπνηνχλ εθαξκνγή,δειαδή ησλ κειψλ. Σν Portal & Forum ηνπ Σ.Δ.Ι. Καζηνξηάο ρξεζηκνπνηεί νπνηεζδήπνηε πιεξνθνξίεο πνπ ζπιιέγνληαη θαηά ηε δηάξθεηα θάζε ρξήζεο απφ ηα κέιε. Οη πιεξνθνξίεο ζαο ζπιιέγνληαη κε δχν ηξφπνπο. Πξψηνλ κε ηξία cookies, ηα νπνία είλαη κηθξά αξρεία θεηκέλνπ ηα νπνία απνζεθεχνληαη ζηα πξνζσξηλά αξρεία ηνπ πινεγνχ ηνπ ππνινγηζηή. Σα δχν cookies πεξηέρνπλ κφλνλ έλα πξνζδηνξηζηηθφ κέινπο (ζην εμήο user-id ) θαη έλαλ πξνζδηνξηζηηθφ αλψλπκεο session (ζην εμήο session-id ), πνπ εθρσξνχληαη απηφκαηα απφ ηελ εθαξκνγή. Σν ηξίην cookie ζα δεκηνπξγεζεί κφιηο έρεη πινεγεζεί έλα κέινο ζε ζέκαηα κέζα ζην Forum θαη ρξεζηκνπνηείηαη γηα λα θαηαγξάθεηαη πνηα ζέκαηα έρνπλ αλαγλσζζεί. Ο δεχηεξνο ηξφπνο κε ηνλ νπνίν ζπιιέγνληαη πιεξνθνξίεο είλαη κε βάζε ην πιηθφ πνπ ππνβάιεηαη ζηελ εθαξκνγή ( Upload Files (εκεηψζεηο θηι) ). PORTAL Αλαδήηεζ ε Όξνη Υξήζεο Πξνζσπηθό Απόξξεην πνπ ηελ Εικόνα 46 Portal, Προςωπικό Απόρρθτο 103

104 PORTAL Δγγξαθή ύλδεζε Forum Αλαδήηεζε Όξνη Υξήζεο Πξνζσπηθό Απόξξεην πρλέο Δξσηήζεηο Οη «πρλέο Δξσηήζεηο» γλσζηέο θαη σο FAQ (Frequently asked questions) πνπ ζπλήζσο ππάξρνπλ ζηηο δηάθνξεο ηζηνζειίδεο είλαη έλα ηκήκα κε έλαλ πίλαθα ζηνλ νπνίν ππάξρνπλ νη δηάθνξεο θαη ζπρλέο εξσηήζεηο πνπ πηζαλφηαηα ζα έρεη έλα κέινο ζρεηηθά κε ηελ εθαξκνγή. Γελ ζα κπνξνχζε λα παξαιεηθζεί απηή ε ιεηηνπξγία θαζψο είλαη ζαλ έλα απηνκαηνπνηεκέλν help desk. Εικόνα 47 Portal, υχνζσ Ερωτιςεισ 104

Κεθάλαιο 1. Ενόηηηα 2 Πλάνο Μάρκεηινγκ. Εξγαιεία Μάξθεηηλγθ. Dr. Andrea Grimm Dr. Astin Malschinger

Κεθάλαιο 1. Ενόηηηα 2 Πλάνο Μάρκεηινγκ. Εξγαιεία Μάξθεηηλγθ. Dr. Andrea Grimm Dr. Astin Malschinger Κεθάλαιο 1 Ενόηηηα 2 Πλάνο Μάρκεηινγκ Εξγαιεία Μάξθεηηλγθ Dr. Andrea Grimm Dr. Astin Malschinger ΠΕΡΙΕΧΟΜΕΝΑ ΕΝΟΤΗΤΑ 2 ΠΛΑΝΟ ΜΑΡΚΕΤΙΝΓΚ Κεθάιαην 1: Εξγαιεία Μάξθεηηλγθ Σπγγξαθείο: Δξ. Andrea Grimm, Δξ.

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

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

ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP ηότοι εργαζηηρίοσ ην πιαίζην ηνπ ζπγθεθξηκέλνπ εξγαζηεξίνπ ζα παξνπζηαζηνύλ βαζηθέο ιεηηνπξγίεο ησλ Windows XP πνπ ζρεηίδνληαη

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

Η αξρή ζύλδεζεο Client-Server

Η αξρή ζύλδεζεο Client-Server Η αξρή ζύλδεζεο Client-Server Δηαθνκηζηήο (Server) Πξνζθέξεη ππεξεζίεο ζηνπο Πειάηεο (Client) Μεγάινη ππνινγηζηέο γηα ηηο ππεξεζίεο Internet (π.ρ. WWW, FTP) Λακβάλεη εξσηήζεηο θαη δίδεη απαληήζεηο Πειάηεο

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

Ενδεικτικά Θέματα Στατιστικής ΙΙ

Ενδεικτικά Θέματα Στατιστικής ΙΙ Ενδεικτικά Θέματα Στατιστικής ΙΙ Θέματα. Έζησ όηη ζε δείγκα 35 θαηνηθηώλ πνπ ελνηθηάδνληαη ζε θνηηεηέο ζηελ Κνδάλε βξέζεθε ην κέζν κεληαίν κίζζσκα ζηα 5 επξώ, ελώ ζην Ζξάθιεην ην κέζν κεληαίν κίζζσκα ζε

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

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2 ΣΡΙΓΩΝΟΜΔΣΡΙΚΔ EΞΙΩΔΙ Πνηα παξαδείγκαηα εμηζώζεσλ ή θαη πξνβιεκάησλ πηζηεύεηαη όηη είλαη θαηάιιεια γηα ηελ επίιπζε ηνπο θαηά ηελ δηάξθεηα ηεο δηδαθηηθήο δηαδηθαζίαο κέζα ζηελ ηάμε; 1 ε ΓΙΓΑΚΣΙΚΗ ΩΡΑ Α.

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

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

Α.Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ σελ. 1 Α.Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΔΙΑΧΕΙΡΙΣΗ ΧΡΗΣΤΩΝ ΔΙΚΤΥΟΥ ΜΕΣΩ ΙΣΤΟΣΕΛΙΔΑΣ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ ΤΣΕΤΣΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΣΠΟΥΔΑΣΤΕΣ ΣΑΡΗΜΑΝΩΛΗΣ ΧΡΗΣΤΟΣ ΚΟΡΚΟΥ ΕΥΑΓΓΕΛΙΑ

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

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14 .1.10 ζκήζεις ζτ.βιβλίοσ ζελίδας 13 14 Ερωηήζεις Καηανόηζης 1. ύν δηαθνξεηηθέο επζείεο κπνξεί λα έρνπλ θαλέλα θνηλό ζεκείν Έλα θνηλό ζεκείν i ύν θνηλά ζεκεία iλ) Άπεηξα θνηλά ζεκεία ηηηνινγήζηε ηελ απάληεζε

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

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ Αιγόξηζκνη 2.2.7.4 Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ Εηζαγσγή ζηηο Αξρέο ηεο Επηζηήκεο ησλ Η/Υ 1 Άζθεζε 34 ζει 53 Έλα ςεθηαθό θσηνγξαθηθό άικπνπκ έρεη απνζεθεπηηθό ρώξν N Mbytes. Να αλαπηύμεηε

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

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ Φξεζηκόηεηα καζεκαηηθώλ Αξρή θαηακέηξεζεο Όζα έδσζαλ νη Έιιελεο... Τξίγσλνη αξηζκνί Τεηξάγσλνη αξηζκνί Δπηκήθεηο αξηζκνί Πξώηνη αξηζκνί Αξηζκνί κε μερσξηζηέο ηδηόηεηεο Γίδπκνη πξώηνη

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

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν 2011-12

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν 2011-12 Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν 11-12 Project 6: Ταμίδη κε ηε Μεραλή ηνπ Φξόλνπ Υπεύζπλνη Καζεγεηέο: Ε. Μπηιαλάθε Φ. Αλησλάηνο Δρώηηζη 3: Πνηα από ηα παξαθάησ ΜΜΕ ηεξαξρείηε από πιεπξάο ζεκαζίαο;

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

1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird

1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird 1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird 1.1 Εγκαηάζηαζη ηυν οδηγών ηηρ έξςπνηρ κάπηαρ ζηο λογιζμικό Mozilla Thunderbird

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

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ 2015-2016

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ 2015-2016 Βάσεις Δεδομέμωμ Εξγαζηήξην V Τκήκα Πιεξνθνξηθήο ΑΠΘ 2015-2016 2 Σκοπός του 5 ου εργαστηρίου Σθνπόο απηνύ ηνπ εξγαζηεξίνπ είλαη: ε κειέηε ζύλζεησλ εξσηεκάησλ ζύλδεζεο ζε δύν ή πεξηζζόηεξεο ζρέζεηο ε κειέηε

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

Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots)

Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots) Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots) 1.1 Σςνοπτική Πεπιγπαυή Hot Spots Σα ζεκεία αζύξκαηεο πξόζβαζεο πνπ επηιέρζεθαλ αλαθέξνληαη ζηνλ επόκελν πίλαθα θαη παξνπζηάδνληαη αλαιπηηθά ζηηο επόκελεο παξαγξάθνπο.

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

TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΠΡΟΑΡΜΟΓΗ: ΒΑΛΚΑΝΙΩΣΗ ΔΗΜ. ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 TOOLBOOK ΜΑΘΗΜΑ 2

TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΠΡΟΑΡΜΟΓΗ: ΒΑΛΚΑΝΙΩΣΗ ΔΗΜ. ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 TOOLBOOK ΜΑΘΗΜΑ 2 TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 Δημιουργία σελίδων και βιβλίων Έλα θαηλνύξην βηβιίν πεξηέρεη κία άδεηα ζειίδα κε έλα άδεην background. Δελ κπνξνύκε λα μερσξίζνπκε

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

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress.

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress. Αιγόξηζκνη 2.2.7.3 Γνκή επηινγήο Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ 1 Πνιιαπιή Δληνιή Δπηινγήο Αν ζπλζήθε_1 ηόηε εληνιέο_1 αλλιώς_αν ζπλζήθε_2 ηόηε εληνιέο_2...

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

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) 30.04.67 FritzBox Fon WLAN 7140 - Annex B (30.04.67)

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) 30.04.67 FritzBox Fon WLAN 7140 - Annex B (30.04.67) Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) 30.04.67 FritzBox Fon WLAN 7140 - Annex B (30.04.67) Γηα λα επαλαθέξεηε ην FritzBox Fon WLAN 7140 ζηηο πξνεπηιεγκέλεο ηνπ ξπζκίζεηο

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

Α Ο Κ Η Α Μ Α Ζ Η Η Ρ Η ( S E A R C H )

Α Ο Κ Η Α Μ Α Ζ Η Η Ρ Η ( S E A R C H ) Ξ G O O G L E S C H O L A R Α Ο Ξ Ε Κ Ε Θ Λ Θ Α Λ Η Τ Α Μ Η Α Μ Α Ζ Η Η Ρ Η Ρ Οξαγκαηνπνηώληαο αλαδήηεζε ζην GoogleScholar (http://scholar.google.com/) ν ρξήζηεο κπνξεί λα εληνπίζεη πιηθό αθαδεκαϊθνύ θαη

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

Case Study. Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report.

Case Study. Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report. Case Study Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report. Βήκα 1 ο : Login ζηο Turnitin. Κάλεηε είζνδν ζην Turnitin κε

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

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ. Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ. Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο 1 ε Δξαζηεξηόηεηα Αλνίμηε ην αξρείν «Μεηαηόπηζε παξαβνιήο.ggb». Με ηε καύξε γξακκή παξηζηάλεηαη ε γξαθηθή παξάζηαζε ηεο f(x)=αx 2 πνπ ζα ηελ

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

ΕΝΤΟΛΕΣ WINDOWS ΚΑΙ UNIX

ΕΝΤΟΛΕΣ WINDOWS ΚΑΙ UNIX ΕΝΤΟΛΕΣ WINDOWS ΚΑΙ UNIX Σηότοι εργαζηηρίοσ Σην πιαίζην ηνπ ζπγθεθξηκέλνπ εξγαζηεξίνπ, νη θνηηεηέο ζα εμνηθεησζνύλ κε βαζηθέο εληνιέο δηθηπαθώλ πξσηνθόιισλ νη νπνίεο βξίζθνπλ εθαξκνγή ζε πεξηβάιινληα Windows

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

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο :

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο : ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ Ον/μο:.. Γ Λσκείοσ Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη. 11-1-11 Εήηημα 1 ο : Α. Γηα ηελ ζπλάξηεζε f, λα βξείηε ην δηάζηεκα ζην νπνίν είλαη παξαγσγίζηκε θαζώο θαη

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

Οργάνωση και Δομή Παρουσιάσεων

Οργάνωση και Δομή Παρουσιάσεων Οργάνωση και Δομή Παρουσιάσεων Οη παξνπζηάζεηο κε βνήζεηα ηνπ ππνινγηζηή γίλνληαη κε πξνγξάκκαηα παξνπζηάζεσλ, όπσο ην OpenOffice.org Impress [1] θαη ην Microsoft Office PowerPoint [2]. Απηά ηα πξνγξάκκαηα

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

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS ηότοι εργαζηηρίοσ ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS ην πιαίζην ηνπ ζπγθεθξηκέλνπ εξγαζηεξίνπ ζα παξνπζηαζηεί ε δηαδηθαζία ηωλ ξπζκίζεωλ δηθηύνπ ζε ιεηηνπξγηθό ζύζηεκα Windows XP. Η δηαδηθαζία ζε γεληθέο γξακκέο

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

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση Πώς πρέπει να τιμολογεί ένα μονοπώλιο; Μέρξη ζηηγκήο ην κνλνπώιην έρεη ζεσξεζεί ζαλ κηα επηρείξεζε ε νπνία πσιεί ην πξντόλ ηεο ζε θάζε πειάηε ζηελ

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

Οδηγίες τρήζης για λειηοσργία μεηαθοράς καναλιών ζε υηθιακό δέκηη OST-7060 HD

Οδηγίες τρήζης για λειηοσργία μεηαθοράς καναλιών ζε υηθιακό δέκηη OST-7060 HD Οδηγίες τρήζης για λειηοσργία μεηαθοράς καναλιών ζε υηθιακό δέκηη OST-7060 HD Γηα ηε δηεπθόιπλζή ζαο θαηά ην switch-off ηεο πεξηνρήο ηεο Πεινπνλλήζνπ έρνπκε πξνζζέζεη ζηνπο ςεθηαθνύο καο δέθηεο κία λέα,

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

Εγκατάσταση του πακέτου XAMPP. Β Τεχνική Σχολή Λεμεςοφ Σχολική χρονιά Άριςτοσ Παςιάσ

Εγκατάσταση του πακέτου XAMPP. Β Τεχνική Σχολή Λεμεςοφ Σχολική χρονιά Άριςτοσ Παςιάσ Εγκατάσταση του πακέτου XAMPP Β Τεχνική Σχολή Λεμεςοφ Σχολική χρονιά 2017 2018 Άριςτοσ Παςιάσ Τι είναι Τν XAMPP είλαη έλα δωξεάλ πξόγξακκα γηα δηάθνξα ιεηηνπξγηθά ζπζηήκαηα πνπ δεκηνπξγεί έλα πεξηβάιινλ

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

Μορθές Κακόβοσλοσ Κώδικα (Malicious Code)

Μορθές Κακόβοσλοσ Κώδικα (Malicious Code) Μορθές Κακόβοσλοσ Κώδικα (Malicious Code) Page 1 Υποπλοίαρτος Ν. Πεηράκος ΠΝ Αηδένηα Γνύξεηνη Ίππνη (Trojan Horses) Ινί (Viruses) Worms Root-kit Page 2 Γνύξεηνο Ίππνο (Trojan Horse) Οξηζκόο: Πξόγξακκα

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

ΕΓΧΕΙΡΙΔΙΟ ΕΚΔΟΗ 8.0.0

ΕΓΧΕΙΡΙΔΙΟ ΕΚΔΟΗ 8.0.0 ΕΓΧΕΙΡΙΔΙΟ ΕΚΔΟΗ 8.0.0 Γενικά Η έθδνζε 8.0.0 ηνπ ελόηεηεο: Business ERP, πεξηιακβάλεη λέεο ιεηηνπξγίεο πνπ αλαιύνληαη ζηηο παξαθάησ Γεληθόηεξε ιεηηνπξγία ηεο εθαξκνγήο Εκπνξηθή Δηαρείξηζε 7/2/2013 SingularLogic

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

ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ. G. Mitsou

ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ. G. Mitsou ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ηαηηθή ηωλ ξεπζηώλ (Τδξνζηαηηθή) Ση είλαη ηα ξεπζηά - Γεληθά Ππθλόηεηα Πίεζε Μεηαβνιή ηεο πίεζεο ζπλαξηήζεη ηνπ βάζνπο Αξρή ηνπ Pascal Τδξνζηαηηθή πίεζε Αηκνζθαηξηθή πίεζε Απόιπηε &

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

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε.

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε. ΑΝΟΙΓΜΑ ΝΔΑ ΥΡΗΗ 1. Γεκηνπξγείηε ηε λέα ρξήζε από ηελ επηινγή «Παξάκεηξνη/Παξάκεηξνη Δηαηξίαο/Γηαρείξηζε Δηαηξηώλ». Πιεθηξνινγείηε ηνλ θσδηθό ηεο εηαηξίαο ζαο θαη παηάηε Enter. Σηελ έλδεημε «Υξήζεηο» παηάηε

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

ΒΗΜΑ 2. Εηζάγεηε ηνλ Κωδηθό Πξόζβαζεο πνπ ιακβάλεηε κε SMS & δειώλεηε επηζπκεηό Όλνκα Πξόζβαζεο (Username) θαη ην ζαο

ΒΗΜΑ 2. Εηζάγεηε ηνλ Κωδηθό Πξόζβαζεο πνπ ιακβάλεηε κε SMS & δειώλεηε επηζπκεηό Όλνκα Πξόζβαζεο (Username) θαη ην  ζαο Δίζνδνο ζηελ Υπεξεζία Αλ είζηε ήδε εγγεγξακκέλνο ρξήζηεο ζηελ ππεξεζία, γηα ηελ είζνδν ζαο (login) ζηελ ππεξεζία e-bill, εηζάγεηαη ην Όλνκα Φξήζηε (username) θαη ηνλ Κωδηθό Πξόζβαζεο (password) πνπ είραηε

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

ΦΤΛΛΟ ΔΡΓΑΙΑ 1 Βαζηθέο Έλλνηεο & Καηεγνξίεο Γηθηύσλ Τπνινγηζηώλ

ΦΤΛΛΟ ΔΡΓΑΙΑ 1 Βαζηθέο Έλλνηεο & Καηεγνξίεο Γηθηύσλ Τπνινγηζηώλ ΦΤΛΛΟ ΔΡΓΑΙΑ 1 Βαζηθέο Έλλνηεο & Καηεγνξίεο Γηθηύσλ Τπνινγηζηώλ Γξαζηεξηόηεηα 1ε αο δίλεηαη ν ελλνηνινγηθφο ράξηεο "Γίθηπα Τπνινγηζηψλ - Βαζηθέο Έλλνηεο" πνπ αθνξά ζηελ θεληξηθή έλλνηα "Γίθηπα Τπνινγηζηψλ".

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

Η επιζκόπηζη ηης έμμιζθης ενηολής ζηην Αλλοδαπή. Καηεξίλα Γαιαλνπνύινπ, Intellectual Property Manager, Microsoft Ειιάο Α.Ε.

Η επιζκόπηζη ηης έμμιζθης ενηολής ζηην Αλλοδαπή. Καηεξίλα Γαιαλνπνύινπ, Intellectual Property Manager, Microsoft Ειιάο Α.Ε. Η επιζκόπηζη ηης έμμιζθης ενηολής ζηην Αλλοδαπή Καηεξίλα Γαιαλνπνύινπ, Intellectual Property Manager, Microsoft Ειιάο Α.Ε. Παξάκεηξνη πξνο αμηνιόγεζε Ννκνζεηηθή ζσξάθηζε Κνηλόο Σύιινγνο Ακνηβή Καηαγγειία/Λύζε

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

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ ΚΕΦ..3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ Οπιζμόρ απόλςηηρ ηιμήρ: Σηνλ άμνλα ησλ πξαγκαηηθώλ αξηζκώλ ζεσξνύκε έλαλ αξηζκό α πνπ ζπκβνιίδεηαη κε ην ζεκείν Α. Η απόζηαζε ηνπ ζεκείνπ Α από ηελ αξρή Ο, δειαδή

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

ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ Ρέππα Μαξγαξίηα

ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ Ρέππα Μαξγαξίηα ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2011-12 Ρέππα Μαξγαξίηα FORMAT, UNFORMAT Format format , όποσ = a:, b: Μνξθνπνηεί, δειαδή πξνεηνηκάδεη

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

ΣΡΑΠΕΖΑ ΘΕΜΑΣΩΝ Α ΛΤΚΕΙΟΤ

ΣΡΑΠΕΖΑ ΘΕΜΑΣΩΝ Α ΛΤΚΕΙΟΤ ΜΑΘΗΜΑ : ΑΡΧΑΙΑ ΕΛΛΗΝΙΚΑ ΣΡΑΠΕΖΑ ΘΕΜΑΣΩΝ Α ΛΤΚΕΙΟΤ Α/Α : 0_1382/153 1. Καη όηαλ έγηλε ε ππνρώξεζε αξγά ην απόγεπκα, επεηδή θνβήζεθαλ νη νιηγαξρηθνί κήπσο νη δεκνθξαηηθνί, αθνύ θάλνπλ επίζεζε, θαηαιάβνπλ

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

"Εθαξκνγέο Δηαδηθηύνπ"

Εθαξκνγέο Δηαδηθηύνπ "Εθαξκνγέο Δηαδηθηύνπ" Σελάξηα - Javascript - PHP http://www.elizabethcastro.com/html5ed/examples/#c18 http://www.elizabethcastro.com/html5ed/examples/#c19 Ισάλληλα 2008 Ι. Παπαδόπνπινο 1 είλαη κηθξά πξνγξάκκαηα

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

ΔΕΟ 13. Ποσοτικές Μέθοδοι. θαη λα ππνινγίζεηε ην θόζηνο γηα 10000 παξαγόκελα πξντόληα. Να ζρεδηαζηεί γηα εύξνο πξντόλησλ έσο 30000.

ΔΕΟ 13. Ποσοτικές Μέθοδοι. θαη λα ππνινγίζεηε ην θόζηνο γηα 10000 παξαγόκελα πξντόληα. Να ζρεδηαζηεί γηα εύξνο πξντόλησλ έσο 30000. ΔΕΟ 13 Ποσοτικές Μέθοδοι Σσνάρηηζη Κόζηοσς C(), μέζο κόζηος C()/. Παράδειγμα 1 Μηα εηαηξεία δαπαλά γηα θάζε πξντόλ Α πνπ παξάγεη 0.0 λ.κ. Τα πάγηα έμνδα ηεο εηαηξείαο είλαη 800 λ.κ. Ζεηείηαη 1) Να πεξηγξάςεηε

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

Άσκηση 1 - Μοπυοποίηση Κειμένου

Άσκηση 1 - Μοπυοποίηση Κειμένου Άσκηση 1 - Μοπυοποίηση Κειμένου Σηηο παξαθάησ γξακκέο εθαξκόζηε ηε κνξθνπνίεζε πνπ πεξηγξάθνπλ Γξακκή κε έληνλε γξαθή Γξακκή κε πιάγηα γξαθή Γξακκή κε ππνγξακκηζκέλε γξαθή Γξακκή κε Arial Font κεγέζνπο

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

ΟΣΑ Επηρεηξεζηαθή Ννεκνζύλε. Ελόηεηα: Ad1.2.2 «Ση θξύβεηαη» πίζω από κηα Επηρεηξεζηαθή Αλαθνξά (report): XML & XSD γηα αξράξηνπο

ΟΣΑ Επηρεηξεζηαθή Ννεκνζύλε. Ελόηεηα: Ad1.2.2 «Ση θξύβεηαη» πίζω από κηα Επηρεηξεζηαθή Αλαθνξά (report): XML & XSD γηα αξράξηνπο ΟΣΑ Επηρεηξεζηαθή Ννεκνζύλε Ελόηεηα: Ad1.2.2 «Ση θξύβεηαη» πίζω από κηα Επηρεηξεζηαθή Αλαθνξά (report): XML & XSD γηα αξράξηνπο Πξαθηηθή Άζθεζε (επίπεδν 2): ηόρνο ηεο άζθεζεο είλαη ε πεξαηηέξω εμνηθείωζε

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

ΑΝΤΗΛΙΑΚΑ. Η Μηκή ζθέθηεθε έλαλ ηξόπν, γηα λα ζπγθξίλεη κεξηθά δηαθνξεηηθά αληειηαθά πξντόληα. Απηή θαη ν Νηίλνο ζπλέιεμαλ ηα αθόινπζα πιηθά:

ΑΝΤΗΛΙΑΚΑ. Η Μηκή ζθέθηεθε έλαλ ηξόπν, γηα λα ζπγθξίλεη κεξηθά δηαθνξεηηθά αληειηαθά πξντόληα. Απηή θαη ν Νηίλνο ζπλέιεμαλ ηα αθόινπζα πιηθά: ΑΝΤΗΛΙΑΚΑ Η Μηκή θαη ν Νηίλνο αλαξσηήζεθαλ πνην αληειηαθό πξντόλ παξέρεη ηελ θαιύηεξε πξνζηαζία ζην δέξκα ηνπο. Τα αληειηαθά πξντόληα έρνπλ έλα δείθηε αληειηαθήο πξνζηαζίαο (SPF), ν νπνίνο δείρλεη πόζν

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

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ ΘΔΜΑ Α Α1. α. Σ β. Σ γ. Λ δ. Λ ε. Λ ζη. Σ Α2. Γ Α3. 1. γ 2. ε 3. δ 4. α Β1. ΘΔΜΑ Β Οη ηειηθνί ππνινγηζηέο παίξλνπλ απνθάζεηο δξνκνιόγεζεο κόλν γηα ηα δηθά ηνπο απηνδύλακα

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

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ.

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ. Απαντήσεις θέματος 2 Απηά πνπ έπξεπε λα γξάςεηε (δελ ρξεηαδόηαλ δηθαηνιόγεζε εθηόο από ην Γ) Α return a*b; Β 0:acegf2, 1: acegf23, 2: acegf234, 3:acegf2345, 4:acegf23456, 5:acegf234567, 6:acegf2345678,

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

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf Δξγαζηεξηαθή άζθεζε 03 Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf Ζιίαο Χαηδεζενδσξίδεο Οθηώβξηνο / Ννέκβξηνο 2004 Τη είλαη ην δίθηπν Wulf Δπίπεδν ζην νπνίν κπνξνύκε λα αλαπαξαζηήζνπκε ηξηζδηάζηαηα ζρήκαηα,

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

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ 1.Απηόο πνπ ζα αλαγλσξηζηεί απνπζηάδεη γηα πνιύ θαηξό. 2.Δπηζηξέθεη κε πιαζηή ηαπηόηεηα ή κεηακνξθσκέλνο. 3.Απνκνλώλνληαη ηα δύν πξόζσπα 4.Άξζε κεηακόξθσζεο 5.Απνθάιπςε 6.Ακθηβνιίεο-απνδεηθηηθά

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

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου ΠΡΟΒΛΗΜΑ Σε έλα ηνπξλνπά βόιετ δήισζαλ ζπκκεηνρή νκάδεο Γπκλαζίσλ ηεο Κύπξνπ.

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

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ.

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ. Μονοψϊνιο Ολιγοψώνιο Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ. Οπιακή αξία Δπηπξόζζεηα νθέιε από ηελ ρξήζε/θαηαλάισζε κηαο επηπξόζζεηε

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

ΑΞΙΟΘΕΑΣΑ ΣΟΤ ΥΩΡΙΟΤ ΜΑ

ΑΞΙΟΘΕΑΣΑ ΣΟΤ ΥΩΡΙΟΤ ΜΑ ΑΞΙΟΘΕΑΣΑ ΣΟΤ ΥΩΡΙΟΤ ΜΑ α. Η ΕΚΚΛΗΙΑ ΣΟΤ ΥΩΡΙΟΤ ΜΑ β. ΣΟ ΠΝΕΤΜΑΣΙΚΟ ΜΑ ΚΕΝΣΡΟ γ. Η ΠΑΝΟΡΑΜΙΚΗ ΘΕΗ ΣΟΤ ΥΩΡΙΟΤ ΜΑ α. Η ΕΚΚΛΗΙΑ ΣΟΤ ΥΩΡΙΟΤ ΜΑ. Η Εθθιεζία ηνπ ρσξηνύ καο, ε Αγία Άλλα, είλαη θηηζκέλε πξηλ πνιιά

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

f '(x)g(x)h(x) g'(x)f (x)h(x) h'(x) f (x)g(x)

f '(x)g(x)h(x) g'(x)f (x)h(x) h'(x) f (x)g(x) ΓΙΑΓΩΝΙΣΜΑ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ 54 Υλη: Παράγωγοι Γ Λσκείοσ Ον/μο:.. 6--4 Θεη-Τετν. ΘΔΜΑ Α.. Αλ f, g, h ηξεηο παξαγωγίζηκεο ζπλαξηήζεηο ζην λα απνδείμεηε όηη : f () g() h() ' f '()g()h() g'()f ()h() h'() f ()g()

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

Constructors and Destructors in C++

Constructors and Destructors in C++ Constructors and Destructors in C++ Σύνθεζη Πνιύ ζπρλά ζηε C++ κία θιάζε κπνξεί λα πεξηέρεη ζαλ κέιεδεδνκέλα αληηθείκελα άιισλ θιάζεσλ. Πνηα είλαη ε ζεηξά κε ηελ νπνία δεκηνπξγνύληαη θαη θαηαζηξέθνληαη

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

A. Αιιάδνληαο ηε θνξά ηνπ ξεύκαηνο πνπ δηαξξέεη ηνλ αγωγό.

A. Αιιάδνληαο ηε θνξά ηνπ ξεύκαηνο πνπ δηαξξέεη ηνλ αγωγό. ΤΠΟΤΡΓΔΙΟ ΠΑΙΓΔΙΑ ΚΑΙ ΠΟΛΙΣΙΜΟΤ ΛΔΤΚΩΙΑ ΦΤΛΛΟ ΔΡΓΑΙΑ Μειέηε ηωλ παξαγόληωλ από ηνπο νπνίνπο εμαξηάηαη ε ειεθηξνκαγλεηηθή δύλακε. Τιηθά - πζθεπέο: Ηιεθηξνληθή δπγαξηά, ηξνθνδνηηθό ηάζεο, ξννζηάηεο, ακπεξόκεηξν,

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

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα!

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα! Cpyright 2013 Λόγος & Επικοινωνία // All rights Reserved Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα! Αυηό ηο παιχνίδι έχει ζηόχους: 1. ηελ εθγύκλαζε ηεο αθνπζηηθήο κλήκεο ησλ παηδηώλ 2. ηελ εμάζθεζε ζηελ

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

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ. Ύλη: Εσθύγραμμη Κίνηζη

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ. Ύλη: Εσθύγραμμη Κίνηζη ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ Είμαζηε ηυχεροί που είμαζηε δάζκαλοι Ον/μο:.. A Λσκείοσ Ύλη: Εσθύγραμμη Κίνηζη 8-11-2015 Θέμα 1 ο : 1. Η εμίζωζε θίλεζεο ελόο θηλεηνύ πνπ θηλείηαη επζύγξακκα είλαη ε x = 5t. Πνηα

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

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ Διαφάνεια 1 η ΕΚΚΙΝΗΣΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ ΚΑΙ ΕΙΣΟΔΟΣ ΣΤΟ BIOS UITILITY Τν ζπλεζέζηεξν πιήθηξν γηα ηελ είζνδν ζην BIOS Utility είλαη ην πιήθηξν Del. Παξόια απηά δηαθνξεηηθνί θαηαζθεπαζηέο, ρξεζηκνπνηνύλ δηαθνξεηηθά

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

ΛΙΜΝΗ ΤΣΑΝΤ. Σρήκα 1. Σρήκα 2

ΛΙΜΝΗ ΤΣΑΝΤ. Σρήκα 1. Σρήκα 2 ΛΙΜΝΗ ΤΣΑΝΤ Τν Σρήκα 1 δείρλεη ηελ αιιαγή ηεο ζηάζκεο ηεο Λίκλεο Τζαλη, ζηε Σαράξα ηεο Βόξεηαο Αθξηθήο. Η Λίκλε Τζαλη εμαθαλίζηεθε ηειείσο γύξσ ζην 20.000 π.χ., θαηά ηε δηάξθεηα ηεο ηειεπηαίαο επνρήο ησλ

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

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ 1. ρεδίαζε πλδπαζηηθνύ Κπθιώκαηνο Έλα ζπλδπαζηηθό θύθισκα (Κ) έρεη ηξεηο εηζόδνπο A, B θαη C θαη κία έμνδν Y Y=A B+AC Να θαηαζθεπάζεηε ην ράξηε Karnaugh. B 0

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΜΕ ΧΡΗΣΗ PHP Αντώνης Χρυσόπουλος Κατερίνα Κυπριώτη Στέλιος Μόσχογλου Θεοδόσης Σουργκούνης ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΜΕ ΧΡΗΣΗ PHP Για να γίνουμε όλοι καλύτεροι άνθρωποι Τι έχει το μενού σήμερα??? 1. Τι είναι η PHP??? Τι είναι

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

Διαδικαζία μεηαθοράς δεδομένων Εκκαθαριζηικής για ηο Eιδικό ζημείωμα περαίωζης Φ.Π.Α

Διαδικαζία μεηαθοράς δεδομένων Εκκαθαριζηικής για ηο Eιδικό ζημείωμα περαίωζης Φ.Π.Α Διαδικαζία μεηαθοράς δεδομένων Εκκαθαριζηικής για ηο Eιδικό ζημείωμα περαίωζης Φ.Π.Α Σει.1 Σο ζςγκεκπιμένο εγσειπίδιο δημιοςπγήθηκε για να βοηθήζει ηην καηανόηζη ηηρ διαδικαζίαρ μεηαθοπάρ δεδομένων ηηρ

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

ΣΕΙ Δυτικήσ Μακεδονίασ, Παράρτημα Καςτοριάσ Τμήμα Πληροφορικήσ και Τεχνολογίασ Υπολογιςτών

ΣΕΙ Δυτικήσ Μακεδονίασ, Παράρτημα Καςτοριάσ Τμήμα Πληροφορικήσ και Τεχνολογίασ Υπολογιςτών τοιχεία του μαθήματοσ (ημζρα εβδομάδασ, ώρεσ, ζτοσ): ΣΕΙ Δυτικήσ Μακεδονίασ, Παράρτημα Καςτοριάσ Τμήμα Πληροφορικήσ και Τεχνολογίασ Υπολογιςτών Εργαςτηριακή ομάδα αςκήςεων 2 για το μάθημα «ΑΡΧΙΣΕΚΣΟΝΙΚΗ

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

ΣΡΑΠΕΖΑ ΘΕΜΑΣΩΝ Α ΛΤΚΕΙΟΤ

ΣΡΑΠΕΖΑ ΘΕΜΑΣΩΝ Α ΛΤΚΕΙΟΤ Α/Α : 0_1379/50 1. Όηαλ ινηπόλ ήξζαλ [νη πξέζβεηο ζηελ Αζήλα], αθνύ ζπλέιαβαλ νη Αζελαίνη θαη ηνπο πξέζβεηο σο ππνθηλεηέο ζηάζεο θαη όζνπο έπεηζαλ [νη πξέζβεηο], ηνπο ζπγθέληξσζαλ γηα αζθάιεηα ζηελ Αίγηλα.

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

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη ΔΠΑΝΑΛΗΠΣΙΚΑ ΘΔΜΑΣΑ ΣΟ ΓΙΑΦΟΡΙΚΟ ΛΟΓΙΜΟ Μάρτιος 0 ΘΔΜΑ Να ππνινγίζεηε ηα όξηα: i ii lim 0 0 lim iii iv lim e 0 lim e 0 ΘΔΜΑ Γίλεηαη ε άξηηα ζπλάξηεζε '( ) ( ) γηα θάζε 0 * : R R γηα ηελ νπνία ηζρύνπλ:

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

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12 ΑΚΖΔΗ ΤΜΝΑΗΟΤ - ΚΤΚΛΟ ΠΡΩΣΟ - - ηα πνηεο ηηκέο ηνπ ηα παξαθάησ θιάζκαηα δελ νξίδνληαη ; (Τπόδεημε : έλα θιάζκα νξίδεηαη αλ ν παξνλνκαζηήο είλαη δηάθνξνο ηνπ κεδελόο) - (-) - (-) - Να απινπνηεζνύλ ηα θιάζκαηα

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

Η/Υ A ΤΑΞΕΩΣ ΑΕ 2010-2011. Συστήματα Αρίθμησης. Υποπλοίαρχος Ν. Πετράκος ΠΝ

Η/Υ A ΤΑΞΕΩΣ ΑΕ 2010-2011. Συστήματα Αρίθμησης. Υποπλοίαρχος Ν. Πετράκος ΠΝ Συστήματα Αρίθμησης Υποπλοίαρχος Ν. Πετράκος ΠΝ 1 Ειζαγωγή Τν bit είλαη ε πην βαζηθή κνλάδα κέηξεζεο. Είλαη κία θαηάζηαζε on ή off ζε έλα ςεθηαθό θύθισκα. Άιιεο θνξέο είλαη κία θαηάζηαζε high ή low voltage

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

(Ενδεικηικές Απανηήζεις) ΘΔΜΑ Α. Α1. Βιέπε απόδεημε Σει. 262, ζρνιηθνύ βηβιίνπ. Α2. Βιέπε νξηζκό Σει. 141, ζρνιηθνύ βηβιίνπ

(Ενδεικηικές Απανηήζεις) ΘΔΜΑ Α. Α1. Βιέπε απόδεημε Σει. 262, ζρνιηθνύ βηβιίνπ. Α2. Βιέπε νξηζκό Σει. 141, ζρνιηθνύ βηβιίνπ ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ (ΟΜΑΓΑ Β ) ΣΔΣΑΡΣΖ 18 ΜΑΪΟΤ 16 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ (ΝΔΟ ΤΣΖΜΑ) ΚΑΣΔΤΘΤΝΖ (ΠΑΛΑΗΟ ΤΣΖΜΑ) (Ενδεικηικές Απανηήζεις) ΘΔΜΑ

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

Η. Απζίλνο Αλ. Καζεγεηήο Αζιεηηθή δηνίθεζε. ΟΓΗΓΟ ΠΣΤΥΙΑΚΗ ΔΡΓΑΙΑ ζηελ Αζιεηηθή δηοίθεζε. Θέκα πηστηαθής (κε ηε κνξθή εξωηήκαηνο):...

Η. Απζίλνο Αλ. Καζεγεηήο Αζιεηηθή δηνίθεζε. ΟΓΗΓΟ ΠΣΤΥΙΑΚΗ ΔΡΓΑΙΑ ζηελ Αζιεηηθή δηοίθεζε. Θέκα πηστηαθής (κε ηε κνξθή εξωηήκαηνο):... ΟΓΗΓΟ ΠΣΤΥΙΑΚΗ ΔΡΓΑΙΑ ζηελ Αζιεηηθή δηοίθεζε Δπώλσκο :.. Όλοκα :.. ΑΜ:. Ηκεροκελία θαηάζεζες ζηε δηαδηθαζία: Γλωζηηθό αληηθείκελο:.../../ 201.. Θέκα πηστηαθής (κε ηε κνξθή εξωηήκαηνο):..... Έγθρηζε Σοκέα:..

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

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ Α ΛΤΚΔΙΟΤ Ζμεπομηνία: 18/12/10 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΕΙΝΟΜΕΝΕ ΛΤ ΕΙ 1. Δίλεηαη ην πνιπώλπκν Αλ θαη., λα βξείηε ην ηειεπηαίν ςεθίν ηνπ αξηζκνύ έρνπκε:

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

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο.

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο. 7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Ση είλαη έλαο θαηαρσξεηήο; O θαηαρσξεηήο είλαη κηα νκάδα από flip-flop πνπ κπνξεί λα απνζεθεύζεη πξνζσξηλά ςεθηαθή πιεξνθνξία. Μπνξεί λα δηαηεξήζεη ηα δεδνκέλα ηνπ

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

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη 5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη Σηα πιαίζηα ηεο πέκπηεο εξγαζηεξηαθήο άζθεζεο ζα ρξεζηκνπνηεζεί απνθιεηζηηθά ην πεξηβάιινλ αλάπηπμεο νινθιεξσκέλσλ θπθισκάησλ IDL-800 Digital

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

Να ζρεδηάζεηο ηξόπνπο ζύλδεζεο κηαο κπαηαξίαο θαη ελόο ιακπηήξα ώζηε ν ιακπηήξαο λα θσηνβνιεί.

Να ζρεδηάζεηο ηξόπνπο ζύλδεζεο κηαο κπαηαξίαο θαη ελόο ιακπηήξα ώζηε ν ιακπηήξαο λα θσηνβνιεί. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ: Απλό ηλεκτπικό κύκλυμα Η δηδαζθαιία ηνπ απινύ ειεθηξηθνύ θπθιώκαηνο ππάξρεη ζην κάζεκα «Φπζηθά» ηεο Ε ηάμεο ηνπ δεκνηηθνύ θαη επαλαιακβάλεηαη ζην κάζεκα ηεο Φπζηθήο ζηε Γ ηάμε ηνπ Γπκλαζίνπ.

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

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΠΟΥΔΕΣ ΣΤΙΣ ΦΥΣΙΚΕΣ ΕΠΙΣΤΗΜΕΣ ΓΕΝΙΚΑ ΜΑΘΗΜΑΤΙΚΑ ΙΙ - ΦΥΕ 0 7 Ινπλίνπ 009 Απαντήσειρ στιρ ασκήσειρ τηρ τελικήρ εξέτασηρ στιρ Σςνήθειρ Διαυοπικέρ Εξισώσειρ Αγαπηηέ θοιηηηή/ηπια,

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

Διαηιμήζεις για Αιολικά Πάρκα. Κώδικες 28, 78 και 84

Διαηιμήζεις για Αιολικά Πάρκα. Κώδικες 28, 78 και 84 Διαηιμήζεις για Αιολικά Πάρκα Κώδικες 28, 78 και 84 Διαηιμήζεις για Αιολικά Πάρκα Οη Διαηιμήζεις για Αιολικά Πάρκα εθαξκόδνληαη γηα ηελ απνξξνθνύκελε ελέξγεηα από Αηνιηθά Πάξθα πνπ είλαη ζπλδεδεκέλα ζην

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

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο Έξγν ελέξγεηα 3 (Λύζε) Σώκα κάδαο m = 4Kg εξεκεί ζηε βάζε θεθιηκέλνπ επηπέδνπ γσλίαο θιίζεο ζ κε εκζ = 0,6 θαη ζπλζ = 0,8. Τν ζώκα αξρίδεη λα δέρεηαη νξηδόληηα δύλακε θαη μεθηλά λα αλεβαίλεη ζην θεθιηκέλν

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

Διατείριση Φσσικών Καταστρουών: ACTIVE LANDSLIDE INVENTORY MAPPING AND SUSCEPTIBILITY ZONING

Διατείριση Φσσικών Καταστρουών: ACTIVE LANDSLIDE INVENTORY MAPPING AND SUSCEPTIBILITY ZONING Διατείριση Φσσικών Καταστρουών: ACTIVE LANDSLIDE INVENTORY MAPPING AND SUSCEPTIBILITY ZONING Ναηαιία Σπαλνύ, spanou@igme.gr & natspanou@gmail.com Τερληθόο Γεσιόγνο (M.Sc.) Πεξηγξαθή Χάξηεο ρσξηθήο θαηαλνκήο

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

Δεςηέπα 18/05/2015. Απόνηερ : 1) Γεκόπνπινο Υξήζηνο 2) Καπώλεο πήιηνο 3) Κπξηαθόπνπινο Κπξηάθνο 4) Παλαγόπνπινο Βαζίιεο

Δεςηέπα 18/05/2015. Απόνηερ : 1) Γεκόπνπινο Υξήζηνο 2) Καπώλεο πήιηνο 3) Κπξηαθόπνπινο Κπξηάθνο 4) Παλαγόπνπινο Βαζίιεο 1 ΕΝΩΗ ΠΟΔΟΦΑΙΡΙΚΩΝ ΩΜΑΣΕΙΩΝ ΗΛΕΙΑ ΕΣΟ ΙΔΡΤΕΩ 1969 ΕΔΡΑ: ΠΤΡΓΟ Οδόο: Γξαγαηζαλίνπ 34 & Παπαθιέζζα Σει: 26210 33311 e-mail:epsilia@otenet.gr Φαμ: 26210 34004 Ππακηικό 35 ηρ ζςνεδπίαζηρ ηος Δ ηηρ ΕΠ Ηλείαρ

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

ΣΔΥΝΟΛΟΓΙΚΟ ΠΑΝΔΠΙΣΗΜΙΟ ΚΤΠΡΟΤ ΥΟΛΗ ΓΔΩΣΔΥΝΙΚΩΝ ΔΠΙΣΗΜΩΝ ΚΑΙ ΓΙΑΥΔΙΡΙΗ ΠΔΡΙΒΑΛΟΝΣΟ. Πτυχιακή διατριβή ΟΛΟΚΛΗΡΩΜΔΝΗ ΑΠΟΡΡΤΠΑΝΗ ΚΑΤΑΔΡΙΩΝ ΠΛΟΙΩΝ

ΣΔΥΝΟΛΟΓΙΚΟ ΠΑΝΔΠΙΣΗΜΙΟ ΚΤΠΡΟΤ ΥΟΛΗ ΓΔΩΣΔΥΝΙΚΩΝ ΔΠΙΣΗΜΩΝ ΚΑΙ ΓΙΑΥΔΙΡΙΗ ΠΔΡΙΒΑΛΟΝΣΟ. Πτυχιακή διατριβή ΟΛΟΚΛΗΡΩΜΔΝΗ ΑΠΟΡΡΤΠΑΝΗ ΚΑΤΑΔΡΙΩΝ ΠΛΟΙΩΝ ΣΔΥΝΟΛΟΓΙΚΟ ΠΑΝΔΠΙΣΗΜΙΟ ΚΤΠΡΟΤ ΥΟΛΗ ΓΔΩΣΔΥΝΙΚΩΝ ΔΠΙΣΗΜΩΝ ΚΑΙ ΓΙΑΥΔΙΡΙΗ ΠΔΡΙΒΑΛΟΝΣΟ Πτυχιακή διατριβή ΟΛΟΚΛΗΡΩΜΔΝΗ ΑΠΟΡΡΤΠΑΝΗ ΚΑΤΑΔΡΙΩΝ ΠΛΟΙΩΝ Αργσρώ Ιωάννοσ Λεμεσός 2012 ΣΔΥΝΟΛΟΓΙΚΟ ΠΑΝΔΠΙΣΗΜΙΟ ΚΤΠΡΟΤ

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

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ Εδώ ζα ππνινγίζνπκε ην κεηαζρεκαηηζκό Fourier κεξηθώλ αθόκα ζεκάησλ, πξνζπαζώληαο λα μεθηλήζνπκε από ην κεηαζρεκαηηζκό Fourier γλσζηώλ ζεκάησλ

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

Δξγαιεία Καηαζθεπέο 1 Σάμε Σ Δ.Κ.Φ.Δ. ΥΑΝΙΧΝ ΠΡΧΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ. ΔΝΟΣΗΣΑ 11 ε : ΦΧ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Φαθόο κε ζσιήλα.

Δξγαιεία Καηαζθεπέο 1 Σάμε Σ Δ.Κ.Φ.Δ. ΥΑΝΙΧΝ ΠΡΧΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ. ΔΝΟΣΗΣΑ 11 ε : ΦΧ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Φαθόο κε ζσιήλα. Δξγαιεία Καηαζθεπέο 1 Δ.Κ.Φ.Δ. ΥΑΝΙΧΝ ΠΡΧΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ ΔΝΟΣΗΣΑ 11 ε : ΦΧ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ Καηαζθεπή 1: Φαθόο κε ζσιήλα Γηαθξάγκαηα Δξγαιεία Καηαζθεπέο 2 Η θαηαζθεπή πεξηγξάθεηαη ζηελ αληίζηνηρε ελόηεηα

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

Οινθιεξωκέλεο ιύζεηο γηα ηελ γαιαθηνβηνκεραλία

Οινθιεξωκέλεο ιύζεηο γηα ηελ γαιαθηνβηνκεραλία ΧΗΜΙΚΑ ΠΡΟΪΟΝΤΑ Α.Ε Οινθιεξωκέλεο ιύζεηο γηα ηελ γαιαθηνβηνκεραλία Πνηνί είκαζηε Η ΜΙΝΔΡΑΛ ΥΗΜΙΚΑ ΠΡΟΪΟΝΣΑ Α.Δ. μεθίλεζε ηελ πνξεία ηεο ην 1976. Από ηελ αξρή ζπλεξγαζηήθακε κε πξωηνπόξνπο εηαηξείεο ζηνλ

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

Περιεχόμενο 10ης διάλεξης ΒΑΙΚΔ ΑΡΥΔ ΑΘΛΗΣΙΚΟΤ ΜΑΡΚΔΣΙΝΓΚ

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

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

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ. Μία αθηίλα θωηόο πξνζπίπηεη κε κία γωλία ζ ζηε επάλω επηθάλεηα ελόο θύβνπ από πνιπεζηέξα ν νπνίνο έρεη δείθηε δηάζιαζεο ε =,49 (ζρήκα ). Βξείηε πνηα ζα είλαη ε κέγηζηε γωλία

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

ύζηεκα Ωξνκέηξεζεο Πξνζσπηθνύ (Έθδνζε 2) ΤΠΗΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΩΝ ΤΣΗΜΑΣΩΝ

ύζηεκα Ωξνκέηξεζεο Πξνζσπηθνύ (Έθδνζε 2) ΤΠΗΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΩΝ ΤΣΗΜΑΣΩΝ ύζηεκα Ωξνκέηξεζεο Πξνζσπηθνύ (Έθδνζε 2) ΤΠΗΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΩΝ ΤΣΗΜΑΣΩΝ Πεξηερόκελα Σερληθά Υαξαθηεξηζηηθά Καηαγξαθή Ώξαο πγρξνληζκόο πζηήκαηνο Παξνπζίαζε πζηήκαηνο Πηζαλά ελάξηα Υξήζεο 2 Σερληθά Υαξαθηεξηζηηθά

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

ΔΡΓΑΙΑ 1. Γιαδικησακά πληροθοριακά σζηήμαηα. Ομάδα Δργαζίας: Μεηαπηστιακοί Φοιηηηές. ηέθανος Κονηοβάς ΑΔΜ :283. Πάζτος Βαζίλειος ΑΔΜ :288

ΔΡΓΑΙΑ 1. Γιαδικησακά πληροθοριακά σζηήμαηα. Ομάδα Δργαζίας: Μεηαπηστιακοί Φοιηηηές. ηέθανος Κονηοβάς ΑΔΜ :283. Πάζτος Βαζίλειος ΑΔΜ :288 ΔΡΓΑΙΑ 1 Γιαδικησακά πληροθοριακά σζηήμαηα Ομάδα Δργαζίας: Μεηαπηστιακοί Φοιηηηές ηέθανος Κονηοβάς ΑΔΜ :283 Πάζτος Βαζίλειος ΑΔΜ :288 1.Γιάγραμμα Ονηολογίας. Σην παξαπάλω δηάγξακκα θαίλεηαη ε δηάξζξωζε

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

ΑΓΩΜΘΡΘΙΞΘ ΤΩΠΞΘ ΡΘΡ ΛΘΙΠΕΡ ΗΚΘΙΘΕΡ ΛΘΤΑΗΚΘΔΗΡ Τ.

ΑΓΩΜΘΡΘΙΞΘ ΤΩΠΞΘ ΡΘΡ ΛΘΙΠΕΡ ΗΚΘΙΘΕΡ ΛΘΤΑΗΚΘΔΗΡ Τ. ΑΓΩΜΘΡΘΙΞΘ ΤΩΠΞΘ ΡΘΡ ΛΘΙΠΕΡ ΗΚΘΙΘΕΡ ΟΑIΤΜΘΔΘ ΡΕ ΛΕΓΑΚΞ ΓΗΟΕΔΞ 11V11 ΗΚΘΙΘΑ 6-10 ΤΠΞΜΩΜ ΛΕΘΞΜΕΙΗΛΑΑ ΞΣ ΟΑΘΤΜΘΔΘΞΣ ΡΕ ΛΕΓΑΚΞ ΓΗΟΕΔΞ ΓΘΑ ΟΑΘΙΕΡ ΗΚΘΙΘΑΡ 6-10 ΕΩΜ Η ΔΘΑΔΠΞΛΗ ΑΟΞ Η ΛΘΑ ΕΡΘΑ ΡΗΜ ΑΚΚΗ ΕΘΜΑΘ ΛΕΓΑΚΗ

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

Έκδοζη /10/2014. Νέα λειηοσργικόηηηα - Βεληιώζεις

Έκδοζη /10/2014. Νέα λειηοσργικόηηηα - Βεληιώζεις Έκδοζη 2.89.31 08/10/2014 Η έκδοζη 2.89.31, περιλαμβάνει : Βεληιώζεις Καηάζηαζη Υπερφριών (Ε8) Αναγγελία πρόζληυης (Ε3) 08/10/2014 1 Βεληιώζεις Καηάζηαζη Υπερφριών (Ε8) Επεηδή ζηελ ειεθηξνληθή ππνβνιή

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

Κόληξα πιαθέ ζαιάζζεο κε δηαζηάζεηο 40Υ40 εθ. Καξθηά 3 θηιά πεξίπνπ κε κήθνο ηξηπιάζην από ην πάρνο ηνπ μύινπ θπξί κεγάιν θαη ππνκνλή

Κόληξα πιαθέ ζαιάζζεο κε δηαζηάζεηο 40Υ40 εθ. Καξθηά 3 θηιά πεξίπνπ κε κήθνο ηξηπιάζην από ην πάρνο ηνπ μύινπ θπξί κεγάιν θαη ππνκνλή Δξγαιεία Καηαζθεπέο 1 Δ.Κ.Φ.Δ. ΥΑΝΙΩΝ ΠΡΩΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ ΔΝΟΣΗΣΑ 10 ε : ΜΗΥΑΝΙΚΗ ΜΔΡΟ Β ΠΙΔΗ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ Καηαζθεπή 1: Καξέθια θαθίξε Όξγαλα Τιηθά Κόληξα πιαθέ ζαιάζζεο κε δηαζηάζεηο 40Υ40 εθ.

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

Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access)

Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access) Έρνπκε απνζεθεύζεη κηα ζπιινγή αξρείσλ ζε κηα ζπλδεδεκέλε ιίζηα, όπνπ θάζε αξρείν έρεη κηα εηηθέηα ηαπηνπνίεζεο. Μηα εθαξκνγή παξάγεη κηα αθνινπζία από αηηήκαηα πξόζβαζεο ζηα αξρεία ηεο ιίζηαο. Γηα λα

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

ΑΝΑΠΣΤΞΖ ΔΛΔΤΘΔΡΟΤ ΔΚΠΑΗΓΔΤΣΗΚΟΤ ΛΟΓΗΜΗΚΟΤ

ΑΝΑΠΣΤΞΖ ΔΛΔΤΘΔΡΟΤ ΔΚΠΑΗΓΔΤΣΗΚΟΤ ΛΟΓΗΜΗΚΟΤ Σκήκα Πιεξνθνξηθήο θαη Σερλνινγίαο ΤΠΟΛΟΓΗΣΧΝ ΑΝΑΠΣΤΞΖ ΔΛΔΤΘΔΡΟΤ ΔΚΠΑΗΓΔΤΣΗΚΟΤ ΛΟΓΗΜΗΚΟΤ Πηπρηαθή εξγαζία ηωλ θνηηεηώλ: απλάξα Γεκεηξίνπ Υξηζηνθνξίδνπ Υξπζνύιαο Δηζεγεηήο Καζεγεηήο: Σδήκαο Γεκήηξηνο Καζηνξηά

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

ΔΦΑΡΜΟΜΔΝΑ ΜΑΘΗΜΑΣΙΚΑ ΣΗ ΧΗΜΔΙΑ Ι ΘΔΜΑΣΑ Α επηέκβξηνο 2009. 1. Να ππνινγηζηνύλ νη κεξηθέο παξάγσγνη πξώηεο ηάμεο ηεο ζπλάξηεζεο f(x,y) =

ΔΦΑΡΜΟΜΔΝΑ ΜΑΘΗΜΑΣΙΚΑ ΣΗ ΧΗΜΔΙΑ Ι ΘΔΜΑΣΑ Α επηέκβξηνο 2009. 1. Να ππνινγηζηνύλ νη κεξηθέο παξάγσγνη πξώηεο ηάμεο ηεο ζπλάξηεζεο f(x,y) = ΘΔΜΑΣΑ Α επηέκβξηνο 9. Να ππνινγηζηνύλ νη κεξηθέο παξάγσγνη πξώηεο ηάμεο ηεο ζπλάξηεζεο f(,y) = y.. Να ππνινγηζηνύλ ηα νινθιεξώκαηα: a) ln b) a) 3cos b) e sin 4. Να ππνινγηζηεί ην νινθιήξσκα: S ( y) 3

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

Injection Attacks. Protocol Host FilePath. http://www.site.gr/index.html? field1=valuex&field2=valuey. Query String. Web server HTTP GET.

Injection Attacks. Protocol Host FilePath. http://www.site.gr/index.html? field1=valuex&field2=valuey. Query String. Web server HTTP GET. Πσο γίλεηαη ε πξόζβαζε ζήκεξα; Τν user input πεξλάεη από έλα server-side script κέζσ HTTP methods όπσο POST/GET Τν αίηεκα επεμεξγάδεηαη Αλάινγα αλνίγεη πξόζβαζε ζηε βάζε Query database θαη αλάθηεζε results

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

ΙΣΤΟΡΙΑ ΤΟΥ ΑΡΧΑΙΟΥ ΚΟΣΜΟΥ

ΙΣΤΟΡΙΑ ΤΟΥ ΑΡΧΑΙΟΥ ΚΟΣΜΟΥ ΙΣΤΟΡΙΑ ΤΟΥ ΑΡΧΑΙΟΥ ΚΟΣΜΟΥ Α ΛΤΚΕΙΟΤ ΓΕΝΙΚΗ ΠΑΙΔΕΙΑ Σχολικό έτος: 2011-2012 Καθηγήτριες: Κεφαλληνού Λουκία- Καλλία Αθηνά ΙΙ. ΟΙ ΑΧΑΙΟΙ ΕΛΛΗΝΕΣ ΑΠΟ ΣΟΤ ΠΡΟΙΣΟΡΙΚΟΤ ΥΡΟΝΟΤ ΕΩ ΚΑΙ ΣΟ Μ. ΑΛΕΞΑΝΔΡΟ 1. ΕΛΛΗΝΙΚΗ

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

Δξγαιεία Καηαζθεπέο 1 Σάμε Δ Δ.Κ.Φ.Δ. ΥΑΝΗΩΝ ΠΡΩΣΟΒΑΘΜΗΑ ΔΚΠΑΗΓΔΤΖ. ΔΝΟΣΖΣΑ 2 ε : ΤΛΗΚΑ ΩΜΑΣΑ ΔΡΓΑΛΔΗΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Ογθνκεηξηθό δνρείν

Δξγαιεία Καηαζθεπέο 1 Σάμε Δ Δ.Κ.Φ.Δ. ΥΑΝΗΩΝ ΠΡΩΣΟΒΑΘΜΗΑ ΔΚΠΑΗΓΔΤΖ. ΔΝΟΣΖΣΑ 2 ε : ΤΛΗΚΑ ΩΜΑΣΑ ΔΡΓΑΛΔΗΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Ογθνκεηξηθό δνρείν Δξγαιεία Καηαζθεπέο 1 Δ.Κ.Φ.Δ. ΥΑΝΗΩΝ ΠΡΩΣΟΒΑΘΜΗΑ ΔΚΠΑΗΓΔΤΖ ΔΝΟΣΖΣΑ 2 ε : ΤΛΗΚΑ ΩΜΑΣΑ ΔΡΓΑΛΔΗΑ ΚΑΣΑΚΔΤΔ Καηαζθεπή 1: Ογθνκεηξηθό δνρείν Καηαζθεπάδνπκε έλα νγθνκεηξηθό δνρείν από πιαζηηθό κπνπθάιη λεξνύ

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

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν.

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν. B-Δέλδξα Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν. Δέλδξα AVL n = 2 30 = 10 9 (πεξίπνπ). 30

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

Σύνθεζη ηαλανηώζεων. Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο:

Σύνθεζη ηαλανηώζεων. Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο: Σύνθεζη ηαλανηώζεων Α. Σύλζεζε δύν α.α.η ηεο ίδιας ζστνόηηηας Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο: Η απνκάθξπλζε

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

ΔΓΤ Μεηαπηπρηαθφ Πξφγξακκα «Γηνίθεζε Τπεξεζηψλ Τγείαο» - 177 --

ΔΓΤ Μεηαπηπρηαθφ Πξφγξακκα «Γηνίθεζε Τπεξεζηψλ Τγείαο» - 177 -- ΔΓΤ Μεηαπηπρηαθφ Πξφγξακκα «Γηνίθεζε Τπεξεζηψλ Τγείαο» - 177 -- 5. Σίηινο καζήκαηνο Δηζαγσγή ζηα παθέηα Λνγηζκηθνχ 6. Τπεχζπλνο καζήκαηνο Ησάλλεο Απνζηνιάθεο 7. θνπφο θνπφο ηνπ καζήκαηνο είλαη ε εμνηθείσζε

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

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ.. ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου έλαξμεο 09.30 ιήμεο 09.45 Σην παξαθάησ ζρήκα θαίλεηαη ηκήκα ελόο πνιενδνκηθνύ ζρεδίνπ κηαο πόιεο. Οη ζθηαζκέλεο

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

Γραφεύα Επικοινωνύασ & Ενημϋρωςησ ϋρρεσ, Τψηλϊντου 4 3οσ Όροφοσ ΣΗΛ 2321023640 ΥΑΦ 2321051861

Γραφεύα Επικοινωνύασ & Ενημϋρωςησ ϋρρεσ, Τψηλϊντου 4 3οσ Όροφοσ ΣΗΛ 2321023640 ΥΑΦ 2321051861 Οπγάνωζη και διοίκηζη ηοςπιζηικών επισειπήζεων (ξενοδοσεία, ηοςπιζηικά γπαθεία ) Α) ΑΔΙ ΣΔΙ και Β) ΑΠΟΦΟΙΣΟΙ ΤΠΟΥΡΔΩΣΙΚΗ ΓΔΤΣΔΡΟΒΑΘΜΙΑ και ΜΔΣΑΓΔΤΣΔΡΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ Ρν πξόγξακκα απηό ζρεδηάζηεθε γηα

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

ΘΔΜΑ 1 ο Μονάδες 5,10,10

ΘΔΜΑ 1 ο Μονάδες 5,10,10 ΟΝΟΜΑΣΔΠΩΝΤΜΟ ΗΜΔΡΟΜΗΝΙΑ ΘΔΜΑ 1 ο Μονάδες 5,1,1 ΓΙΑΓΩΝΙΜΑ 1 ου ΜΔΡΟΤ ΣΗ ΑΝΑΛΤΗ Α Γώζηε ηνλ νξηζκό ηεο αληίζηξνθεο ζπλάξηεζεο Β Γείμηε όηη αλ κηα ζπλάξηεζε είλαη αληηζηξέςηκε ηόηε νη γξαθηθέο παξαζηάζεηο

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

ΔΝΓΔΙΚΤΙΚΔΣ ΛΥΣΔΙΣ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ ΚΑΤΔΥΘΥΝΣΗΣ Γ ΛΥΚΔΙΟΥ ΓΔΥΤΔΡΑ 27 ΜΑΪΟΥ 2013

ΔΝΓΔΙΚΤΙΚΔΣ ΛΥΣΔΙΣ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ ΚΑΤΔΥΘΥΝΣΗΣ Γ ΛΥΚΔΙΟΥ ΓΔΥΤΔΡΑ 27 ΜΑΪΟΥ 2013 ΔΝΓΔΙΚΤΙΚΔΣ ΛΥΣΔΙΣ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ ΚΑΤΔΥΘΥΝΣΗΣ Γ ΛΥΚΔΙΟΥ ΓΔΥΤΔΡΑ 7 ΜΑΪΟΥ 13 ΘΔΜΑ Α : (Α1) Σρνιηθό βηβιίν ζειίδα 33-335 (Α) Σρνιηθό βηβιίν ζειίδα 6 (Α3) Σρνιηθό βηβιίν ζειίδα (Α) α) Λάζνο β) Σωζηό γ) Σωζηό

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

4) Να γξάςεηε δηαδηθαζία (πξόγξακκα) ζηε Logo κε όλνκα θύθινο πνπ ζα ζρεδηάδεη έλα θύθιν. Λύζε Γηα θύθινο ζηθ επαλάιαβε 360 [κπ 1 δε 1] ηέινο

4) Να γξάςεηε δηαδηθαζία (πξόγξακκα) ζηε Logo κε όλνκα θύθινο πνπ ζα ζρεδηάδεη έλα θύθιν. Λύζε Γηα θύθινο ζηθ επαλάιαβε 360 [κπ 1 δε 1] ηέινο Λσμένες αζκήζεις ζηη Logo Στεδίαζη ζτημάηων με ηη τελώνα 1) Να γξάςεηε δηαδηθαζία (πξόγξακκα) ζηε Logo κε όλνκα ηεηξάγσλν πνπ ζα ζρεδηάδεη έλα ηεηξάγσλν κε πιεπξά 120. Γηα ηεηξάγσλν επαλάιαβε 4 [κπ 120

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

Ηλεκηπονικά Απσεία και Διεπαθέρ

Ηλεκηπονικά Απσεία και Διεπαθέρ MENU ΑΝΑΦΟΡΕΣ Ηλεκηπονικά Απσεία και Διεπαθέρ Σε απηό ην ζεκείν ηεο εθαξκνγήο δεκηνπξγνύκε ηα δηάθνξα Ηιεθηξνληθά Αξρεία έηζη ώζηε λα ηα ππνβάινπκε ζηνπο δηάθνξνπο θνξείο. Γηα λα επηιέμνπκε έλα είδνο αξρείνπ

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