ΠΣΤΧΙΑΚΗ ΕΡΓΑΙΑ. υγγραφι οδθγοφ καταςκευισ ενόσ Joomla Component και ανάπτυξθ εφαρμογισ για τθν ενοικίαςθ δωματίων βαςιςμζνθ ςε αυτό.

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

Download "ΠΣΤΧΙΑΚΗ ΕΡΓΑΙΑ. υγγραφι οδθγοφ καταςκευισ ενόσ Joomla Component και ανάπτυξθ εφαρμογισ για τθν ενοικίαςθ δωματίων βαςιςμζνθ ςε αυτό."

Transcript

1 ΠΣΤΧΙΑΚΗ ΕΡΓΑΙΑ υγγραφι οδθγοφ καταςκευισ ενόσ Joomla Component και ανάπτυξθ εφαρμογισ για τθν ενοικίαςθ δωματίων βαςιςμζνθ ςε αυτό. Σθσ φοιτιτριασ Χατηθαναςταςίου Μαγδαλθνισ Επιβλζπων κακθγθτισ: Δρ.ΚλεφτοφρθσΔθμιτριοσ Αρ. Μθτρώου: 04/2541 1

2 ΠΙΝΑΚΑ ΠΔΡΙΔΥΟΜΔΝΩΝ ΕΙΑΓΩΓΗ... 4 ΚΕΦΑΛΑΙΟ φςτημα Διαχείριςησ Περιεχομζνου Σρόποσ λειτουργίασ τόχοι Δυο ςημαντικζσ ιδιότητεσ Πρόςθετα χαρακτηριςτικά Πλεονεκτήματα ενόσ CMS Μειονεκτήματα ενόσ CMS φγκριςη υςτημάτων Διαχείριςησ Περιεχομζνου Σο κοινό χαρακτηριςτικό φγκριςη των δημοφιλζςτερων CMSs Ελεφθερο λογιςμικό Οριςμόσ Ελεφθερου λογιςμικοφ Άδειεσ ελεφθερου λογιςμικοφ Πλεονεκτήματα χρήςησ Μειονεκτήματα χρήςησ Επιλογή του CMS Joomla! Σρόποσ λειτουργίασ Ποφ χρηςιμοποιείται Επζκταςη του Joomla! Οριςμόσ Οι λόγοι επζκταςησ τησ Joomla Προςαρμογή εναντίον τησ επζκταςησ Σρόποι επζκταςησ του Joomla! ΚΕΦΑΛΑΙΟ Οριςμοί Εγκατάςταςη Προετοιμαςία εγκατάςταςησ Εγκατάςταςη μζςω του περιηγητή Δομή ενόσ Component Εκτελώντασ το Component Διαχωριςμόσ μεταξφ frond-end και back-end

3 2.7 Καταχώρηςη του componentςτη βάςη δεδομζνων (Registering) Δημιουργώντασ Toolbars Κουμπιά εργαλειοθήκησ Ανάπτυξη του Back-end Δημιουργώντασ μια κλαςη Σable Δημιουργώντασ τη φόρμα Review Επεξεργαςία δεδομζνων Δημιουργία λίςτασ με τα δεδομζνα τησ βάςησ Ανάπτυξη του Front-end υγκζντρωςη των reviews Εμφάνιςη των reviews ΑΝΑΦΟΡΕ

4 ΕΙΑΓΩΓΗ Η παξνχζα εξγαζία έρεη σο ζθνπφ λα ζπζηήζεη ζηνπο ρξήζηεο ηα πζηήκαηα Γηαρείξηζεο Πιεξνθνξηψλ, παξνπζηάδνληαο ηα πιενλεθηήκαηά ηνπο θαη ηνπο ηξφπνπο πνπ κπνξνχλ λα ρξεζηκνπνηεζνχλ ψζηε λα ζπκβάινπλ ζηελ πξνβνιή επηρεηξήζεσλ δηεζλψο κέζσ ηνπ δηαδηθηχνπ. Σαπηφρξνλα, ηα ζπζηήκαηα απηά δηεπθνιχλνπλ ηνλ πξνγξακκαηηζηή θαη θάζε αλεηδίθεπην ρξήζηε θαηά ηελ αλάπηπμε ελφο ηζηνρψξνπ, ράξε ζηελ ηππνπνηεκέλε κνξθή ηνπο θαη ηα ήδε ππάξρνληα ζηελ αγνξά, δσξεάλ θνκκάηηα θψδηθα γηα ζπγθεθξηκέλε ρξήζε, ηα ιεγφκελα ζπζηαηηθά ή components, αλάινγα θάζε θνξά κε ηελ απαίηεζε ηεο εθαξκνγήο ηνπ. ηε ζπλέρεηα επηιέγεηαη γηα ηελ εξγαζία καο ην χζηεκα Γηαρείξηζεο Πιεξνθνξηψλ Joomla, θαζψο ελδείθλπηαη γηα θαηαζθεπή ηζηνζειίδσλ πνπ αθνξνχλ πξνβνιή, είλαη εχρξεζην θαη παξέρεη ηθαλνπνηεηηθή ππνζηήξημε ζηνλ πξνγξακκαηηζηή θαη ζην ρξήζηε, θαη ηέινο έρεη σξαία γξαθηθά πεξηβάιινληα θαη θαηαλνεηά κελνχ. Η εξγαζία απνηειείηαη νπζηαζηηθά απφ δχν ηκήκαηα, πέξαλ ηνπ ζεσξεηηθνχ ππφβαζξνπ. Σν πξψην είλαη ν νδεγφο θαηαζθεπήο ελφο component, ελψ ζην δεχηεξν αλαπηχζζεηαη θαη πεξηγξάθεηαη κηα ελδεηθηηθή εθαξκνγή κε βάζε ηνλ νδεγφ θαηαζθεπήο. ην πξψην ηκήκα, πεξηγξάθεηαη βήκα πξνο βήκα ε θαηαζθεπή θαη ε νλνκαζία ησλ αξρείσλ πνπ ζα δεκηνπξγήζεη ν ρξήζηεο-πξνγξακκαηηζηήο, πεξηιακβάλνληαη ηα θνκκάηηα θψδηθα πνπ ρξεζηκνπνηνχληαη ζε θάζε πεξίπησζε, αθνχ κηα ηέηνηα θαηαζθεπή είλαη πιένλ ηππνπνηεκέλε, θαη γίλεηαη μεθάζαξα ν δηαρσξηζκφο ησλ δχν κνλνπαηηψλ πνπ απνηεινχλ ηε δηαδηθαζία αλάπηπμεο ελφο ηζηνρψξνπ, απηά ηνπ πξνγξακκαηηζκνχ θαη ηνπ ηξφπνπ εκθάληζεο. θνπφο απηνχ ηνπ κέξνπο είλαη λα κπνξέζεη θάπνηνο πξνγξακκαηηζηήο, ρσξίο απαξαίηεηα λα έρεη δεκηνπξγήζεη ζην παξειζφλ θάηη αληίζηνηρν, λα θηηάμεη απφ ην κεδέλ έλα απιφ 4

5 component, κε ηε ρξήζε ηνπ θψδηθα, ησλ νδεγηψλ, θαη ησλ εληνιψλ πνπ πεξηγξάθνληαη. Σν δεχηεξν ηκήκα αθνξά ηελ εθαξκνγή πνπ θαηαζθεπάζηεθε κε βάζε ηνλ νδεγφ. Γεκηνπξγήζεθε έλα component, πνπ πξαγκαηεχεηαη ηελ δηαδηθαζία θξάηεζεο δσκαηίσλ ζε κηα ηνπξηζηηθή επηρείξεζε. Η εθαξκνγή απεηθνλίδεη ζηνλ επηζθέπηε ηεο ζειίδαο, κηα θφξκα κε επηινγέο φπσο ε πηζαλή εκεξνκελία θξάηεζεο θαη ν ηχπνο δσκαηίνπ, θαη ζχκθσλα κε ηηο εθάζηνηε επηινγέο ην ζχζηεκα πξαγκαηνπνηεί ηε δηαδηθαζία θαη επηζηξέθεη ελεκέξσζε κε γξαπηά κελχκαηα. Οη ιφγνη πνπ σζνχλ ζηε δεκηνπξγία κηαο ηέηνηαο εθαξκνγήο είλαη αξθεην. Αξρηθά ε ηερλνινγία έρεη γίλεη αλαπφζπαζην θνκκάηη ηεο θαζεκεξηλφηεηάο καο θαη ηελ επηδεηνχκε ψζηε λα θάλεη ηελ δσή καο επθνιφηεξε. Δπηπιένλ, ην δηαδίθηπν ρξεζηκνπνηείηαη γηα ηελ παξακηθξή δηεπθφιπλζε ελφο πνιχ κεγάινπ κέξνπο πνιηηψλ αιιά θαη επηρεηξήζεσλ θαη θαη επέθηαζε ε αγνξά θαη ρξήζε ησλ ςεθηαθψλ ηερλνινγηψλ θαη ππεξεζηψλ νδεγείηαη απφ ην απηφ. Πνιιέο επηρεηξήζεηο ζέινπλ λα απμήζνπλ ηελ πξνβνιή ηνπο ή λα επεθηαζνχλ δηεζλψο θαη ηε ιχζε έξρεηαη λα δψζεη ην ίληεξλεη. Γηα παξάδεηγκα, κηα ηνπξηζηηθή κνλάδα φπσο είλαη έλα μελνδνρείν ζα κπνξνχζε λα έρεη κεγάιν φθεινο απφ έλα ηέηνην ειεθηξνληθφ εγρείξεκα. Αξρηθά, απιά θαη κφλν κε ηελ πξνβνιή ηεο κέζσ ηνπ δηαδηθηχνπ, απηφκαηα ζπζηήλεηαη ζε πεξηζζφηεξν θφζκν θαη ζε παγθφζκηα θιίκαθα, γίλεηαη αλαγλσξίζηκε, πξνβάιινληαο ζηνηρεία φπσο ηελ ηνπνζεζία ηεο, ηνπο εζσηεξηθνχο ρψξνπο, ην πεξηβάιινλ ηεο θαη ηα πιενλεθηήκαηά ηεο. ηε ζπλέρεηα, θάηη πνπ ζα νινθιήξσλε κηα ηέηνηα πξνζπάζεηα ηεο επηρείξεζεο γηα πξνβνιή, ζα ήηαλ λα δεκηνπξγήζεη έλα ειεθηξνληθφ ζχζηεκα γηα θξαηήζεηο δσκαηίσλ, πνπ ζα κπνξνχζε λα είλαη επέιηθην, αλάινγα κε ηηο αλάγθεο ηνπ μελνδνρείνπ. Γηα λα θάλεη θάηη ηέηνην, νη ηξφπνη είλαη είηε λα επελδχζεη ζην λα ηεο θηηάμεη έλαο πξνγξακκαηηζηήο έλαλ ηζηνρψξν, είηε λα δηαθεκίδεηαη κέζσ άιισλ εκπνξηθψλ εηαηξηψλ πνπ θάλνπλ θξαηήζεηο θαη πξνζθνξέο θαη λα πιεξψλεη έλα πνζνζηφ, είηε λα θηηάμεη κε έλα χζηεκα Γηαρείξηζεο Πεξηερνκέλνπ κηα ηζηνζειίδα θαη ζηε ζπλέρεηα λα πξνζζέζεη κία έηνηκε επέθηαζε γηα ειεθηξνληθέο θξαηήζεηο. Καη ζηνπο ηξεηο παξαπάλσ ηξφπνπο, είλαη πνιχ πηζαλφ λα ρξεζηκνπνηεζεί έλα ηέηνην έηνηκν extension, ην νπνίν ππάξρεη ζην δηαδίθηπν θαη κπνξεί λα είλαη commercial ή non-commercial. Αθξηβψο γηα ην ιφγν απηφ, επεηδή νη αλάγθεο ησλ μελνδνρείσλ είλαη ηέηνηεο πνπ θάλνπλ επηηαθηηθή πιένλ ηελ ρξήζε ηεο ειεθηξνληθήο θξάηεζεο (ebooking), ζηελ εξγαζία απηή, επηιέμακε λα δεκηνπξγήζνπκε κία ηέηνηα θαηαζθεπή. Η πινπνίεζε ηεο εθαξκνγήο έγηλε ζε γιψζζα πξνγξακκαηηζκνχ PHP, o web server πνπ ρξεζηκνπνηήζεθε είλαη ν Uniform Server, ελψ ε βάζε δεδνκέλσλ είλαη ε MySQL θαη ηέινο, είλαη ζπκβαηή γηα ρξήζε ζε φιεο ηηο εθδφζεηο 1.5 ηεο πιαηθφξκαο ηνπ Joomla. 5

6 ΚΕΦΑΛΑΙΟ χζηεκα Γηαρείξηζεο Πεξηερνκέλνπ Σν χζηεκα Γηαρείξηζεο Πεξηερνκέλνπ (Content Management System, CMS), είλαη έλα πξφγξακκα εηδηθά ζρεδηαζκέλν γηα ηε δηαρείξηζε ηζηφηνπσλ. Γεκηνπξγείηαη απφ ηνπο ζρεδηαζηέο ηζηνζειίδσλ, αιιά πξννξίδεηαη γηα ρξήζε απφ ηειηθνχο ρξήζηεο. Αξρηθά, πξνζθέξεη έλαλ εχθνιν θαη εχρξεζην ηξφπν ελεκέξσζεο πεξηερνκέλνπ. Απηφ ζπλήζσο γίλεηαη κε ηε ρξήζε ελφο ζπζηήκαηνο πινήγεζεο (browser). Ο ρξήζηεο απιά εηζάγεη ην λέν θείκελν θαη ην απνζεθεχεη. Η ηζηνζειίδα ελεκεξψλεηαη ακέζσο. Σν ίδην απιφ είλαη λα πξνζηεζνχλ λέεο ζειίδεο, λα δηαγξαθνχλ παιηέο, ή λα αλαδηακνξθσζεί κηα ηζηνζειίδα ψζηε λα ζπκβαδίδεη κε λέεο απαηηήζεηο ή πξνδηαγξαθέο. 1.2 Σξφπνο ιεηηνπξγίαο Έλα χζηεκα Γηαρείξηζεο Πεξηερνκέλνπ, ιεηηνπξγεί απνζεθεχνληαο θείκελν θαη εηθφλεο κέζα ζε κία βάζε δεδνκέλσλ. Κάζε θνξά πνπ δεηείηαη κηα ηζηνζειίδα, ην CMS εηζρσξεί ζηα δεδνκέλα ηεο βάζεο θαη εκθαλίδεη ηελ ηζηνζειίδα. Δπεηδή ηα δεδνκέλα είλαη μερσξηζηά απφ ηνλ θψδηθα, αιιαγέο ζηα δεδνκέλα κπνξνχλ λα γίλνπλ ρξεζηκνπνηψληαο απιά ηε δηεπηθάλεηα ρσξίο λα απαηηνχληαη απφ ην ρξήζηε γλψζεηο html θαη ftp. 1.3 ηφρνη Έλα χζηεκα Γηαρείξηζεο Πεξηερνκέλνπ είλαη κηα ζπιινγή απφ δηαδηθαζίεο πνπ ρξεζηκνπνηνχληαη πξνθεηκέλνπ λα δηαρεηξίδνληαη ηε ξνή ησλ εξγαζηψλ ζε έλα ζπλεξγαηηθφ πεξηβάιινλ. Απηέο νη δηαδηθαζίεο κπνξνχλ λα είλαη ρεηξνθίλεηεο ή βαζηζκέλεο ζηνλ ππνινγηζηή θαη ζρεδηάζηεθαλ γηα λα πξαγκαηνπνηνχλ ηα παξαθάησ: Να αθήλνπλ έλα κεγάιν αξηζκφ αλζξψπσλ λα κνηξάδνληαη απνζεθεπκέλα δεδνκέλα Να ειέγρνπλ ηελ είζνδν ζηα δεδνκέλα, βαζηδφκελεο ζην ξφιν ησλ ρξεζηψλ θαη ηα δηθαηψκαηα ηνπο (θαζνξίδνληαο πνηεο πιεξνθνξίεο ν ρξήζηεο ή κηα νκάδα ρξεζηψλ κπνξεί λα δεη, λα επέκβεη ζε απηή, λα δεκνζηνπνηήζεη θηι) θνπφο ηνπο είλαη ε εχθνιε απνζήθεπζε θαη αλάθηεζε δεδνκέλσλ Να κεηψλνπλ επαλαιακβαλφκελεο θαη δηπιφηππεο πιεξνθνξίεο πνπ κπνξεί λα έρνπλ εηζαρζεί 6

7 Να δηαηεξείηαη ε ηζηνζειίδα θαιά νξγαλσκέλε ψζηε λα γίλεηαη θαηαλνεηφ ην πεξηερφκελν πνπ έρεη λα πξνζθέξεη Να αλαπηχμνπλ ηελ επηθνηλσλία κεηαμχ ησλ ρξεζηψλ 1.4 Γπν ζεκαληηθέο ηδηφηεηεο ε έλα CMS ηα δεδνκέλα κπνξνχλ λα νξηζηνχλ ζρεδφλ κε νπνηνλδήπνηε ηχπν: έγγξαθα, ηαηλίεο, εηθφλεο, ηειεθσληθνί αξηζκνί, επηζηεκνληθνχ πιηθνχ δεδνκέλα θα. Σα CMS ζπρλά ρξεζηκνπνηνχληαη γηα λα απνζεθεχζνπλ, ειέγμνπλ, αλαζεσξήζνπλ θαη δηνξζψζνπλ θάπνην παιηφ πεξηερφκελν, λα εκπινπηίζνπλ ζεκαζηνινγηθά, θαη λα δεκνζηεχζνπλ ηεθκεξηψζεηο θαη έγγξαθα. Λεηηνπξγψληαο ζαλ κηα θεληξηθή απνζήθε ζεκαληηθψλ θαη πινχζησλ γλψζεσλ, ην CMS κε ην ζεκαληηθφ έιεγρν Version control πνπ δηαζέηεη έρεη ηε δπλαηφηεηα, είηε λα αθήζεη ην πεξηερφκελν ελφο ήδε ππάξρνληνο αξρείνπ λα ελεκεξσζεί ζε κηα θαηλνχξηα έθδνζε, είηε λα επηζηξέςεη ζε κία παιαηφηεξε έθδνζε. Δπίζεο κπνξεί λα εληνπίζεη νπνηαδήπνηε αιιαγή έρεη γίλεη ζε αξρεία απφ άηνκα. Σν Version control είλαη έλα απφ ηα θπξίαξρα πιενλεθηήκαηα ελφο CMS. Μηα αθφκε δπλαηφηεηα πνπ πξνζθέξεη έλα CMS είλαη ην indexing-απνδειηίσζε, θαηά ην νπνίν φια ηα δεδνκέλα πεξληνχληαη ζε έλα θαηάινγν (πρ ζε έλαλ νξγαληζκφ), ψζηε νη ρξήζηεο λα ςάρλνπλ ηα δεδνκέλα πνπ ηνπο ελδηαθέξνπλ ρξεζηκνπνηψληαο ιέμεηο θιεηδηά ηηο νπνίεο ην CMS γλσξίδεη λα αλαθηά. Έλα δηαδηθηπαθφ CMS (web CMS) είλαη έλα CMS πνπ ζρεδηάζηεθε γηα λα απινπνηήζεη ηελ δεκνζίεπζε δηαδηθηπαθνχ πιηθνχ ζε ηζηνζειίδεο θαη θνξεηέο ζπζθεπέο, κεξηθψο κε ηξφπν ψζηε λα δίλεη ηε δπλαηφηεηα ζε δεκηνπξγνχο λα δεκηνπξγνχλ, επηβεβαηψλνπλ θαη δηαρεηξίδνληαη πεξηερφκελα, ρσξίο λα απαηηείηαη λα έρνπλ νη ίδηνη ηηο ηερληθέο γλψζεηο θακηάο δηαδηθηπαθήο γιψζζαο πξνγξακκαηηζκνχ ή Hypertext Markup languages φπσο είλαη ε HTML θαη ρσξίο λα αζρνιεζνχλ κε ην uploading ησλ αξρείσλ. Πνιιά webbased CMS θαηαηάζζνληαη ζηα Αλνηρηά Λνγηζκηθά ή ππάξρνπλ σο εκπνξηθά πξντφληα ζε αληίζηνηρεο ηζηνζειίδεο. 7

8 1.5 Πξφζζεηα ραξαθηεξηζηηθά Δθηφο απφ ηα παξαπάλσ βαζηθά ραξαθηεξηζηηθά θαη ηδηφηεηεο, ην ζχζηεκα επίζεο ζα ήηαλ θαιφ: λα ρξεζηκνπνηεί θάπνηνπ είδνπο κεραληζκφ αζθάιεηαο γηα λα ζηακαηά ηνπο αλαξκφδηνπο ρξήζηεο απφ ην λα ρεηξίδνληαη θαη λα ηξνπνπνηνχλ ην πεξηερφκελν λα παξέρεη ρξνλνδηάγξακκα γηα λα ειέγρεη πφηε ην πεξηερφκελν εκθαλίδεηαη λα ρξεζηκνπνηεί templates γηα ηε δεκνζηνπνίεζε ηνπ πεξηερνκέλνπ ηεο ζειίδαο ζε έλα ηππνπνηεκέλν θνξκάη, ψζηε λα δηαηεξείηαη έλα ζπγθεθξηκέλν πξνθίι θαη αίζζεζε ζε φιν ηνλ ηζηφηνπν. λα πξνζθέξεη ηε δπλαηφηεηα ηεο εμαηνκίθεπζεο ζην ρξήζηε, ψζηε λα θέξλεη ζηα κέηξα ηνπ ην πεξηερφκελν θαη ζπγθεθξηκέλα ηνλ ηξφπν πνπ απηφ εκθαλίδεηαη, ψζηε λα πξνζαξκφδεηαη ζηηο απαηηήζεηο θαη αλάγθεο ηεο εξγαζίαο ηνπ. Δπίζεο, έλα CMS κπνξεί λα παξέρεη εξγαιεία γηα εμαηνκηθεπκέλν καξθεηηλγθ. Απηή ε έλλνηα βαζίδεηαη ζηελ ηθαλφηεηα κηαο ηζηνζειίδαο λα δηαθεκίδεη κε βάζε ζπγθεθξηκέλα ραξαθηεξηζηηθά ηνπ ρξήζηε, ρξεζηκνπνηψληαο πιεξνθνξίεο πνπ παξέρνληαη απφ ηνλ ρξήζηε ή ζπγθεληξψλνληαη απφ ηελ ίδηα ηελ ηζηνζειίδα θαη απνθαιχπηνπλ ηηο ζπλήζεηεο ηνπ ρξήζηε. Γηα παξάδεηγκα, φηαλ θάπνηνο επηζθέπηεο επηζθεθζεί κηα κεραλή αλαδήηεζεο θαη ςάμεη γηα έλα ζπγθεθξηκέλν αληηθείκελν, ηφηε ηα δηαθεκηζηηθά πιαίζηα πνπ βξίζθνληαη ζηε ζειίδα ζα εκθαλίζνπλ επηρεηξήζεηο πνπ πνπιάλε απηφ ην αληηθείκελν θαη άιια παξεκθεξή πξντφληα (πρ απηνθίλεηα). 8

9 1.6 Πιενλεθηήκαηα ελφο CMS 1. Γηαρσξηζκφο ζρεδίαζεο, δνκή θαη πεξηερνκέλνπ(design, structure, content) Ο δηαρσξηζκφο απηψλ ησλ ηξηψλ επηπέδσλ παξέρεη πνιιά πιενλεθηήκαηα θαζ φιε ηελ εμέιημε κηαο ηζηνζειίδαο (life cycle). Κάζε πεξηνρή ηεο ζειίδαο κπνξεί λα επαλαδεκηνπξγεζεί θαη λα πξνζαξκνζηεί αλεμάξηεηα απφ ηηο ππφινηπεο πεξηνρέο. Σν ζρεδηαζηηθφ επίπεδν (design layer) κπνξεί λα είλαη εληειψο αλαζεσξεκέλν θαη μαλαδνπιεκέλν, κε θαηλνχξηα εκθάληζε θαη ρξψκαηα γηα κηα λέα δηεπηθάλεηα ρξήζηε ρσξίο ηελ αλάγθε γηα θακία πξνζαξκνγή ζην επίπεδν ηεο δνκήο (structure) ή ηνπ πεξηερνκέλνπ (content). Η δνκή κπνξεί λα ξπζκηζηεί γηα επηπιένλ ιεηηνπξγηθφηεηα ρσξίο θαη εδψ φπσο θαη πξηλ λα απαηηνχληαη αιιαγέο ζηε ζρεδίαζε ή ζην πεξηερφκελν. Σν πεξηερφκελν κπνξεί λα αιιαρζεί δίρσο ηελ αλάγθε λα πξνζαξκνζηεί ε front-end ζρεδίαζε ή ε ιεηηνπξγηθή δνκή. Ο δηαρσξηζκφο ησλ ηξηψλ απηψλ επηπέδσλ δεκηνπξγεί έλα δπλαηφ ραξαθηεξηζηηθφ ηνπ CMS, ηελ επειημία. 2. Παξαγσγή πεξηερνκέλνπ ρσξίο πξνγξακκαηηζηηθή ή ζρεδηαζηηθή εκπεηξία Δπηηξέπεη ζηνλ ζπληάθηε λα αιιειεπηδξά κε ηελ ηζηνζειίδα κε δηάθνξνπο ηξφπνπο. Παξέρεη έλα γξαθηθφ πεξηβάιινλ ρξήζηε πνπ επηηξέπεη ζηνλ ζπληάθηε λα δεκηνπξγήζεη πεξηερφκελν, λα πξνζζέζεη θείκελν, εηθφλεο, multimedia αξρεία θαη πνιιά αθφκε. 3. Μεξηθά αθφκε πιενλεθηήκαηα είλαη: πληήξεζε Βαζίδεηαη ζε έλα ηππηθφ θπιινκεηξεηή (web browser), έηζη ην λα κπνξεί ν ρξήζηεο λα ζπληάμεη, λα δηνξζψζεη θαη γεληθά λα έρεη πξφζβαζε απφ νπνπδήπνηε θαη νπνηεδήπνηε, παξέρεη επειημία θαη κεηψλεη θάζε είδνπο θαζπζηεξήζεηο θαη ζπκθνξήζεηο. 9

10 Γηακνξθσκέλα δηθαηψκαηα θαη πεξηνξηζκνί πξφζβαζεο Οη ρξήζηεο έρνπλ πξνζδηνξηζκέλνπο ξφινπο θαη δηθαηψκαηα πνπ ηνπο εκπνδίδνπλ λα αιιάμνπλ πεξηερφκελα ζηα νπνία δελ έρνπλ εμνπζηνδφηεζε λα ην θάλνπλ. Γηαθπιάζζεηαη ε ζπλνρή ηεο ζρεδίαζεο Δπεηδή ην πεξηερφκελν απνζεθεχεηαη μερσξηζηά απφ ηε ζρεδίαζε, ην πεξηερφκελν φισλ ησλ ζπληαθηψλ παξνπζηάδεηαη κε ηνλ ίδην ηξφπν ζρεδίαζεο. Η πινήγεζε γελληέηαη θαη πξνζαξκφδεηαη απηφκαηα Σα κελνχ ηππηθά δεκηνπξγνχληαη απηφκαηα κε βάζε ην πεξηερφκελν ηεο βάζεο δεδνκέλσλ θαη νη ζχλδεζκνη (links) πνπ ηπρφλ ππάξρνπλ δελ ζα δείρλνπλ ζε ηζηνζειίδεο πνπ δελ ππάξρνπλ. Σν πεξηερφκελν είλαη απνζεθεπκέλν ζε κηα βάζε δεδνκέλσλ Κεληξηθή απνζήθεπζε ζεκαίλεη φηη ην πεξηερφκελν έρεη ηε δπλαηφηεηα λα επαλαρξεζηκνπνηεζεί ζε πνιιά κέξε ηεο ηζηνζειίδαο θαη λα πξνζαξκνζηεί εηδηθά γηα θάζε είδνπο ζπζθεπή (browser, θηλεηφ ηειέθσλν, εθηχπσζε). Γπλακηθφ πεξηερφκελν Δπεθηάζεηο φπσο forums, ςεθνθνξίεο, έξεπλεο, αλαδήηεζε, εηδεζενγξαθηθέο εθαξκνγέο, ειεθηξνληθέο αγνξέο είλαη θάπνηα ελδεηθηηθά Modules. πλεξγαζία Δλζαξξχλεηαη ε γξεγνξφηεξε ελεκέξσζε, ην αίζζεκα ππεπζπλφηεηαο εθφζνλ ην πεξηερφκελν πξέπεη λα είλαη εμνπζηνδνηεκέλν, θαη ηέινο, ε ζπλεξγαζία κεηαμχ ησλ ζπληαθηψλ. Υξνλνπξνγξακκαηηζκφο πεξηερνκέλνπ Η δεκνζίεπζε ηνπ πεξηερνκέλνπ κπνξεί ζπρλά λα γίλεηαη βάζε ρξφλνπ, δειαδή ην πεξηερφκελν λα είλαη θξπκκέλν θαη λα γίλεη ρξήζε ηνπ αξγφηεξα, ή λα απαηηείηαη ε είζνδνο ηνπ ρξήζηε δίλνληαο ην password ηνπ. 10

11 1.7 Μεηνλεθηήκαηα ελφο CMS 1. Σα CMS απαηηνχλ θαηαλάισζε πνιιψλ πφξσλ(resource hungry) Σν κεηνλέθηεκα ησλ ζπζηεκάησλ CMS είλαη φηη απαηηνχλ γηα ηε ιεηηνπξγία ηε ρξήζε πνιιψλ πφξσλ θαη πεγψλ πιεξνθνξηψλ. Οη servers ιεηηνπξγνχλ κε ηελ αλάγθε πάληνηε λα ππνζηεξίδνληαη απφ ηερληθνχο, θαη επηπιένλ απαηηείηαη αθφκε πεξηζζφηεξε κλήκε, επεμεξγαζηηθή ηθαλφηεηα θαη ππνζηήξημε ινγηζκηθνχ. Αθφκε θαη κηθξέο αιιαγέο ζηηο ξπζκίζεηο ελφο εμππεξεηεηή κπνξνχλ λα θάλνπλ νιφθιεξν ην ζχζηεκα ηνπ CMS λα απνηχρεη θαη ζαλ επαθφινπζν απηνχ ε ηζηνζειίδα λα κελ κπνξεί λα είλαη νξαηή ή λα πξνθιεζνχλ ιάζε ζε απνηειέζκαηα. CMS κε θαθνγξακκέλν θψδηθα ή CMS πνπ έρνπλ αλαπηπρζεί κε Access αληί γηα SQL ζα επηβξαδπλζνχλ κε ηελ αχμεζε ηνπ αξηζκνχ ησλ ρξεζηψλ. Αθφκε θαη θαινγξακκέλεο θαη δπλακηθέο ηζηνζειίδεο ζα απαζρνινχλ κεγαιχηεξν κέξνο ηεο CPU θαη πεξηζζφηεξε κλήκε ζε ζχγθξηζε κε ηελ ίδηα ηελ ηζηνζειίδα αλεπηπγκέλε φκσο κε HTML θψδηθα. 2. Σν hosting γηα έλα CMS θνζηίδεη αθξηβά Αλ πξαγκαηηθά έλαο πειάηεο, έλαο ρξήζηεο ή κηα εηαηξία ρξεηάδνληαη έλα αμηφπηζην CMS, ηφηε ζα πξέπεη λα πεξηκέλνπλ λα ηνπο θνζηίζεη αξθεηά ρξήκαηα γηα λα ην έρνπλ. Υσξίο ηερληθή ππνζηήξημε, θαηάιιειε δηαρείξηζε ησλ θνηλψλ ρψξσλ φπνπ θηινμελνχληαη θαη ππνζηήξημε ινγηζκηθνχ, ζα πξέπεη θάπνηνο λα πεξηκέλεη φηη ζα αληηκεησπίζεη πξνβιήκαηα. Ο ζπλδηαζκφο ηνπ γεγνλφηνο φηη έλα αμηφπηζην CMS απαηηεί κεγάιε θαηαλάισζε ζε πφξνπο κε ηελ αλάγθε λα ην εμππεξεηνχλ ηθαλνί θαη εηδήκνλεο ηερληθνί δηαηεξψληαο θαη αλαβαζκίδνληαο ην ινγηζκηθφ θαη ην πιηθφ, ζεκαίλεη φηη ην hosting ελφο CMS είλαη κηα αθξηβή δηαδηθαζία. 3. Σα CMS απαηηνχλ λα αλαβαζκίδνληαη σο πξνο ην ινγηζκηθφ Όπσο θαη νπνηνδήπνηε πξντφλ, έηζη θαη ηα CMS θάπνηα ζηηγκή κπνξνχλ λα ππνζηνχλ ππνηίκεζε σο πξνο ηηο δπλαηφηεηεο ηνπο. Γελ ππάξρνπλ εγγπήζεηο φηη ην CMS πνπ ζα αγνξάζεη θάπνηνο πειάηεο ζήκεξα ζα δνπιεχεη ζε ιίγα ρξφληα απφ ηψξα(αθφκε θαη ζε 5 ή 10), ρσξίο έλαλ πξνγξακκαηηζηή λα αθηεξψζεη ρξφλν ζε αλαβαζκίζεηο ψζηε λα ην θάλεη ζπκβαηφ κε ην ππάξρνλ αλαβαζκηζκέλν θαη αιιαγκέλν θάζε θνξά ινγηζκηθφ. Νέεο εθδφζεηο ησλ Windows, server software θαη ησλ office αθφκε ζα έρνπλ αληίθηππν ζηε ιεηηνπξγία ηνπ CMS. 11

12 4. Οη κεραλέο αλαδήηεζεο δε ηα ρεηξίδνληαη θαηάιιεια (limited SEO - Search Engine Optimization) Σν πιενλέθηεκα ηνπ λα δεκνζηεχζεηο κηα ηζηνζειίδα είλαη λα απνθηήζεηο ην επηπιένλ πιενλέθηεκα ηνπ λα εκθαλίδεηαη απηή ζηηο κεραλέο αλαδήηεζεο, φκσο δπζηπρψο έλα κεγάιν κεηνλέθηεκα πνιιψλ CMS ζπζηεκάησλ είλαη φηη δελ δε ηα ρεηξίδνληαη θαηάιιεια νη κεραλέο αλαδήηεζεο, φζνλ αθνξά ηνλ ηξφπν ηεο θαηάηαμήο ηνπο ζε θάπνην θαηάινγν ή ζέκα. Οη ηζηνζειίδεο πνπ πεξηέρεη έλαο CMS ηζηφηνπνο παξάγνληαη δπλακηθά. Απηφ ζπρλά ζεκαίλεη φηη νη URLS ησλ ηζηνζειίδσλ πεξηέρνπλ κεγάιεο ζπκβνινζεηξέο πνπ ζπλδηάδνπλ ιέμεηο, αξηζκνχο θαη ζχκβνια. Οη κεραλέο αλαδήηεζεο έρνπλ ζεκαληηθφ πξφβιεκα ζην λα αλαιχζνπλ ηηο δηεπζχλζεηο ηέηνηνπ είδνπο ζειίδσλ. Λίγνη δηαδηθηπαθνί πξνγξακκαηηζηέο ζα ελδηαθεξζνχλ λα κνξθνπνηήζνπλ ηνλ θψδηθα έηζη ψζηε λα θάλνπλ ηε κεραλή αλαδήηεζεο πην ζπκβαηή. Σα Meta tags πνπ είλαη αλαγθαία ψζηε λα δηαζθαιίδεηαη κηα θαιή θαηάηαμε ζηα απνηειέζκαηα κηαο αλαδήηεζεο, πνιχ ζπρλά θαη απηά κέλνπλ έμσ απφ ηέηνηνπ είδνπο ζειίδεο πνπ δεκηνπξγνχληαη δπλακηθά. 5. πληήξεζε ησλ απνηειεζκάησλ ησλ κεραλψλ αλαδήηεζεο (SEO maintenance) Μηαο θαη νη ζειίδεο πνπ έρνπλ δεκηνπξγεζεί κε CMS πεξηέρνπλ εθαηνληάδεο άιισλ ζειίδσλ κπνξεί λα είλαη δχζθνιε ππφζεζε ην λα βειηηζηνπνηεζνχλ. Γηα παξάδεηγκα ζα πάξεη αξθεηφ ρξφλν ε αιιαγή ησλ ιέμεσλ θιεηδηψλ γηα ηφζεο πνιιέο ειεθηξνληθέο ζειίδεο. Οη ιέμεηο θιεηδηά γηα κηα ειεθηξνληθή ζειίδα πξέπεη λα βειηηψλνληαη κε αθξίβεηα θαη λα κεηαβάιινληαη, ψζηε λα είλαη πάληα ζπκβαηέο θαη ζχγρξνλεο σο πξνο ηα ζεκεξηλά θάζε θνξά δεδνκέλα θαη λα αθνινπζνχλ ην ξπζκφ αιιαγήο ησλ αλαδεηήζεσλ πνπ θάλνπλ νη άλζξσπνη ζην πέξαζκα ησλ ρξφλσλ. 6. Καζπζηέξεζε ζηε θφξησζε Δμαηηίαο ηνπ γεγνλφηνο φηη έλαο ηζηφηνπνο ζε CMS είλαη βαζηζκέλνο θαη θαζνδεγνχκελνο απφ ηελ βάζε δεδνκέλσλ, ζα πξέπεη πάληα λα πεξηκέλνπκε ηνλ εμππεξεηεηή λα επεμεξγαζηεί ηηο ηζηνζειίδεο. Απφ ηε ζηηγκή πνπ ν αξηζκφο ηνπο αλέξρεηαη ζε εθαηνληάδεο απφ απηέο, είλαη πνιχ πηζαλφ λα αξγνχλ λα θνξησζνχλ. Απηφ ζα πξνθαιέζεη ην λα ραζνχλ επηζθέπηεο θαη πειάηεο, αθνχ φπσο νη πεξηζζφηεξνη ρξήζηεο ηνπ δηαδηθηχνπ έρνπλ ζχληνκν εχξνο πξνζνρήο. Γη απηφ ην ιφγν κία ηζηνζειίδα ζα έπξεπε λα ρξεηάδεηαη 12

13 κφλν κεξηθά δεπηεξφιεπηα γηα λα θνξηψζεη θαη λα αλαδείμεη ην πεξηερφκελφ ηεο ζηνλ επηζθέπηε. 7. Πεξηέρεη εθαηνληάδεο αξρεία Έλαο ηζηφηνπνο πνπ πεξηέρεη πνιιά αξρεία αθήλεη ηνλ εαπηφ ηνπ εθηεζεηκέλν ζε ζθάικαηα. Γηα παξάδεηγκα, έλαο πειάηεο αλαλεψλνληαο ηνλ ηζηφηνπν κπνξεί λα δεκηνπξγήζεη ζθάικαηα ( φπσο παξαδείγκαηνο ράξε θαηά ηελ εηζαγσγή εηθφλσλ πνπ ην κέγεζφο ηνπο είλαη πνιχ κεγάιν, θαηά ηελ εηζαγσγή αξρείσλ flash, javascript ή βίληεν) ην απνηέιεζκα ησλ νπνίσλ είλαη κηα νπζηαζηηθή κεηαβνιή ηνπ ηξφπνπ ζρεδίαζεο ηνπ template. Μπνξεί λα θνζηίζεη ζηνλ ζρεδηαζηή πνιιέο ψξεο λα βξεη ηελ αηηία ηνπ ζθάικαηνο πνπ πξνέθπςε κε ηέηνην ηξφπν. Τπάξρεη πηζαλφηεηα αθφκε θαη λα πάεη πίζσ λα μαλαζρεδηάζεη ηε ζειίδα φπσο ήηαλ αξρηθά, εηδηθά ζηελ πεξίπησζε φπνπ δελ είρε θξαηεζεί αληίγξαθν ησλ αξρείσλ σο back up. Κάηη ηέηνην ζα πξνθαινχζε απνγνήηεπζε ζηνλ ηδηνθηήηε ηνπ ηζηφηνπνπ αθνχ απηφο δελ ζα κπνξεί γηα θάπνην ρξνληθφ δηάζηεκα λα είλαη αλεβαζκέλνο ζην δηαδίθηπν. Μπνξεί αθφκε λα ράζεη φια ηα αξρεία ηα νπνία είρε δεκηνπξγήζεη θαη δεκνζηεχζεη θη έηζη λα ράζεη θαη ηνπο πειάηεο ηνπ θαη επηπιένλ λα πξέπεη κα θαηαλαιψζεη πνιχηηκν ρξφλν θαη ρξήκα πάιη απφ ηελ αξρή ψζηε λα δηνξζψζεη ηα ζθάικαηα πνπ πξνέθπςαλ. πκπεξαζκαηηθά, θαηαιαβαίλνπκε φηη πξηλ απνθαζίζεη θάπνηνο λα δεκηνπξγήζεη έλα ηέηνην ζχζηεκα γηα ηελ επηρείξεζή ηνπ, ζα πξέπεη λα πξνζδηνξίζεη πξνεγνπκέλσο ηηο αλάγθεο ηεο. Αλ ε επηρείξεζε είλαη κηθξή, φπνπ ζα ρξεηαζηνχλ ιηγφηεξεο ηζηνζειίδεο θαη φρη κεγάινο αξηζκφο, ηφηε ζπζηήλεηαη έλαο ζηαηηθφο ηζηνρψξνο (static site) αληί γηα CMS. Αληίζεηα ζηελ πεξίπησζε πνπ ε επηρείξεζε είλαη κεγάιε θαη έρεη εθαηνληάδεο ειεθηξνληθέο ζειίδεο, νη νπνίεο ζα ρξεηαζηεί λα πξνζηεζνχλ ή λα αλαλεψλνληαη ζπρλά απφ πνιιαπινχο ζπληάθηεο, ζα ήηαλ θαιχηεξν θαη πεξηζζφηεξν εμππεξεηηθφ λα δεκηνπξγήζεη έλα CMS site. Γεληθφηεξα πξνηείλεηαη ζε άηνκα ηα νπνία ελδηαθέξνληαη λα δεκηνπξγήζνπλ κηα ειεθηξνληθή ζειίδα ηελ νπνία ζα εκπινπηίδνπλ ζπρλά θαη ζα έρεη πνιιά πεξηερφκελα, αιιά δελ ζα ήζειαλ λα μνδέςνπλ ρξήκαηα ζε πξνγξακκαηηζηέο θαη ζρεδηαζηέο ηζηνζειίδσλ. Κάπνηα απφ ηα δεκνθηιέζηεξα Content Management Systems είλαη ηα εμήο: Joomla!, Drupal, Wordpress, Mambo, Typo3, Moodle, PhP-BB, PhP-nuke. 13

14 1.8 χγθξηζε πζηεκάησλ Γηαρείξηζεο Πεξηερνκέλνπ Όπσο αλαθέξζεθε ζην πξνεγνχκελν θεθάιαην, θάπνηα απφ ηα δεκνθηιέζηεξα απηή ηελ επνρή ζπζηήκαηα CMS ηεο αγνξάο είλαη ηα Joomla!, Drupal, Mambo, PhP-nuke, Wordpress. Έλα CMS, φπσο είλαη ηα Drupal, Joomla, Wordpress, αθαηξεί απφ ην πξνζθήλην ηελ αλάγθε γηα έλαλ ζρεδηαζηή ζειίδσλ θαη βάδεη ηνλ ρξήζηε ζηε ζέζε ηνπ θαζνδεγεηή. Απηφ πνπ θάλεη ην CMS ιεηηνπξγηθφ είλαη λα παξάγεη έλα ζηαζεξφ ζεη θψδηθα, δειαδή κηα πξνθαζνξηζκέλε βάζε, ην νπνίν ην πεξηβάιιεη έλα template-πξφηππν, ψζηε λα είλαη επθνιφηεξν θαη πην εχρξεζην απφ ηνλ ρξήζηε θαη ηνλ επηζθέπηε, θαη ζηε ζπλέρεηα φια απηά ηα κεηαθξάδεη σο κηα ηζηνζειίδα πεξηζζφηεξν θηιηθή θαη επαλάγλσζηε, πνπ φκσο έρεη δεκηνπξγεζεί εχθνια θαη είλαη εχθνια δηαρεηξίζηκε απφ ηνλ ρξήζηε. ε απηφ ην ζεκείν, ε πξφζζεζε απφ ηνλ ρξήζηε ειεθηξνληθψλ ζειίδσλ θαη πιεξνθνξηψλ ζε απηή ηελ πξνθαζνξηζκέλε βάζε, είλαη ηφζν εχθνιν πνπ γίλεηαη απιά ζπκπιεξψλνληαο θάπνηα textboxes θαη ηζεθάξνληαο checkboxes, ην θαζέλα απφ ηα νπνία είλαη ζε νξγαλσκέλε, εκθσιεπκέλε αλάινγα κε ην ζέκα θαη επθφισο αθνινπζνχκελε απφ ηνλ ρξήζηε δνκή. Αξρίδνληαο κε κηα βαζηθή δηαδηθαζία, απηή ηεο εγθαηάζηαζεο, έλα CMS θάλεη απιφ γηα νπνηνλδήπνηε λα δεκηνπξγήζεη θαη λα δηαρεηξηζηεί έλαλ ηζηφηνπν. Παξαθάησ αθνινπζεί κηα ζχγθξηζε νξηζκέλσλ απφ ηα πξναλαθεξζέληα CMSs, ψζηε ν ελδηαθεξφκελνο ρξήζηεο αλάινγα κε ηηο αλάγθεο πνπ έρεη λα επηιέμεη απηφ πνπ ζα ηνλ βνεζήζεη λα πξαγκαηνπνηήζεη ηνλ ζηφρν ηνπ, ρσξίο πεξηηηέο ιεηηνπξγίεο. 14

15 1.8.1 Σν θνηλφ ραξαθηεξηζηηθφ Καζέλα απφ απηά ηα εθπιεθηηθά ζπζηήκαηα είλαη δηαζέζηκα γηα ρξήζε απφ νπνηαδήπνηε επηρείξεζε ή αηνκηθή ρξήζε δσξεάλ. Δίλαη φια open source ζπζηήκαηα, πνπ αλαπηχζζνληαη θαη αλαλεψλνληαη ζηαζεξά απφ νκάδεο εζεινληψλ παγθνζκίσο. Με απηή ηελ ηδηαηηεξφηεηα, ην ιεηηνπξγηθφ δελ ζα είλαη πνηέ μεπεξαζκέλν θαη έμσ απφ ηα «ζεκεξηλά» δεδνκέλα (out of date), θαζψο νπνηαδήπνηε λέα ελεκέξσζε θαη πξφζζεηε ιεηηνπξγηθφηεηα ζα είλαη απηφ αθξηβψο πνπ ζέιεη θαη ρξεηάδεηαη ν ίδηνο ν θφζκνο. Η ππνζηήξημε γηα ην ιεηηνπξγηθφ έξρεηαη ζηνλ ρξήζηε ππφ ηε κνξθή κηαο ζπλνιηθήοθνηλνηηθήο πξνζπάζεηαο. Σν ζεκαληηθφηεξν είλαη φηη ην θαζέλα απφ απηά ηα ζπζηήκαηα παξέρεη ζηνλ ρξήζηε έλα εχρξεζην θαη εχθνια πξνζβάζηκν πεξηβάιινλ, πνπ θάλεη ην «ρηίζηκν» ελφο ηζηφηνπνπ αηθληδηαζηηθά απιή ππφζεζε. Δθφζνλ ηα ζπζηήκαηα απηά ζπλδηάδνπλ α έηνηκα ζέκαηα (θφλην) θαη πξφζζεηα (add-on) ραξαθηεξηζηηθά, δελ είλαη απαξαίηεηε ε αλάγθε ζρεδηαζηή ηζηνζειίδαο ή γξαθίζηα, αθνχ ν θαζέλαο κπνξεί λα δεκηνπξγήζεη κφλνο ηνπ. 15

16 1.8.2 χγθξηζε ησλ δεκνθηιέζηεξσλ CMSs Πίνακασ 1 φγκριςθ των δθμοφιλζςτερων ΔΠ Η Joomla! έρεη έλα εληππσζηαθφ βαζκφ ιεηηνπξγηθφηεηαο θαη είλαη πνιχ ηθαλνπνηεηηθή γηα εηαηξηθέο, εκπνξηθέο, αθφκε θαη γηα πξνζσπηθέο ειεθηξνληθέο ζειίδεο. Σν Drupal ιέγεηαη φηη έρεη ηε κεγαιχηεξε θακπχιε κάζεζεο απφ ηα 3 γλσζηφηεξα πζηήκαηα Γηαρείξηζεο Πεξηερνκέλνπ (βι. Joomla!, Wordpress, Drupal), θαη νη ρξήζηεο ηνπ ππνζηεξίδνπλ ηε ζπλνιηθή ηνπ δχλακε. Υξεζηκνπνηείηαη θπξίσο γηα community sites, forums, weblogs θαη εηαηξηθέο ηζηνζειίδεο. 16

17 Σν Wordpress έρεη γίλεη ε επηινγή γηα bloggers αλά ηνλ θφζκν. Έρνληαο δεκηνπξγεζεί απφ ρξήζηεο γηα ρξήζηεο, ην Wordpress θάλεη κηα εμαηξεηηθή δνπιεηά παίξλνληαο ηε ζχγρπζε θαη δεκηνπξγψληαο θαζ φια ιεηηνπξγηθέο ηζηνζειίδεο θαη weblogs. Η πινήγεζε είλαη πάληνηε εχθνιε θαη ακέηξεηέο ηδηφηεηεο κπνξνχλ λα πξνζηεζνχλ ζε κία ηέηνηα ηζηνζειίδα ζαλ πξφζζεηα (plugins). Σν Moodle είλαη είλαη έλα CMS πνπ ρξεζηκνπνηείηαη γηα λα δεκηνπξγεί θαη λα δεκνζηεχεη online καζήκαηα, φπσο επίζεο πξνζθέξεηαη θαη γηα ηζηνζειίδεο πνπ έρνπλ σο ζέκα ηελ ειεθηξνληθή εθκάζεζε (web-based learning websites). Σν φλνκά ηνπ ην έρεη πάξεη απφ ηα αξρηθά ησλ ιέμεσλ Modular Object-Oriented Dynamic Learning Environment, φκσο θαη ε ιέμε Moodle απφ κφλε ηεο ζεκαίλεη πεξλψ ηελ ψξα κνπ. Απηφ ην CMS είλαη θαηάιιειν γηα παλεπηζηήκηα, ζρνιεία θαη νξγαληζκνχο νη νπνίνη ρξεηάδνληαη λα δνπιεχνπλ κε κνλάδεο ειεθηξνληθήο κάζεζεο ζην δηαδίθηπν. 1.9 Διεχζεξν ινγηζκηθφ Οη ηζηνζειίδεο πνπ είλαη δεκηνπξγεκέλεο κε πζηήκαηα Γηαρείξηζεο Πεξηερνκέλνπ βαζίδνληαη ζε πξνγξακκαηηζηηθφ επίπεδν ζε θνκκάηηα θψδηθα ηα νπνία επαλαιακβάλνληαη ζε δηάθνξα ζεκεία κηαο ηέηνηαο ζειίδαο, φπσο επίζεο θαη ζε επεθηάζεηο πνπ θηηάρλνληαη απφ πξνγξακκαηηζηέο, δειαδή θψδηθα ν νπνίνο κπνξεί λα πξνζηεζεί ζηελ ηζηνζειίδα γηα λα βειηηψζεη ηε ιεηηνπξγηθφηεηα ή λα επεθηείλεη ην πεξηερφκελν ηεο, φπσο ζα δνχκε ζε επφκελν θεθάιαην. Σέηνηεο επεθηάζεηο επαγγεικαηηθέο ή εξαζηηερληθέο, δηαλέκνληαη ζην δηαδίθηπν θαη κπνξεί λα είλαη εκπνξεχζηκεο φπνπ ν ρξήζηεο ηηο αγνξάδεη ή λα δηακνηξάδνληαη γηα δσξεάλ ρξήζε. Γηα λα δεκηνπξγεζνχλ λέεο θαη βειηησκέλεο εθδφζεηο ηέηνησλ επεθηάζεσλ, είλαη επθνιφηεξν γηα ηνπο πξνγξακκαηηζηέο λα γξάςνπλ θψδηθα αθνινπζψληαο θάπνην πξνυπάξρνλ πξφηππν θψδηθα, ψζηε λα ηνπο ειαρηζηνπνηήζνπλ ην ρξφλν ζπγγξαθήο θαζψο ζα βειηηψλνπλ ηελ απνηειεζκαηηθφηεηά ηνπ. Όιεο νη επεθηάζεηο πνπ ππάξρνπλ ζην δηαδίθηπν είλαη αλνηρηνχ θψδηθα θαη επηηξέπεηαη λα ρξεζηκνπνηνχληαη θαη απηφ ηνλ ηξφπν, θάηη πνπ ζηε ζπλέρεηα βνεζάεη φιε ηελ θνηλφηεηα ρξεζηψλ θαη πξνγξακκαηηζηψλ πνπ αζρνινχληαη κε ηα πζηήκαηα Γηαρείξηζεο Πεξηερνκέλνπ. 17

18 1.9.1 Οξηζκφο Διεχζεξνπ ινγηζκηθνχ Σν ειεχζεξν ινγηζκηθφ φπσο νξίδεηαη απφ ην Ίδξπκα Διεπζέξνπ Λνγηζκηθνχ (Free Software Foundation), είλαη ινγηζκηθφ πνπ κπνξεί λα ρξεζηκνπνηεζεί, αληηγξαθεί, κειεηεζεί, ηξνπνπνηεζεί θαη αλαδηαλεκεζεί ρσξίο πεξηνξηζκφ θαη ρσξίο λα απαηηείηαη ε εμνπζηνδφηεζε ή θαηαβνιή θάπνηνπ αληηηίκνπ γηα απφθηεζε ηεο ζρεηηθήο άδεηαο. Η ειεπζεξία απφ ηέηνηνπο πεξηνξηζκνχο είλαη βαζηθφ ζηνηρείν ζηελ ηδέα ηνπ "ειεχζεξνπ ινγηζκηθνχ", έηζη ψζηε ην αληίζεην ηνπ ειεχζεξνπ ινγηζκηθνχ είλαη ην ηδηφθηεην ινγηζκηθφ, θαη φρη ην ινγηζκηθφ πνπ πσιείηαη γηα θέξδνο, φπσο ην εκπνξηθφ Άδεηεο ειεχζεξνπ ινγηζκηθνχ χκθσλα κε ηελ ηζρχνπζα λνκνζεζία πεξί πλεπκαηηθήο ηδηνθηεζίαο, ε ειεχζεξε αληηγξαθή, δηαλνκή θαη ηξνπνπνίεζε ηνπ ινγηζκηθνχ δελ επηηξέπεηαη. Γηα ην ιφγν απηφ, νη εθδφζεηο ειεχζεξνπ ινγηζκηθνχ θάλνπλ ρξήζε εηδηθήο άδεηαο ζχκθσλα κε ηελ νπνία, παξαρσξείηαη ην δηθαίσκα αληηγξαθήο, ηξνπνπνίεζεο θαη αλαδηαλνκήο ηνπ ινγηζκηθνχ, ζηνπο ρξήζηεο. Οη άδεηεο ρξήζεο ειεχζεξνπ ινγηζκηθνχ πεξηιακβάλνπλ ηηο εμήο ειεπζεξίεο: Διεπζεξία ρξήζεο ηνπ πξνγξάκκαηνο γηα νπνηνλδήπνηε ζθνπφ. Διεπζεξία κειέηεο θαη ηξνπνπνίεζήο ηνπ. Διεπζεξία αληηγξαθήο ηνπ. Διεπζεξία βειηίσζεο θαη επαλέθδνζήο ηνπ, πξνο ην ζπκθέξνλ ηεο θνηλφηεηαο ησλ ρξεζηψλ. Με βάζε απηή ηε θηινζνθία δεκηνπξγήζεθε κηα κεγάιε θνηλφηεηα ρξεζηψλ θαη πξνγξακκαηηζηψλ, νη νπνίνη ζπλεξγάδνληαη γηα ηε ζπλερή βειηίσζε ηνπ ινγηζκηθνχ, παξέρνληαο γλψζεηο θαη εξγαζία. ήκεξα ππάξρεη έλα παγθφζκην δίθηπν πξνγξακκαηηζηψλ πνπ θάλνπλ ρξήζε αλνηθηνχ θψδηθα, νη νπνίνη παξάιιεια αλαπηχζζνπλ θαη δηνξζψλνπλ ηνλ θψδηθα ησλ πξνγξακκάησλ, θπθινθνξψληαο λέεο βειηησκέλεο εθδφζεηο ινγηζκηθνχ Πιενλεθηήκαηα ρξήζεο Μείσζε θφζηνπο πιεξνθνξηαθψλ ζπζηεκάησλ Γελ αγνξάδνληαη άδεηεο ρξήζεο Γσξεάλ αλαλεψζεηο Απεξηφξηζηνο αξηζκφο εγθαηαζηάζεσλ 18

19 Γπλαηφηεηα ηδίαο παξακεηξνπνίεζεο θαη επέθηαζεο Γπλαηφηεηα ηδίαο ππνζηήξημεο Ύπαξμε πιεζψξαο επηινγψλ θαη δνθηκαζκέλσλ ιχζεσλ Πξνψζεζε ηνπ αληαγσληζκνχ ησλ εηαηξεηψλ ινγηζκηθνχ κε απνηέιεζκα θαιχηεξεο πξνζθεξφκελεο ππεξεζίεο Αμηνπηζηία, αθνχ ην ινγηζκηθφ είλαη δνθηκαζκέλν απφ πνιινχο θαη απνθεχγνληαη αξλεηηθέο εθπιήμεηο θαη ζθάικαηα Αζθάιεηα, αθνχ ν θψδηθαο κειεηάηαη απφ πιήζνο αλζξψπσλ, άξα ηα φπνηα θελά αζθάιεηαο εληνπίδνληαη θαη δηνξζψλνληαη κε κεγάιε ηαρχηεηα Μεηνλεθηήκαηα ρξήζεο Ληγφηεξεο επηινγέο επαγγεικαηηθήο ππνζηήξημεο. Αζπκβαηφηεηεο κε θάπνηα δηαδεδνκέλα θιεηζηά πξφηππα αξρείσλ. Έιιεηςε νξηζκέλσλ εμεηδηθεπκέλσλ εθαξκνγψλ Δπηινγή ηνπ CMS Joomla! χκθσλα κε πξνεγνχκελε ελφηεηα φπνπ έγηλε κηα ζχγθξηζή ησλ δεκνθηιέζηεξσλ πζηεκάησλ Γηαρείξηζεο Πεξηερνκέλνπ, ζα επηιέμνπκε ην Joomla γηα ηελ θαηαζθεπή ηνπ δηθνχ καο ηζηφηνπνπ, αθνχ καο θαιχπηνπλ ηα ραξαθηεξηζηηθά ηνπ, πξνηείλεηαη γηα αξράξηνπο θαη είλαη εχθνιν ζηελ εγθαηάζηαζε Σξφπνο ιεηηνπξγίαο Σν Joomla εγθαζίζηαηαη ζε έλαλ θεληξηθφ ππνινγηζηή, ηνλ web server. Ο δηαρεηξηζηήο έρεη πξφζβαζε ζην πεξηβάιινλ δηαρείξηζεο κέζσ ελφο browser. ηε ζπλέρεηα έρεη ηε δπλαηφηεηα λα πξνζζέζεη θείκελν, θσηνγξαθίεο ή επεθηάζεηο, θαη έηζη λα δηακνξθψζεη ηηο ηζηνζειίδεο. Κάζε ρξήζηεο ηνπ δηαδηθηχνπ έρεη ηε δπλαηφηεηα λα θαηεβάζεη ην ινγηζκηθφ θαη λα ην εγθαηαζηήζεη. Τπάξρνπλ δηαζέζηκνη ηζηφηνπνη ππνζηήξημεο, πνπ παξέρνπλ νδεγίεο εγθαηάζηαζεο, extensions αλνηρηνχ θψδηθα θαη ππνζηήξημε κέζα απφ ηηο νξγαλσκέλεο δηθηπαθέο θνηλφηεηεο, θαη κε απηφ ηνλ ηξφπν απμάλεηαη ε ιεηηνπξγηθφηεηα ηεο ηζηνζειίδαο θαη κπνξνχλ λα δεκηνπξγεζνχλ αθφκα θη εθαξκνγέο πνιχ αμηφπηζηεο γηα ηελ αλάπηπμε αθφκα θαη εηαηξηθψλ δηθηπαθψλ ηφπσλ. Σν Joomla κπνξεί λα ρξεζηκνπνηεζεί θαη απφ ρξήζηεο πνπ δελ θαηέρνπλ εμεηδηθεπκέλεο γλψζεηο. Ωζηφζν, αλάινγα κε ηηο απαηηήζεηο ηνπ 19

20 ηζηφηνπνπ πνπ επηζπκεί λα δεκηνπξγήζεη, ίζσο απαηηεζεί θαη ε ζπλδξνκή πην έκπεηξνπ πξνζσπηθνχ Πνχ ρξεζηκνπνηείηαη Σν Joomla απνηειεί ην θαηάιιειν εξγαιείν γηα ηελ αλάπηπμε δηαθφξσλ θαηεγνξηψλ ηζηνζειίδσλ, παξέρνληαο ζην δηαρεηξηζηή εχθνιε παξακεηξνπνίεζε κε ηε ρξήζε επεθηάζεσλ(extensions) φπσο: Παξνπζηάζεηο επηρεηξήζεσλ/ζπιιφγσλ Τπεξεζίεο θαηαιφγσλ Δπίδεημε εηθφλσλ (photo gallery) πλδξνκεηηθέο ππεξεζίεο Ηιεθηξνληθά θαηαζηήκαηα Πξνβνιή πξντφλησλ θαη ππεξεζηψλ Ξελνδνρεία, online θξαηήζεηο Πξνζσπηθά εκεξνιφγηα θαη βηνγξαθηθά Blogs, forums Ηιεθηξνληθέο εθδφζεηο πεξηνδηθψλ θαη εθεκεξίδσλ Μεζηηηθά γξαθεία Αγγειίεο 1.11 Δπέθηαζε ηνπ Joomla! Οξηζκφο Joomla! είλαη έλα αλνηρηνχ θψδηθα χηεκα Γηαρείξηζεο Πεξηερνκέλνπ πνπ ζρεδηάζηεθε γηα λα βνεζήζεη ηνπο ρξήζηεο ζηελ νηθνδφκεζε ηζηνρψξσλ θαη άιισλ online εθαξκνγψλ. Σν Joomla είλαη κηα ζπλέρεηα ηεο εξγαζίαο ηεο νκάδαο αλάπηπμεο πνπ παξαηηήζεθε νκφθσλα απφ ην πξφγξακκα Mambo ηνλ Απγνχζηνπ ηνπ Η έθδνζε Joomla 1.0 πξνέξρεηαη απφ Mambo αιιά πεξηιακβάλεη πνιιέο επηπιένλ δηνξζψζεηο θαη κεγαιχηεξν επίπεδν αζθάιεηαο. Σν φλνκα Joomla πξνέξρεηαη απφ ηε ζνπαρίιη ιέμε «Jumla», ε νπνία ζεκαίλεη «φια καδί» ή «ζπλνιηθά» (all together as a whole). Σν Joomla κπνξεί λα εγθαηαζηαζεί ρεηξνθίλεηα απφ ηνλ πεγαίν θψδηθα ζε έλα ζχζηεκα πνπ ηξέρεη έλαλ θεληξηθφ ππνινγηζηή δηθηχνπ (web server) πνπ ππνζηεξίδεη ηηο εθαξκνγέο PHP, απφ έλα ζχζηεκα δηαρείξηζεο ζπζθεπαζίαο ή ρξεζηκνπνηψληαο κία ζπζθεπή TurnKey Joomla πνπ πεξηιακβάλεη ηελ εθαξκνγή θαη ηηο εμαξηήζεηο ηεο σο έλα έηνηκν πξνο ρξήζε ζχζηεκα. 20

21 Σν Joomla είλαη γξακκέλν ζε PHP, ρξεζηκνπνηεί αληηθεηκελνζηξεθείο ηερληθέο πξνγξακκαηηζκνχ (Object-Oriented Programming) θαη πξφηππα ζρεδίαζεο ινγηζκηθνχ, απνζεθεχεη ηα δεδνκέλα ζε κηα MySQL βάζε δεδνκέλσλ, θαη πεξηιακβάλεη ραξαθηεξηζηηθά φπσο ην page caching, νη εθηππψζηκεο εθδφζεηο ησλ ζειίδσλ, νη εηδήζεηο, νη ςεθνθνξίεο, ε αλαδήηεζε, ην ειεθηξνληθφ εκπφξην, blogs, wikis, ε δηαρείξηζε εγγξάθσλ, νη γθαιεξί γηα ηελ πξνβνιή θαη επίδεημε εηθφλσλ θαη ηέινο παξέρεη ππνζηήξημε γηα γισζζηθή δηεζλνπνίεζε. Σν Joomla! είλαη ινγηζκηθφ πνπ βνεζά ηελ εχθνιε δεκηνπξγία θαη ελεκέξσζε κηαο ηζηνζειίδαο. Μπνξνχκε λα ζθεθηνχκε έλα ηζηνρψξν Joomla! σο ζπγθέληξσζε ηξηψλ ζηνηρείσλ: 1. Σν πεξηερφκελν, ην νπνίν απνζεθεχεηαη θπξίσο ζε κηα βάζε δεδνκέλσλ 2. Σν template, ην νπνίν ειέγρεη ηε δηάηαμε θαη ηελ παξνπζίαζε ηνπ πεξηερνκέλνπ (φπσο ην θφλην, ηα ρξψκαηα θαη ην layout). 3. Σν ινγηζκηθφ Joomla!, ην νπνίν είλαη απηφ πνπ ζπλδηάδεη ην πεξηερφκελν θαη ην template καδί, γηα λα παξάγεη ηζηνζειίδεο Οη ιφγνη επέθηαζεο ηεο Joomla Η Joomla!, φρη κφλν ζρεδηάζηεθε γηα λα ρεηξίδεηαη πεξηερφκελν θαη θείκελν, αιιά επίζεο γηα λα επηηξέςεη ζε δηάθνξεο ζχλζεηεο εθαξκνγέο λα ελζσκαησζνχλ θαη ζπλελσζνχλ ζαλ έλα εληαίν ζχλνιν. Σα θαιάζηα αγνξψλ, ηα θφξνπκ, ηα πξνθίι ησλ κέζσλ θνηλσληθήο δηθηχσζεο, θηεκαηνκεζηηηθά πξνγξάκκαηα, είλαη θάπνηα παξαδείγκαηα ησλ επεθηάζεσλ πνπ νη πξνγξακκαηηζηέο έρνπλ γξάςεη γηα ηε Joomla!. Όια απηά κπνξνχλ λα ηξέμνπλ ζε κία ζειίδα Joomla, θαη κφλν κηα βάζε δεδνκέλσλ, έλα πξφηππνtemplate, θαη ν ππξήλαο πνπ ζα ηα ζπζρεηίζεη, ρξεηάδνληαη γηα λα δηαηεξεζεί. Όηαλ ρηίδεηαη κηα επέθηαζε ζε Joomla!, ζα θιεξνλνκήζεη ηελ εκθάληζε θαη ηελ αίζζεζε ηνπ ηζηνρψξνπ γεληθφηεξα. Οπνηνζδήπνηε ηχπνο πξνγξάκκαηνο πνπ κπνξεί λα θσδηθνπνηεζεί PHP είλαη έλα πηζαλφ component πνπ κπνξεί λα γξαθεί. Οη επεθηάζεηο κπνξνχλ επίζεο λα είλαη θνξεηέο. Όηαλ θσδηθνπνηνχληαη ζσζηά, ν ρξήζηεο είλαη ζε ζέζε εχθνια λα εγθαηαζηήζεη ηνλ θψδηθά ζε έλα άιιν αληίγξαθν Joomla! ρσξίο λα πξέπεη λα γίλεη configuration ζηε βάζε δεδνκέλσλ,λα εηζαρζνπλ logins θαη άιιεο βαζηθέο πιεξνθνξίεο 21

22 δηακφξθσζεο πάιη απφ ηελ αξρή. Δπηπιένλ, ζα είλαη ζε ζέζε λα δηαλείκεη ηηο επεθηάζεηο ηνπ ζε άιινπο, έηζη ψζηε κπνξνχλ λα ηηο ρξεζηκνπνηήζνπλ, ρσξίο νπνηαδήπνηε γλψζε πξνγξακκαηηζκφ ή βάζεσλ δεδνκέλσλ. πκπεξαζκαηηθά, ε Joomla κπνξεί λα επαθηαζεί κέζσ ησλ components, ησλ modules θαη ησλ plug-ins. Απηφ επηηξέπεη ζηνλ ρξήζηε λα πξνζζέζεη ιεηηνπξγίεο ζε κία ηέηνηα ζειίδα, θη έπεηηα λα ηηο δηαηεξήζεη ή λα ηηο ελεκεξψζεη, ρσξίο λα αιιάμεη ηνλ βαζηθφ θψδηθα Πξνζαξκνγή ελαληίνλ ηεο επέθηαζεο Ο θψδηθαο ηνπ Joomla! έρεη δεκηνπξγεζεί κε ζθνπφ λα επεθηαζεί παξά λα λα ηξνπνπνηεζεί. Δίλαη πξνηηκεηέν λα γξαθηεί κηα επέθηαζε, παξά λα γίλνπλ αιιαγέο ζηνλ θψδηθα ηνπ ππξήλα. Όηαλ εθδίδνληαη αλαπξνζαξκνγέο θαη κπαιψκαηα γηα ην ίδην ην Joomla!, ν θψδηθαο ηνπ ππξήλα ζα ελεκεξσζεί, αιιά νη επεθηάζεηο ηνπ ρξήζηε ζα κείλνπλ αλέπαθεο. Απηέο νη επεθηάζεηο δεκηνπξγνχληαη ψζηε λα επεμεξγάδνληαη θαηά ηξφπν αλεμάξηεην, πνπ επηηξέπεη ζην ρξήζηε λα αλαπηχμεη ειεχζεξα ηνλ θψδηθά ηνπ ρσξίο ηε δηαηάξαμε άιισλ ζηνηρείσλ παξφλησλ ζηελ εγθαηάζηαζε ηνπ Joomla!. Αλ θαη είλαη αλεμάξηεηεο, νη επεθηάζεηο δελ ιεηηνπξγνχλ ζε έλα εληειψο ζθξαγηζκέλν πεξηβάιινλ. Μπνξεί ν ρξήζηεο λα αλακίμεη δηαθνξεηηθά είδε γηα λα πάξεη ηηο ιεηηνπξγίεο πνπ επηζπκεί. Ο θψδηθαο ηνπ Joomla! επηηξέπεη ζηηο επεθηάζεηο λα κνηξάδνληαη ηνπο πφξνπο θαη λα εθηεινχλ ελέξγεηεο ε κηα ζηελ άιιε. Γεδνκέλνπ φηη κπνξνχκε λα γξάςνπκε επεθηάζεηο, θάλνπκε απηφ αληί ηεο πξνζαξκνγήο ηνπ ππξήλα. 22

23 Σξφπνη επέθηαζεο ηνπ Joomla! Τπάξρνπλ ηξεηο ηχπνη επεθηάζεσλ Joomla!, θάζε κηα γηα κηα ζπγθεθξηκέλε ρξήζε. Components Απφ ηηο επεθηάζεηο δηαζέζηκεο, ηα components είλαη ηα πην νπζηψδε. Eίλαη νπζηαζηηθά απηφ πνπ είλαη νξαηφ ζην «θχξην» κέξνο ηεο ζειίδαο. Απηφ εμαξηάηαη απφ ην ζρέδην θαη ηε δηάηαμε ηνπ module πνπ έρεη επηιερζεί λα είλαη ζε ιεηηνπξγία. Σα components είλαη πνιχ βαζηθά ζηνηρεία γηα ηε ιεηηνπξγηθφηεηα ηνπ Joomla!, ην νπνίν ζρεδηάζηεθε λα θνξηψλεη θαη λα ηξέρεη αθξηβψο έλα ζπζηαηηθφ γηα θάζε ζειίδα πνπ παξάγεηαη. Απηά ηα βαζηθά ζηνηρεία πεξηιακβάλνπλ banners, επηθνηλσλία, ηξνθνδνζία εηδήζεσλ, ςεθνθνξίεο θαη web links θαη επίζεο κπνξνχλ λα πνηθίινπλ απφ κεραλέο αλαδήηεζεο κέρξη νινθιεξσκέλεο ιχζεηο ειεθηξνληθψλ αγνξψλ. Κάζε component νδεγείηαη απφ έλα κελνχ θαη θάζε ζηνηρείν ηνπ κελνχ ηξέρεη έλα ζπζηαηηθφ. Η δηαρείξηζε ησλ components γίλεηαη κέζσ ησλ επηινγψλ ηνπ κελνχ Components ηεο πιαηθφξκαο δηαρείξηζεο ηνπ Joomla. πλεπψο, θαηαιαβαίλνπκε φηη ε ιεηηνπξγία δηαρείξηζεο πεξηερνκέλνπ ηνπ Joomla!, είλαη θαη απηή ε ίδηα έλα component. Κάζε ζπζηαηηθφ έρεη δχν κέξε, ην back-end πνπ επηηξέπεη ζην δηαρεηξηζηή λα δηακνξθψζεη θαη λα δηαρεηξηζηεί ην πεξηερφκελφ ηνπ θαη ην front-end πνπ επηδεηθλχεη ηηο πιεξνθνξίεο πνπ έρνπλ επηιεγεί λα θαίλνληαη ζηελ ηζηνζειίδα κε ηνλ επηιεγκέλν ηξφπν. Σα components ζπρλά έρνπλ ζχλζεηα back-end controls. Σν back-end ρξεζηκνπνηείηαη ζπλήζσο γηα λα δεκηνπξγήζεη θαη λα ελεκεξψζεη εγγξαθέο ζε πίλαθεο ηεο βάζεο δεδνκέλσλ, φκσο κπνξεί λα θάλεη ηππηθά ηα πάληα, αξθεί λα είλαη πξνγξακκαηηζκέλν ζε Php. Γηα παξάδεηγκα, κπνξεί λα έρνπκε κηα εξγαζία πνπ ηξέρεη απφ ηε γξακκή εληνιψλ ηνπ UNIX, αιιά κπνξνχκε λα ρξεζηκνπνηήζεηε ην back end γηα λα παξέρνπκε κηα ζχλδεζε, link, φπνπ νη κε-πξνγξακκαηηζηέο κπνξνχλ λα ηελ θαιέζνπλ. Μπνξεί επίζεο λα ρξεζηκνπνηεζεί γηα λα επηηξέςεη ζηνπο δηαρεηξηζηέο ηεο ζειίδαο λα αλεβάζνπλ εηθφλεο ή βίληεν. 23

24 Modules ε αληίζεζε κε ηα Components, νζαδήπνηε Modules κπνξνχλ λα ππάξρνπλ ζε κία ζειίδα. πκπιεξψλνπλ ην πεξηερφκελν πνπ πεξηέρεηαη ζε έλα Component θαη δελ έρνπλ ζηφρν λα είλαη ζηελ θχξηα δνκή ηεο ζειίδαο. Σα modules είλαη ειαθξηέο θαη επέιηθηεο επεθηάζεηο πνπ ρξεζηκνπνηνχληαη γηα ηελ απφδνζε ζειίδσλ. Μεξηθέο θνξέο ηα modules ζπλδένληαη κε ηα components, γηα παξάδεηγκα ην module «latest news» ζπλδέεηαη κε ην component πνπ έρεη ην βαζηθφ πεξηερφκελν εηδήζεσλ θαη εκθαλίδεη links κε ηα λεφηεξα γεγνλφηα. Σα modules έρνπλ ζπλήζσο ηε κνξθή «θνπηηψλ» πνπ δηαηάζζνληαη γχξσ απφ έλα component ζε κηα ηζηνζειίδα, έλα ηέηνην είλαη ην login module. Σα modules νξίδνληαη αλά menu item, έηζη, παξαδείγκαηνο ράξηλ, ν δηαρεηξηζηήο κπνξεί λα απνθαζίζεη λα παξνπζηάζεη ή λα θξχςεη ην login module αλάινγα κε ην πνην component (menu item) ρξεζηκνπνηείηαη. Δληνχηνηο, απηέο νη επεθηάζεηο δε ρξεηάδεηαη λα ζπλδεζνχλ κε components, φπσο επίζεο δε ρξεηάδεηαη λα ζπλδεζνχλ κε ηίπνηα, αθνχ κπνξνχλ λα είλαη απιψο ζηαηηθή HTML ή θείκελν. Σα modules κπνξνχλ λα επηδείμνπλ ηηο πιεξνθνξίεο αθφκα θη αλ δελ είλαη ζπλδεκέλεο κε έλα component. ηελ πξαγκαηηθφηεηα κπνξνχλ λα επηδείμνπλ ηα πάληα, απφ ζηαηηθή HTML κέρξη ζχλζεηα slide shows θσηνγξαθηψλ. Ο ρξήζηεο κπνξεί λα ρεηξηζηεί ηα modules κέζσ ηνπ κελνχ Extensions -> Module Manager ζην back-end κέξνο ηνπ Joomla (ζην δηαρεηξηζηή) φπσο θαη θαίλεηαη ζηε παξαθάησ εηθφλα: 24

25 Plug-Ins Όηαλ έλα θνκκάηη ηνπ θψδηθα απαηηείηαη λα ππάξρεη ζε φιε ηελ ηζηνζειίδα, είλαη θαιχηεξν λα εθαξκφδεηαη σο plug-in. To plug-in ρξεζηκνπνηείηαη ζπλήζσο γηα λα δψζεη ζρήκα θαη δηάηαμε ζηελ εκθάληζε ελφο component ή module φηαλ θαηαζθεπάδεηαη κηα ζειίδα θαη πξνζζέηεη επηπιένλ ιεηηνπξγηθφηεηα ζηνλ ηζηνρψξν. Δίλαη ζχλζεηεο επεθηάζεηο πνπ ρεηξίδνληαη ηα δηαθνξεηηθά events. Μεξηθά παξαδείγκαηα plug-in πεξηιακβάλνπλ ηνλ ηνληζκφ ιέμεο θιεηδηνχ θαη ηα πιαίζηα ζρνιηαζκνχ άξζξσλ. Ο ρεηξηζκφο ηνπο γίλεηαη απφ ην back-end, κε παξφκνην ηξφπν κε εθείλν ησλ modules. Απφ ην κελνχ Extensions -> Plugin Manager ηεο πιαηθφξκαο δηαρείξηζεο. Οη ηξεηο πξναλαθεξζέληεο ηχπνη επέθηαζεο είλαη νη βαζηθφηεξνη γηα ηελ ηειεηνπνίεζε ηεο ιεηηνπξγηθφηεηαο κηαο ηζηνζειίδαο Joomla θαη ηνπνζεηνχληαη ζε επηιεγκέλεο ζέζεηο απφ ηνλ δηαρεηξηζηή, ψζηε λα εμππεξεηνχλ ηηο αλάγθεο ηνπ ιφγνπ χπαξμεο ηεο ζειίδαο θαη επηπιένλ λα ηελ θάλνπλ ειθπζηηθή γηα ηνλ επηζθέπηε. Όκσο εθηφο απφ ηα παξαπάλσ ππάξρνπλ θαη θάπνηνη αθφκε ηχπνη πνπ ε πξνζθνξά ηνπο είλαη ζπλνιηθή ζηε ζειίδα θαη ζηνλ ηξφπν εκθάληζήο ηεο. Αθνχ νξίδνπλ ηε δνκή θαη αξρηηεθηνληθή ηεο θαη ηνλ ηξφπν εκθάληζεο ησλ ζηνηρείσλ, φπσο ε γιψζζα γηα παξαδεηγκα. Templates Σα templates-πξφηππα θαζνξίδνπλ ηνλ ηξφπν ν ηζηνρψξνο θαίλεηαη,δειαδή ηε κνξθή ηνπ. Έλα πξφηππν Joomla ρεηξίδεηαη εμ νινθιήξνπ ηε δηάηαμε θαη ην ζρεδηαζκφ ησλ ζειίδσλ. Δπηπιένλ, ην πξφηππν δηεπθξηλίδεη ζε πνηα κέξε ηεο ζειίδαο εκθαλίδνληαη ηα δηαθνξεηηθά Modules πνπ ππάξρνπλ. Ο δηαρεηξηζηήο κε ηξφπν φπσο εθείλν ησλ ππφινηπσλ πξνζζέησλ πνπ αλαθέξζεθαλ, κπνξεί λα αιιάμεη ην πξνεπηιεγκέλν template ηνπ ηζηνρψξνπ σο εμήο: απφ ην κελνχ Extensions -> Template Manager, πνπ βξίζθεηαη ζηελ πεξηνρή δηαρείξηζεο. 25

26 Languages Οη γιψζζεο είλαη βαζηθά παθέηα πνπ κεηαθξάδνπλ ηελ νιφθιεξε δηεπαθή Joomla ηεο πιαηθφξκαο δηαρείξηζεο (back-end) ή/θαη ην front-end ηνπ ηζηνρψξνπ. Η δηαρείξηζε ησλ ήδε εγθαηεζηεκέλσλ γισζζψλ ζηελ εθαξκνγή ηεο Joomla γίλεηαη κέζσ ηνπ κελνχ Extensions -> Language Manager. 26

27 ΚΕΦΑΛΑΙΟ 2 ΑΝΑΠΣΤΞΗ ΔΝΟ JOOMLA COMPONENT 2.1 Οξηζκνί Πξηλ πξνρσξήζνπκε ζην ηερληθφ κέξνο ηεο εξγαζίαο πνπ μεθηλάεη κε ηελ εγθαηάζηαζε ην παθέηνπ αξρείσλ ηνπ Joomla ζηνλ ππνινγηζηή, ζα ήηαλ θαιφ λα αλαθέξνπκε θάπνηνπο νξηζκνχο πνπ έρνπλ άκεζε ζρέζε κε ηε δηαδηθαζία αλάπηπμεο κηαο επέθηαζεο- extension. Πην ζπγθεθξηκέλα ζα αλαθεξζνχκε ζηε γιψζζα πξνγξακκαηηζκνχ πνπ ρξεζηκνπνηείηαη, ζηε δηαρείξηζε βάζεο δεδνκέλσλ θαη ζηνλ ηξφπν κνξθνπνίεζεο ηεο επέθηαζεο πνπ ζα ζπγγξάςνπκε. Ση είλαη ε PHP Η PHP είλαη κηα γιψζζα πξνγξακκαηηζκνχ πνπ ζρεδηάζηεθε γηα ηε δεκηνπξγία δπλακηθψλ θαη δηαδξαζηηθψλ ζειίδσλ ζην δηαδίθηπν θαη είλαη επηζήκσο γλσζηή σο: HyperText preprocessor. Δίλαη κηα server-side scripting γιψζζα πνπ γξάθεηαη ζπλήζσο πιαηζησκέλε απφ HTML, γηα κνξθνπνίεζε ησλ απνηειεζκάησλ. Δίλαη server-side επεηδή εθηειείηαη ζηνλ δηαθνκηζηή, δειαδή ν θψδηθάο ηεο πξψηα κεηαγισηηίδεηαη ζηνλ server θαη κεηάθνξηψλεηαη ζαλ έλα θαλνληθφ html έγγξαθν ψζηε λα θαλεί ην παξαγφκελν απνηέιεζκα, ρσξίο ν ρξήζηεο λα είλαη ζε ζέζε λα δεη ηνλ αξρηθφ θψδηθα. Σα ζηνηρεία HTML ζηνλ πεγαίν θψδηθα κέλνπλ σο έρνπλ, αιιά ν PHP θψδηθαο εξκελεχεηαη θαη εθηειείηαη. Ο θψδηθαο PHP κπνξεί λα ζέζεη εξσηήκαηα ζε βάζεηο δεδνκέλσλ, λα δεκηνπξγήζεη εηθφλεο, λα δηαβάζεη θαη λα γξάςεη αξρεία, λα ζπλδεζεί κε απνκαθξπζκέλνπο ππνινγηζηέο, θ.ν.θ. ε γεληθέο γξακκέο νη δπλαηφηεηεο πνπ καο δίλεη είλαη απεξηφξηζηεο. Η PHP δεκηνπξγήζεθε ην 1994 απφ ηνλ Rasmus Lerdorf ν νπνίνο ρξεζηκνπνίεζε ηε γιψζζα πξνγξακκαηηζκνχ C πξνζπαζψληαο λα αληηθαηαζηήζεη έλα ζχλνιν απφ δηάθνξα κηθξά πξνγξάκκαηα (scripts) πνπ είρε θαηαζθεπάζεη ζε γιψζζα Perl κε ζθνπφ ηε ζπληήξεζε ηεο ηζηνζειίδαο ηνπ. Ση είλαη ε MySql Η MySQL είλαη έλα πνιχ γξήγνξν θαη δπλαηφζχζηεκα δηαρείξηζεο ζρεζηαθψλ βάζεσλ δεδνκέλσλ, πνπ ιεηηνπξγεί ζαλ server θαη ην νπνίν καο επηηξέπεη ηελ απνζήθεπζε, αλαδήηεζε, ηαμηλφκεζε θαη απνηειεζκαηηθή αλάθηεζε ησλ δεδνκέλσλ καο. 27

28 Ο MySQL δηαθνκηζηήο ειέγρεη ηελ πξφζβαζε ζηα δεδνκέλα, γηα λα επηηξέςεη ηελ ρξήζε απφ πνιινχο ρξήζηεο ηαπηφρξνλα, γηα λα παξέρεη γξήγνξε πξφζβαζε θαη λα δηαζθαιίδεη φηη κφλν πηζηνπνηεκέλνη ρξήζηεο κπνξνχλ λα έρνπλ πξφζβαζε. Υξεζηκνπνηεί ηελ SQL (Structured Query Language ) ηελ ηππηθή γιψζζα εξσηεκάησλ γηα βάζεηο δεδνκέλσλ. Η MySQL ρξεζηκνπνηείηαη θαη εθαξκνγέο φπσο γλσζηά ζπζηήκαηα δηαρείξηζεο πεξηερνκέλνπ(cms, ζηα νπνία ζα αλαθεξζνχκε ζηα επφκελα θεθάιαηα) θαη πην ζπγθεθξηκέλα ηα Joomla, Wordpress, Drupal, αιιά θαη ζε ηζηνζειίδεο φπσο ηεο Google, ηνπ youtube θαη ηνπ facebook. Ση είλαη ην CSS Σα αξρηθά CSS πξνέξρνληαη απφ ην Cascading Style Sheets δειαδή αιιεινπρία θχιισλ ζηπι. Δίλαη κηα γιψζζα ππνινγηζηή πνπ ρξεζηκνπνηείηαη γηα ηνλ έιεγρν ηεο εκθάληζεο ελφο εγγξάθνπ πνπ έρεη γξαθηεί κε κηα γιψζζα ζήκαλζεο HTML ή XHTML, δειαδή γηα ηνλ έιεγρν ηεο εκθάληζεο κηαο ηζηνζειίδαο. Σα CSS έρνπλ ζρεδηαζηεί γηα λα επηηξέπνπλ λα δηαρσξηζκφ ηνπ πεξηερνκέλνπ ηεο ηζηνζειίδαο ζαο απφ ην ζρεδηαζηηθφ θνκκάηη θαη απηφ ηεο παξνπζίαζεο. Απηφ είλαη πνιχ ζεκαληηθφ αθνχ ηα ζηνηρεία ζρεδίαζεο ηεο ηζηνζειίδαο ζα είλαη ζε έλα μερσξηζηφ αξρείν ην νπνίν ζα ηξνθνδνηεί ηηο ππφινηπεο ζειίδεο θαη θαη απηφλ ηνλ ηξφπν βειηηψλεηαη ε πξνζβαζηκφηεηα ηνπ πεξηερνκέλνπ. Δπίζεο, αθαηξψληαο ηα ζηνηρεία πνπ κνξθνπνηνχλ κηα ζειίδα απφ ηνλ θπξίσο θψδηθα, ην απνηέιεζκα είλαη λα έρνπκε πην θαζαξφ θαη επαλάγλσζην θψδηθα HTML, θαιχηεξε ζέζε εκθάληζεο ζηηο κεραλέο αλαδήηεζεο, θαη ηέινο ν ειαρηζηνπνίεζε ηνπ ρξφλνπ πνπ απαηηείηαη γηα αιιαγέο ζην θνκκάηη ηεο ζρεδίαζεο αθνχ φια ηα ζηνηρεία βξίζθνληαη ζε έλα αξρείν. Σν CSS πεξηέρεη ζηνηρεία φπσο ρξψκαηα, θφλην, layouts. Έηζη, φηαλ ρξεηαζηεί λα θάλνπκε κία αιιαγή, φπσο λα αιιάμνπκε ην θφλην ησλ ζειίδσλ καο, κπνξνχκε λα επέκβνπκε ζην αξρείν CSS θαη απηνκάησο νη αιιαγέο ζα επεξεάζνπλ θαη φια ηα αξρεία ηα νπνία ζπλδένληαη κε απηφ. Η HTML ρξεζηκνπνηείηαη γηα λα δνκήζεη ην πεξηερφκελν ελψ ηα CSS γηα λα ην κνξθνπνηήζνπλ. ηελ HTML ζα γξάςνπκε <h1>δπηθεθαιίδα</h1> ελψ ε κνξθνπνίεζή ηεο ζα έξζεη απφ ην CSS:h1{color:red} πνπ ζεκαίλεη φηη ην ρξψκα ηεο επηθεθαιίδαο ζα είλαη θφθθηλν. 2.2 Δγθαηάζηαζε Πξνεηνηκαζία εγθαηάζηαζεο Αξρηθά, γηα ηελ επηηπρεκέλε εγθαηάζηαζε θαη ρξήζε ηνπ Joomla ρξεηάδεηαη έλαο δηαθνκηζηήο Web (Web server, εδψ ζα ρξεζηκνπνηεζεί ην 28

29 Uniform Server) κία βάζε δεδνκέλσλ (MySQL) θαη ε γιψζζα πξνγξακκαηηζκνχ PHP καδί κε νξηζκέλα modules πνπ ελεξγνπνηνχληαη κέζσ απηήο. Βήμα 1: Σν πξψην πξάγκα πνπ ζα θάλνπκε είλαη λα απνθηήζνπκε ηνλ Uniform Server θαηεβάδνληαο ην απαξαίηεην αξρείν απφ ηελ ειεθηξνληθή δηεχζπλζε ηε ζπλέρεηα ηνλ ηνπνζεηνχκε κέζα ζηνλ ππνινγηζηή καο ζην δίζθν C, ψζηε λα κπνξέζνπκε αξγφηεξα λα πξνζζέζνπκε κέζα ζην θάθειν ηνπ ζέξβεξ ηα αξρεία ηεο Joomla θαη λα αλεβάδνπκε ηελ ηζηνζειίδα πνπ ζα δεκηνπξγήζνπκε, ηνπηθά, κέζσ ηνπ browser πνπ ρξεζηκνπνηνχκε. Βήμα 2: Η δεχηεξε θίλεζε είλαη λα πξνκεζεπηνχκε έλα αληίγξαθν ηνπ Joomla ζηε κνξθή ελφο αξρείνπ zip πνπ ζα βξνχκε ζηελ ειεθηξνληθή δηεχζπλζε Η ηειεπηαία έθδνζε πνπ ρξεζηκνπνηήζακε εδψ είλαη ε 1.6.1, φκσο πιένλ ππάξρεη θαη ε λεφηεξε θαη πην πξφζθαηε έθδνζε ηνπ παθέηνπ 1.7. ηε ζπλέρεηα θάλνπκε απνζπκπίεζε (extract) ηνπ αξρείνπ ζε θάπνηα ηνπνζεζία ηεο επηινγήο καο, ψζπνπ αξγφηεξα λα ρξεηαζηεί λα ην κεηαθέξνπκε ηα αξρεία ζην θάθειν ξίδα (root folder) ηνπ δηαθνκηζηή Web. Η ιίζηα ησλ θαθέισλ πνπ ππάξρνπλ κέζα ζην αξρείν zip είλαη ε εμήο: Εικόνα 1 Αρχεία που περιλαμβάνονται ςτο φάκελο joomla 29

30 Βήμα 3: ην ηειεπηαίν βήκα ηεο πξνεηνηκαζίαο, πξέπεη λα " αλεβάζνπκε" ηα απνζπκπηεζκέλα αξρεία ζην δηαθνκηζηή Web. ηελ πεξίπησζε ηνπηθήο εγθαηάζηαζεο, πξφθεηηαη γηα κηα απιή δηαδηθαζία αληηγξαθήο θαη επηθφιιεζεο ησλ αξρείσλ πνπ είρακε θάλεη extract ζην πξνεγνχκελν βήκα,ζην θάθειν ξίδα (root folder) ηνπ δηαθνκηζηή Web. Δδψ ν ελ ιφγν θάθεινο είλαη ν www. Βήμα 4: ε απηφ ην ζεκείν είκαζηε έηνηκνη λα πξνρσξήζνπκε κε ηελ εγθαηάζηαζε ηνπ πξνγξάκκαηνο Joomla ζην δηαθνκηζηή Web. Τπάξρνπλ δχν ηξφπνη εγθαηάζηαζεο: εγθαηάζηαζε κέζσ θπιινκεηξεηή Web (Web Browser Installation) θαη ρεηξνθίλεηε εγθαηάζηαζε (Manual Installation). Απφ ηηο δχν απηέο κεζφδνπο εγθαηάζηαζεο ε πξψηε ζεσξείηαη πην εχθνιε, ιφγσ ηνπ κηθξφηεξνπ αξηζκνχ βεκάησλ πνπ απαηηνχληαη. Δπηιέγνπκε απηή,πνπ ζηελ νπζηαζηηθά είλαη κία εκηαπηφκαηε κέζνδνο ε νπνία ζε θάζε βήκαηεο δηαδηθαζίαο δεηάεη απφ ηνλ ρξήζηε ηελ εηζαγσγή νξηζκέλσλ ζηνηρείσλ. Γειαδή, κεγαιχηεξν κέξνο ηεο δνπιεηάο γίλεηαη απφ ην ινγηζκηθφ εγθαηάζηαζεο. Τπνζέηνληαο φηη έρνπκε ήδε "αλεβάζεη" ην παθέην ησλ αξρείσλ θαη θαθέισλ ηνπ Joomla ζην θάθειν ξίδα ηνπ δηαθνκηζηή Web, είηε ζε έλα ηνπηθφ είηε ζε έλα απνκαθξπζκέλν νηθνδεζπφηε, ην επφκελν βήκα είλαη λα εηζάγνπκε ζηε γξακκή δηεπζχλζεσλ ηνπ browser ηε δηεχζπλζε URL ηεο ηζηνζειίδαο καο. Γηα κηα ηνπηθή εγθαηάζηαζε, φπσε ε δηθή καο, ε δηεχζπλζε URL ζα είλαη ηεο κνξθήο: Γειαδή κεηά ην θαθειν ηνπ localhost δελ παξεκβάινπκε ηνλ θάθειν www,αιιά απεπζείαο ην θάθειν κε ηα αξρεία ηεο joomla κε ην φλνκα πνπ επηιέμακε λα έρεη. Σν φλνκα απηφ ζα είλαη απηφκαηα θαη ην φλνκα ηεο ηζηνζειίδαο καο. 30

31 2.2.2 Δγθαηάζηαζε κέζσ ηνπ πεξηεγεηή Επιλογή γλώζζας Βήμα 5: Απφ ηε ζηηγκή πνπ ζα εηζάγνπκε ηε δηεχζπλζε URL ην πξψην βήκα γηα ηελ εγθαηάζηαζε ηνπ Joomla είλαη ε επηινγή ηεο γιψζζαο εγθαηάζηαζεο. ην βήκα απηφ απιά επηιέγνπκε ηε γιψζζα πξνηίκεζήο καο γηα ηελ εγθαηάζηαζε. Εικόνα 2 Επιλογι γλώςςασ Η γιψζζα πνπ είλαη επηιεγκέλε είλαη ε Αγγιηθή (en-gb -English(United Kingdom). Απηή είλαη ε εμ νξηζκνχ γιψζζα πνπ ρξεζηκνπνηείηαη γηα ηελ φιε αλάπηπμε ηνπ Joomla. Σνλίδεηαη φηη ηα αξρεία γισζζψλ πνπ βξίζθνληαη ζην παθέην ηνπ Joomla έρνπλ ζρέζε κφλν κε ηε δηαδηθαζία εγθαηάζηαζεο θαη δελ επεξεάδνπλ ην front-end θαη back-end ηνπ ζπζηήκαηνο, ηα νπνία εμ νξηζκνχ είλαη γξακκέλα ζηα αγγιηθά. Παξ' φια απηά ππάξρνπλ δηάθνξεο γιψζζεο ζηηο νπνίεο έρεη κεηαθξαζηεί ην Joomla. Οη κεηαθξαζκέλεο απηέο εθδφζεηο είλαη δηαζέζηκεο ζηελ ει. δηεχζπλζε 31

32 Προληπηικός έλεγχος Βήμα 6: Η επφκελε νζφλε πνπ εκθαλίδεηαη ζην θπιινκεηξεηή δείρλεη αλ ν δηαθνκηζηήο καο πιεξνί ηα απαξαίηεηα θξηηήξηα γηα ηελ επηηπρεκέλε νινθιήξσζε ηεο εγθαηάζηαζεο ηνπ Joomla. Εικόνα 3 Προλθπτικόσ ζλεγχοσ Δάλ ζε νπνηνδήπνηε απφ απηά ηα θξηηήξηα ππάξρεη απφ δίπια ε ιέμε No (κε εμαίξεζε ηελ πεξίπησζε ην αξρείν configuration.php λα είλαη εγγξάςηκν ή φρη), ηφηε πξέπεη λα δηνξζψζνπκε ην πξφβιεκα, πξνηνχ πξνρσξήζνπκε κε ηελ εγθαηάζηαζε, επεηδή απηά ηα θξηηήξηα είλαη βαζηθέο πξνυπνζέζεηο ψζηε λα επηηεπρζεί ε εγθαηάζηαζε. 32

33 Άδεια Βήμα 7: ην βήκα απηφ δε ρξεηάδεηαη λα ζπκπιεξψζνπκε ή λα ηξνπνπνηήζνπκε θάηη. Ωζηφζν είλαη θαιφ λα δηαβάζνπκε, λα θαηαλνήζνπκε θαη λα ζπκθσλήζνπκε κε ηνπο φξνπο θαη ηηο πξνυπνζέζεηο θάησ απφ ηηο νπνίεο εθδίδεηαη ην Joomla. Εικόνα 4 Άδεια χριςθσ Ρύθμιζη βάζης δεδομένων Βήμα 8: Κάπνπ εδψ μεθηλνχλ πιένλ ζηα πην ζεκαληηθά ζηάδηα ηεο δηαδηθαζίαο εγθαηάζηαζεο. ην βήκα απηφ δίλνπκε ηεο πιεξνθνξίεο πνπ απαηηνχληαη, έηζη ψζηε ην Joomla λα κπνξεί λα επηθνηλσλήζεη κε ηε βάζε δεδνκέλσλ. ην ζηάδην απηφ ζπκπιεξψλνπκε ηηο πιεξνθνξίεο πνπ εηζάγακε θαηά ηε δηαδηθαζία εγθαηάζηαζεο θαη ξχζκηζεο ηεο βάζεο δεδνκέλσλ καο. Πην ζπγθεθξηκέλα, επηιέγνπκε πξψηα ηνλ ηχπν ηεο βάζεο δεδνκέλσλ απφ ηελ αληίζηνηρε ιίζηα, ε νπνία πεξηιακβάλεη ηνπο ηχπνπο mysql θαη mysqli εμ νξηζκνχ. Δκείο ζα επηιέμνπκε ηνλ ηχπν mysql. πκπιεξψλνπκε ηα ζηνηρεία Host Name (Όλνκα Οηθνδεζπφηε), User Name (Όλνκα Υξήζηε), Password (Κσδηθφο Πξφζβαζεο) θαη Database Name (Όλνκα Βάζεο Γεδνκέλσλ), ηα νπνία είρακε εηζάγεη θαηά ηε δηαδηθαζία εγθαηάζηαζεο θαη ξχζκηζεο ηεο βάζεο δεδνκέλσλ. Καιφ είλαη λα νλνκάζνπκε ηε βάζε αθξηβψο φπσο θαη ηελ ζειίδα καο. 33

34 Σα πεδία Advanced Settings επηηξέπνπλ πεξαηηέξσ δηακφξθσζε ηεο βάζεο δεδνκέλσλ. Παξαδείγκαηνο ράξηλ, αλ ππάξρεη κία παιαηφηεξε βάζε δεδνκέλσλ κε ην ίδην φλνκα κε απηφ πνπ βάιακε ζην πεδίν Database Name, ηελ νπνία φκσο δε ρξεηαδφκαζηε πηα, ηφηε ην ζχζηεκα καο δίλεη ηε δπλαηφηεηα λα δηαγξάςνπκε (drop) ηνπο πίλαθεο απηήο ηεο βάζεο ή λα δεκηνπξγήζνπκε αληίγξαθα αζθαιείαο. Μπνξνχκε επίζεο λα αιιάμνπκε ην Πξφζεκα Πίλαθα (Table Prefix) ην νπνίν ην Joomla ζα ρξεζηκνπνηήζεη γηα φινπο ηνπο πίλαθεο ηεο βάζεο. Η δπλαηφηεηα απηή είλαη ρξήζηκε ζε πεξίπησζε πνπ δηαζέηνπκε πεξηζζφηεξεο απφ κία ηζηνζειίδεο κέζα ζηελ ίδηα βάζε δεδνκέλσλ. Σν default πξφζεκα πίλαθα είλαη ην jos_. Μεηά ηε ζπκπιήξσζε φισλ ησλ απαξαίηεησλ ζηνηρείσλ ε νζφλε ξχζκηζεο ηεο βάζεο δεδνκέλσλ ζα έρεη ηελ παξαθάησ κνξθή: Εικόνα 5 Ρυκμίςεισ βάςθσ δεομζνων 34

35 FTP Βήμα 9: Η ιεηηνπξγία απηή έξρεηαη γηα λα ιχζεη πξνβιεκάηα πνπ ζπλαληψληαη, ιφγσ πεξηνξηζκψλ ζηα δηθαηψκαηα (permissions) ησλ αξρείσλ, ζε νξηζκέλα ζπζηήκαηα Linux. Δπηηξέπεη ζηνπο ρξήζηεο λα ρξεζηκνπνηνχλ ηηο δηαδηθαζίεο εγθαηάζηαζεο (installation) θαη θφξησζεο (upload) πνπ ππάξρνπλ ζηνλ Πίλαθα Διέγρνπ (Control Panel) ηνπ ζπζηήκαηνο. Σν ζηξψκα FTP ππάξρεη κε ζθνπφ ηελ θαιχηεξε δηαρείξηζε ηνπ ζπζηήκαηνο αξρείσλ ηνπ Joomla. ην βήκα απηφ ζπκπιεξψλνπκε ην Όλνκα Υξήζηε (User Name) θαη ηνλ Κσδηθφ Πξφζβαζεο (Password) γηα ην FTP, ζηνηρεία ηα νπνία εηζάγακε θαηά ηε δηαδηθαζία ξχζκηζεο θαη εγθαηάζηαζεο ηνπ δηαθνκηζηή FTP. Με ηε ξχζκηζε απηή εμαζθαιίδνπκε πξφζβαζε ζηνλ θαηάινγν ξίδα ηνπ Joomla. Πξφθεηηαη γηα έλα ινγαξηαζκφ FTP πνπ δηαρεηξίδεηαη φιεο ηηο δηαδηθαζίεο ηνπ ζπζηήκαηνο αξρείσλ ηνπ Joomla. Σν βήκα ηεο ξχζκηζεο ηνπ FTP δελ είλαη απαξαίηεην ζηελ πεξίπησζε ηνπηθήο εγθαηάζηαζεο, κε εμαίξεζε ίζσο ηελ εγθαηάζηαζε ζε ηνπηθφ δίθηπν. Μφιηο νινθιεξψζνπκε ηε δηαδηθαζία ξχζκηζεο, ή αλ δε ρξεηαδφκαζηε ζηξψκα FTP, παηάκε ην πιήθηξν Next. Εικόνα 6 Ρφκμιςθ FTP (προαιρετικό) 35

36 Κύρια ρύθμιζη Βήμα 9: Η νζφλε Κχξηαο Ρχζκηζεο επηηξέπεη ηε ξχζκηζε ηξηψλ θξίζηκσλ ζηνηρείσλ ηεο εγθαηάζηαζεο ηνπ Joomla ζην δηαθνκηζηή Web. Εικόνα 7 Βαςικζσ Ρυκμίςεισ Σξία ηκήκαηα ζηελ νζφλε Κχξηαο Ρχζκηζεο: 1. Σν φλνκα ηεο ηζηνζειίδαο (Site Name). Πέξα απφ ηε ρξήζε ηνπ σο νλνκαζία ηεο ηζηνζειίδαο, απνηειεί επίζεο θαη ην φλνκα πνπ ζα ρξεζηκνπνηείηαη ζηηο πεξηπηψζεηο απνζηνιήο απφ ηελ ηζηνζειίδα,εκθάληζεο ιαζψλ θαη κελπκάησλ πξνεηδνπνίεζεο. Σν φλνκα απηφ δελ εκθαλίδεηαη ζηελ κπάξα ηίηινπ ηνπ θπιινκεηξεηή, αιιά ππάξρεη ε δπλαηφηεηα ξχζκηζεο απφ ηνλ Πίλαθα Διέγρνπ ηνπ ζπζηήκαηνο. 2. Αθνξά ηνλ ππεξδηαρεηξηζηή (Super Administrator) ηνπ ζπζηήκαηνο. ην ηκήκα απηφ ζπκπιεξψλνπκε ην . Τπάξρνπλ επίζεο θαη δχν πεδία ζηα νπνία ζπκπιεξψλνπκε θαη επηβεβαηψλνπκε ηνλ θσδηθφ κε ηνλ νπνίν ζα έρνπκε πξφζβαζε ζηελ ηζηνζειίδα σο ππεξδηαρεηξηζηέο, ζε ζπλδπαζκφ κε ην εμ νξηζκνχ φλνκα ρξήζηε γηα ηνλ ππεξδηαρεηξηζηή πνπ είλαη admin. 3. Αθνξά κε ηα δεδνκέλα ηα νπνία ζέινπκε λα εηζάγνπκε ζηε ζειίδα καο κέζσ ηεο δηαδηθαζίαο εγθαηάζηαζεο. ηελ νπζία έρνπκε ηξεηο επηινγέο: 1) Να εηζάγνπκε ηα εμ νξηζκνχ δεδνκέλα δείγκαηνο (default sample data) πνπ πεξηέρνληαη κέζα ζην παθέην ηνπ Joomla. 2) Να κεηαθέξνπκε δεδνκέλα απφ θάπνηα πξνεγνχκελε έθδνζε ηνπ Joomla, ρξεζηκνπνηψληαο ηα δηαζέζηκα "εξγαιεία κεηαλάζηεπζεο" (migration tools). 3) Να κελ θάλνπκε ηίπνηα απφ ηα δχν θαη λα μεθηλήζνπκε κία θαηλνχξγηα θαη άδεηα εγθαηάζηαζε ηνπ Joomla. Αθνχ έρνπκε θάλεη ηελ επηινγή καο κπνξνχκε λα πξνρσξήζνπκε ζην επφκελν βήκα παηψληαο Next. 36

37 Εικόνα 8 Σζλοσ εγκατάςταςθσ (μινυμα για διαγραφι του αρχείου installation) Βήμα 10: Η εγθαηάζηαζή καο έρεη νινθιεξσζεί κε επηηπρία θαη είκαζηε πιένλ έηνηκνη λα πξνρσξήζνπκε κε ηε δηαρείξηζε ηεο ηζηνζειίδαο καο. Πξηλ πξνρσξήζνπκε φκσο είλαη απαξαίηεην, θαη εκθαλίδεηαη θαη κε γξαπηφ κήλπκα πξνεηδνπνίεζεο, λα αλνίμνπκε ην θάθειν ξίδα ηνπ Joomla θαη λα ζβήζνπκε ην θάθειν Installation. Δάλ ν θάθεινο απηφο δελ αθαηξεζεί, δε ζα κπνξέζνπκε λα πξνρσξήζνπκε ζηελ επφκελε νζφλε θαη λα νινθιεξψζνπκε ηελ εγθαηάζηαζε. Μφιηο ζβήζνπκε ην θάθειν, κπνξνχκε λα επηιέμνπκε αλάκεζα ζηηο επηινγέο Site ή Γηαρείξηζε (Admin). Σν πξψην καο κεηαθέξεη ζηελ αξρηθή ζειίδα ηεο ηζηνζειίδαο καο (ην Front-end) θαη ην δεχηεξν ζηε ζειίδα δηαρείξηζεο (Administration) ηνπ ζπζηήκαηνο (ην Back-end). 37

38 Εικόνα 9 Administration login (για να ειςζλκουμε ςτο back end) ηελ νζφλε απηή ζπκπιεξψλνπκε ην φλνκα ρξήζηε admin θαη ηνλ θσδηθφ πξφζβαζεο πνπ εηζάγακε ζην βήκα 6 ηεο δηαδηθαζίαο εγθαηάζηαζεο, θαη παηάκε ην πιήθηξν Login. Μεηαθεξφκαζηε ζην back-end απ φπνπ ν ζαλ δηαρεηξηζηέο ξπζκίδνπκε θαη δηαρεηξηδφκαζηε ηε ζειίδα καο θαη βιέπνπκε ηελ παξαθάησ νζφλε: Εικόνα 10 Οκόνθ back end όπου ο διαχειριςτισ πραγματοποιεί ρυκμίςεισ για το site 38

39 2.3 Γνκή ελφο Component Η Joomla πηνζεηεί έλα ζπγθεθξηκέλν ζρήκα νλνκάησλ, ην νπνίν ρξεζηκνπνηείηαη απφ φια ηα components. Κάζε component ζην ζχζηεκα έρεη έλα κνλαδηθφ φλνκα ρσξίο δηαζηήκαηα. Ο θψδηθαο είλαη ρσξηζκέλνο ζε δχν θαθέινπο, θάζε έλαο κε ην φλνκα ηνπ component πνπ πξνηάζζεηαη απφ com_. Σα components θαινχληαη reviews. Δπνκέλσο, ζα πξέπεη λα δεκηνπξγεζνχλ δχν θάθεινη πνπ νλνκάδνληαη com_reviews: Γεκηνπξγνχκε έλα ζην θάθειν πνπ νλνκάδεηαη ηα components γηα ην front-end. Γεκηνπξγνχκε έλα ζην θάθειν πνπ νλνκάδεηαη ηα components κέζα ζην θάθειν administrator γηα ην back-end. Όηαλ ην ζπζηαηηθφ θνξηψλεηαη απφ ην front-end, ην Joomla! ζα ςάμεη έλα αξρείν κε ην κνλαδηθφ φλνκα ηνπ component πνπ ηειεηψλεη κε κηα.php επέθηαζε. Μέζα ζην θάθειν components/com_reviews δεκηνπξγνχκε έλα θάθειν reviews.php. Οκνίσο, αλ ην ηξέμνπκε ζην back-end πξνυπνζέηεη ηελ παξνπζία ελφο αξρείνπ πνπ πξνινγίδεηαη κε ην admin. αθνινπζνχκελνο απφ ην φλνκα ηνπ component θαη ηειεηψλεη ζε.php. Πξνζζέηνπκε ην θάθειν admin.reviews.php κέζα ζην administrator/components/com_reviews. Καη αθήλνπκε ηνπο 2 θαθέινπο άδεηνπο πξνο ην παξφλ. 2.5 Δθηειψληαο ην Component Όια ηα αηηήκαηα ηνπ front-end ζηε Joomla πεξλνχλ κέζα απφ ην index.php πνπ βξίζθεηαη ζην root directory. Γηαθνξεηηθά components κπνξνχλ λα θνξησζνχλ, θαζνξίδνληαο ηε κεηαβιεηή option ζην URL GET string. Δάλ εγθαηαζηήζνπκε ην Joomla! ζε έλαλ ηνπηθφ web server ζε έλα θαηάινγν κε ηνλ ηίηιν joomla, ην URL γηα ηελ πξφζβαζε ζηε ζειίδα ζα είλαη: Τπνζέηνληαο νηη ζπκβαίλεη απηφ, κπνξνχκε λα θνξηψζνπκε ην front-end ηνπ component αλνίγνληαο ζηνλ πεξηεγεηή καο ην: ε απηφ ην ζεκείν, ε νζφλε πξέπεη λα είλαη νπζηαζηηθά θελή, εθηφο απφ ηελ χπαξμε ησλ ζηνηρείσλ ηνπ template θαη ηα modules. Γηα λα θάλνπκε απηφ ην component ειαθξψο πην ρξήζηκν, αλνίγνπκε ην reviews.php θαη πξνζζέηνπκε ηνλ αθφινπζν θψδηθα, θη έπεηηα θάλνπκε αλαλέσζε ζηνλ browser: <?php defined( '_JEXEC' ) or die( 'Restricted access' ); echo '<div class="componentheading">restaurant Reviews</div>';?> 39

40 Η νζφλε ηψξα ζα δείρλεη πεξίπνπ ίδηα κε ηελ εμήο: Καιέζακε ηελ defined() ζηελ αξρή ηνπ αξρείνπ, γηα λα γίλεη ν έιεγρνο πνπ ζα καο εμαζθαιίζεη φηη ν θψδηθαο θαιείηαη κέζσ Joomla! αληί λα πξνζεγγηζηεί άκεζα ζηα components/com_reviews/reviews.php. Η Joomla! απηφκαηα δηακνξθψλεη ην πεξηβάιινλ κε κεξηθά κέηξα αζθάιεηαο πνπ κπνξνχλ λα ληθεζνχλ εάλ θάπνηνο είλαη ζε ζέζε λα εθηειέζεη άκεζα ηνλ θψδηθα γηα ην component καο Γηα ην back end βάδνπκε ηνλ παξαθάησ θψδηθα κέζα ζην administrator/components/com_reviews/admin.reviews.php: <?php defined( '_JEXEC' ) or die( 'Restricted access' ); echo 'Restaurant Reviews';?> Πεγαίλνπκε ζην: θαη ζα πξέπεη λα εκθαλίδεηαη θάηη ηέηνην: 40

41 2.6 Γηαρσξηζκφο κεηαμχ frond-end θαη back-end Γηα φια ηα components ηεο Joomla! ν θψδηθαο πνπ εμνπζηνδνηεί ην ηκήκα ηνπ back-end θξαηηέηαη καθξηά απφ ηνλ frond-end θψδηθα. ε κεξηθέο πεξηπηψζεηο, φπσο είλαη ε database table class, ην back-end ζα ρξεζηκνπνηήζεη νξηζκέλα αξρεία απφ ην frond-end, αιιά ζε θάζε άιιε πεξίπησζε απηά ηα δχν είλαη ρσξηζηά. Η αζθάιεηα εληζρχεηαη δεδνκέλνπ φηη είλαη ιηγφηεξν πηζαλφ λα ξίμεη θάπνηνο ηηο δηνηθεηηθέο ιεηηνπξγίεο(back-end) ζηνλ frond-end θψδηθα. Απηφ είλαη κηα ζεκαληηθή δηάθξηζε δεδνκέλνπ φηη ην frond-end θαη ην back-end είλαη παξφκνηα ζηε δνκή. Σν αθφινπζν δηάγξακκα αξρείσλ παξνπζηάδεη ην root ηεο Joomla κε ην θάθειν administrator επεθηακέλν: Παξαηεξνχκε φηη ν θάθεινο administrator έρεη παξφκνηα δνκή θαη πεξηερφκελν κε ηνλ root, γη απηφ είλαη ζεκαληηθφ λα θάλνπκε ηε δηάθξηζε κεηαμχ ησλ δχν ηνπο, ψζηε λα κε βάινπκε ηνλ θψδηθα ζην ιάζνο θάθειν γηαηί ηφηε ζα απνηχρεη λα εθηειεζηεί κέρξη λα πάκε πάιη πίζσ θαη λα ηνλ κεηαθέξνπκε ζην ζσζηφ απηή ηε θνξά. 41

42 2.7 Καηαρψξεζε ηνπ componentζηε βάζε δεδνκέλσλ (Registering) Σψξα γλσξίδνπκε πψο λα έρνπκε πξφζβαζε ζην frond-end θαη ην back-end ηνπ component. Αλ θαη ζα κπνξνχζακε λα ζπλερίζνπκε λα πιεθηξνινγνχκε ηα URLs θάζε θνξά πνπ ζέινπκε λα εθηειέζνπκε έλα θνκκάηη ηνπ θψδηθα, απηφ δελ ζα ήηαλ απνδεθηφ γηα ηνπο ρξήζηεο. Η πεξηήγεζε κπνξεί λα παξαζρεζεί εάλ θαηαρσξήζνπκε ην component ζηε βάζε δεδνκέλσλ κε ηελ πξνζζήθε κηαο ζεηξάο ζηνλ πίλαθα ηνπ component. Θα εθηειέζνπκε απηήλ ηελ εγγξαθή ρξεζηκνπνηψληαο ην αθφινπζν query. Τπνηίζεηαη φηη ην πξφζεκα βάζεσλ δεδνκέλσλ είλαη jos_. Δάλ φρη, αληηθαζηζηνχκε ην jos_ κε ην πξφζεκα πνπ έρνπκε επηιέμεη. Δάλ πξνηηκάκε λα εξγαζηνχκε κε άκεζεο δειψζεηο SQL ζε command-line, εηζάγνπκε ην αθφινπζν query ζηελ θνλζφια: INSERT INTO jos_components (name, link, admin_menu_link, admin_menu_alt, 'option', admin_menu_img, params) VALUES ('Restaurant Reviews', 'option=com_reviews', 'option=com_reviews', 'Manage Reviews', 'com_reviews', 'js/themeoffice/component.png', ''); Αλ πξνηηκάκε λα ρξεζηκνπνηήζνπκε έλα web-based database manager φπσο είλαη ε phpmyadmin, εηζάγνπκε Restaurant Reviews σο name, option=com_reviews σο link θαη σο admin_menu_link, Manage Reviews σο admin_menu_alt, com_reviews σο option, θαη js/themeoffice/component.png γηα admin_menu_img (εηθφλα). Αθήλνπκε φια ηα άιια πεδία θελά. Σα πεδία menuid, parent, ordering, θαη iscore ζα είλαη εμ νξηζκνχ 0, ελψ φηαλ γίλνληαη enabled ζα παίξλνπλ ηελ ηηκή 1. 42

43 Η πξνζζήθε απηνχ ηνπ αξρείνπ δίλεη ζην ζχζηεκα θάπνηεο βαζηθέο πιεξνθνξίεο γηα ην component. Γειψλεη ην φλνκα πνπ ζέιoπκε λα ρξεζηκνπνηήζνπκε γηα ην component, ην νπνίν κπνξεί λα πεξηέρεη δηαζηήκαηα θαη ζηίμε. Μπνξνχκε λα ππνβάινπκε ηηο ζπγθεθξηκέλεο ζπλδέζεηο links γηα λα πινεγεζνχκε ζην frond-end θαη ζην back-end. Αθφηνπ εηζαρζεί επηηπρψο ην αξρείν, πεγαίλνπκε ζε νπνηαδήπνηε ζειίδα ζην back-end θαη ην αλαλεψλνπκε. Όηαλ θηλνχκε ην πνληίθη πάλσ απφ ην κελνχ ησλ Components πξέπεη λα βιέπνπκε ηε λέα επηινγή: 43

44 Σψξα πνπ θαηαρσξήζεθε ην component, κπνξνχκε επίζεο λα δεκηνπξγήζνπκε κηα ζχλδεζε γηα ην frond-end. Menus Main Menu New. Απφ απηή ηελ νζφλε επηιέγνπκε Restaurant Reviews. Δηζάγνπκε Restaurant Reviews σο name. Παξαηεξνχκε ηψξα ηελ αθφινπζε νζφλε: Σψξα απνζεθεχνπκε ηηο εξγαζίεο θαη πεγαίλνπκε ζην frond-end θαη ζα παξαηεξήζνπκε φηη ην Reviews-φπσο ην νλνκάζακε-θαίλεηαη ζηε ιίζηα σο κηα επηινγή. ε απηφ ην ζεκείν ζα πξέπεη λα γλσξίζνπκε φηη απφ ηε ζηηγκή πνπ ζα αξρίζνπκε λα γξάθνπκε θψδηθα php γηα ην component, φηη έρεη λα θάλεη κε ην front-end ζα εθηειείηαη κέζσ ηνπ θαη ν θψδηθαο γηα ην back-end κέζσ ηνπ 44

45 2.8 Γεκηνπξγψληαο Toolbars ε φιν ην back-end φια ηα ηκήκαηα εθαξκφδνπλ ηηο ξάβδνπο εξγαιείσλ κε ίδηα θνπκπηά γηα απνζήθεπζε, δηαγξαθή, δηφξζσζε θαη έθδνζε. Μπνξνχκε λα ρξεζηκνπνηήζνπκε απηά ηα θνπκπηά θη εκείο ψζηε νη ζπρλνί ρξήζηεο ηεο πεξηνρήο δηαρείξηζεο λα κελ βιέπνπλ δηαθνξέο ζηε εκθάληζε γηα ιφγνπο επθνιίαο θαη ζπλήζεηαο. Ξεθηλψληαο, δεκηνπξγνχκε ην αξρείν toolbar.reviews.html.php κέζα ζην θάθειν administrator/components/com_reviews θαη εηζάγνπκε ηνλ αθφινπζν θψδηθα: <?php defined( '_JEXEC' ) or die( 'Restricted access' ); class TOOLBAR_reviews { function _NEW() { JToolBarHelper::save(); JToolBarHelper::apply(); JToolBarHelper::cancel(); }?> function _DEFAULT() { JToolBarHelper::title( JText::_( 'Restaurant Reviews' ), 'generic.png' ); JToolBarHelper::publishList(); JToolBarHelper::unpublishList(); JToolBarHelper::editList(); JToolBarHelper::deleteList(); JToolBarHelper::addNew(); } } Σα αξρεία πνπ πεξηέρνπλ ηνπο θψδηθεο νη νπνίνη έρνπλ λα θάλνπλ κε ηε ζρεδίαζε θαη δίλνπλ έλα output, νξγαλψλνληαη ζε θιάζεηο, φπσο εδψ ν θψδηθαο γηα ην TOOLBAR_reviews. Κάζε ζπλάξηεζε αληηπξνζσπεχεη κηα δηαθνξεηηθή ξάβδν εξγαιείσλ. Η θιάζε JToolBarHelper πεξηέρεη ηηο ιεηηνπξγίεο πνπ παξάγνπλ φιε ηελ HTML πνπ είλαη απαξαίηεηε γηα λα ρηίζεη ηηο ξάβδνπο εξγαιείσλ. Αλ ζέινπκε, κπνξνχκε επίζεο λα πξνζζέζνπκε ην δηθφ καο θψδηθα HTML κέζα απφ ηηο ζπλαξηήζεηο απηέο. Πξέπεη φκσο λα γλσξίδνπκε φηη νη ξάβδνη εξγαιείσλ βξίζθνληαη κέζα ζηνπο πίλαθεο HTML, νπφηε πηζαλψο λα ρξεηαζηεί λα πξνζζέζνπκε εηηθέηεο <td> θαη ηελ ζέζε πνπ επηιέγνπκε λα εκθαλίζνπκε ην ζηνηρείν καο ζηελ νζφλε (navigation). 45

46 Πξνζζέηνπκε ηνλ αθφινπζν θψδηθα κέζα ζην toolbar.reviews.php πνπ βξίζθεηαη ζην θάθειν administrator/components/com_reviews: <?php defined( '_JEXEC' ) or die( 'Restricted access' ); require_once( JApplicationHelper::getPath( 'toolbar_html' ) );?> switch($task) { case 'edit': case 'add': TOOLBAR_reviews::_NEW(); break; default: TOOLBAR_reviews::_DEFAULT(); break; } Η γξακκή πνπ πεξηέρεη ην require_once( ) ρξεζηκνπνηεί ηε ζπλάξηεζε getpath() ηεο θιάζεο JApplicationHelper. Η θιήζε ηεο getpath() επηηξέπεη λα θαιέζνπκε ην αξρείν toolbar.reviews.html.php ρσξίο λα αλαθεξζνχκε ζε θάπνην φλνκα component. Αξγφηεξα, αθφκε θαη αλ αιιάμνπκε ην φλνκα Restaurants θαη ηα νλφκαηα ησλ αξρείσλ, απηή ε γξακκή ζα ζπλερίζεη λα θνξηψλεη ηνλ θψδηθα κε ηα ζηνηρεία εκθάληζεο ηνπ Toolbar ρσξίο αιιαγέο. Αθφηνπ ην toolbar.reviews.php θνξηψζεη ην αξρείν κε ηελ θιάζε πνπ είλαη ππεχζπλε γηα ηελ εκθάληζε, ζα ρξεηαζηεί λα απνθαζίζνπκε πνην toolbar ζέινπκε λα εκθαλίδεηαη. Η κεηαβιεηή $task αλαγλσξίδεηαη απηφκαηα απφ ηε Joomla θαη ρξεζηκνπνηείηαη γηα λα θαηεπζχλεη ηε ινγηθή ξνή κέζα ζην component. Έρνληαο πξνζζέζεη ηνλ θψδηθα γηα ηελ εξγαιεηνζήθε, αλαλεψλνπκε ηνλ πεξηεγεηή ζην back-end θαη πεγαίλνπκε ζην κελνχ Components Restaurant Reviews θαη ζα πξέπεη λα δνχκε θάηη αληίζηνηρν: Γηα λα δνχκε ηελ άιιε εξγαιεηνζήθε, πξνζζέηνπκε $task=add ζην ηέινο ηεο URL ζηνλ πεξηεγεηή θαη παηάκε κεηάβαζε γηα λα θνξησζεί θαη λα εκθαληζηεί ην εμήο: 46

47 Όηαλ ην θνπκπί New απφ ηελ πξψηε εηθφλα παηεζεί, ζα θέξεη ζηε επηθάλεηα ηε δεχηεξε εξγαιεηνζήθε. Δπεηδή κέρξη ηψξα εκείο δελ έρνπκε θαζφινπ θφξκεο ζην back-end, απηέο νη εξγαιεηνζήθεο δε ιεηηνπξγνχλ. 2.9 Κνπκπηά εξγαιεηνζήθεο Η Joomla επηηξέπεη λα ππεξηζρχζνπκε ζε θάζε θνπκπί κε ην δηθφ καο task θαη ηε δηθή καο εηηθέηα (label), εηζάγνληάο ηα ζαλ πξψηε θαη δεχηεξε παξάκεηξν αληίζηνηρα. Σα αθφινπζα θνπκπηά είλαη δηαζέζηκα κε ηελ ηππνπνηεκέλε δηαλνκή Joomla!: 47

48 2.10 Αλάπηπμε ηνπ Back-end Πξηλ δεκηνπξγήζνπκε κηα δηεπαθή γηα ηελ είζνδν ησλ reviews, πξέπεη λα δεκηνπξγήζνπκε κηα ζέζε ζηε βάζε δεδνκέλσλ φπνπ ζα πάλε. Θα αξρίζνπκε κε έλαλ πίλαθα, φπνπ κηα ζεηξά (row) ζα αληηπξνζσπεχεη έλα review ζην ζχζηεκα. Θεσξνχκε φηη ην πξφζεκα ησλ βάζεσλ δεδνκέλσλ είλαη jos_ θαη εηζάγνπκε ην αθφινπζν query ζηελ θνλζφια SQL: CREATE TABLE 'jos_reviews' ( 'id' int(11) NOT NULL auto_increment, 'name' varchar(255) NOT NULL, 'address' varchar(255) NOT NULL, 'reservations' varchar(31) NOT NULL, 'quicktake' text NOT NULL, 'review' text NOT NULL, 'notes' text NOT NULL, 'smoking' tinyint(1) unsigned NOT NULL default '0', 'credit_cards' varchar(255) NOT NULL, 'cuisine' varchar(31) NOT NULL, 'avg_dinner_price' tinyint(3) unsigned NOT NULL default '0', 'review_date' datetime NOT NULL, 'published' tinyint(1) unsigned NOT NULL default '0', PRIMARY KEY ('id') ); Αλ ρξεζηκνπνηνχκε phpmyadmin, αλνίγνπκε ηε αθφινπζε νζφλε θαη εηζάγνπκε jos_reviews σο φλνκα ηνπ πίλαθα, πνπ ζα έρεη 13 πεδία. 48

49 Παηάκε Go θαη εκθαλίδεηαη έλα grid κε ιεπηνκέξεηεο φπσο απην: Πξέπεη νπσζδήπνηε λα θάλνπκε ην πεδίν id θχξην θιεηδί πνπ απμάλεηαη απηφκαηα (automatically incremented): 49

50 Γεκηνπξγψληαο κηα θιαζε Σable Η θιάζε JTable παξέρεη ηηο ιεηηνπξγίεο γηα ηε δεκηνπξγία, ηελ αλάγλσζε, ηελ ελεκέξσζε θαη ηε δηαγξαθή αξρείσλ απφ έλαλ εληαίν πίλαθα ζηε βάζε δεδνκέλσλ. Γηα λα εθκεηαιιεπηνχκε ηε JTable, πξέπεη λα γξάςνπκε κηα επέθηαζε απφ απηή γηα ηα jos_reviews. ην θάθειν /administrator/components/com_reviews, δεκηνπξγνχκε έλαλ θάθειν κε φλνκα tebles. ε απηφλ ηνλ θάθειν, δεκηνπξγoχκε ην αξρείν review.php θαη πιεθηξνινγνχκε ηνλ αθφινπζν θψδηθα: <?php defined('_jexec') or die('restricted access'); class TableReview extends JTable { var $id = null; var $name = null; var $address = null; var $reservations = null; var $quicktake = null; var $review = null; var $notes = null; var $smoking = null; var $credit_cards = null; var $cuisine = null; var $avg_dinner_price = null; var $review_date = null; var $published = null; }?> function construct(&$db) { parent:: construct( '# reviews', 'id', $db ); } Όηαλ επεθηείλνπκε (extend) ηελ θιάζε JTable, πξνζζέηνπκε φιεο ηηο ζηήιεο ηνπ πίλαθα ηεο βάζεο ζαλ κεηαβιεηέο θαη ηηο νξίδνπκε ζε null. Η κέζνδνο _construct() ζα πάξεη έλα αληηθείκελν ηεο βάζεο ζαλ παξάκεηξν θαη ζα θαιέζεη ηνλ αξρηθφ constructor ρξεζηκνπνηψληαο ην φλνκα ηνπ πίλαθα ηεο βάζεο ( φπνπ ην #_ είλαη ην πξφζεκα), ην θχξην θιεηδί θαη ην αληηθείκελν ηεο βάζεο. Η θιάζε TableReview θιεξνλνκεί ηηο bind(), store(), load(), delete() ζπλαξηήζεηο θαη έηζη κπνξνχκε λα ρεηξηζηνχκε ηηο εγγξαθέο ηεο βάζεο ρσξίο λα ρξεηάδεηαη λα γξάςνπκε SQL. 50

51 Γεκηνπξγψληαο ηε θφξκα Review Αθνχ έρνπκε θηηάμεη ηνλ πίλαθα ζρεκαηίδνπκε κηα θφξκα γηα λα πξνζζέηνπκε κέζα ηα reviews. Θέινπκε πάιη, φπσο θαη ζηηο εξγαιεηνζήθεο, λα δηαρσξίζνπκε ηελ HTML εκθάληζε απφ ηνλ ινγηθφ καο θψδηθα. Ο php θψδηθαο ζα κπεη ζην αξρείν admin.reviews.php, ελψ ε HTML ζην admin.reviews.html.php. Αλνίγνπκε ην admin.reviews.php θαη αληηθαζηζηνχκε ην πεξηερφκελν κε ηα αθφινπζα: $row =& JTable::getInstance('Review', 'Table'); $lists = array(); $reservations = array( '0' => array('value' => 'None Taken', 'text' => 'None Taken'), '1' => array('value' => 'Accepted', 'text' => 'Accepted'), '2' => array('value' => 'Suggested', 'text' => 'Suggested'), '3' => array('value' => 'Required', 'text' => 'Required'), ); $lists['reservations'] = JHTML::_('select.genericList', $reservations, 'reservations', 'class="inputbox" '. '', 'value', 'text', $row->reservations ); $lists['smoking'] = JHTML::_('select.booleanlist', 'smoking', 'class="inputbox"', $row->smoking); $lists['published'] = JHTML::_('select.booleanlist', 'published', 'class="inputbox"', $row->published); HTML_reviews::editReview($row, $lists, $option); }?> Υξεζκνπνηνχκε ην require_once( JApplicationHelper::getPath( 'admin_html' )) γηα λα ζπκπεξηιάβνπκε ην admin.reviews.html.php. Η getpath() ζπλάξηεζε παίξλεη ζπγθεθξηκέλα strings (φπσο είλαη ηα admin_html, front_html, class) θαη επηζηξέθεη ην αθξηβέο κνλνπάηη ζηα αληαπνθξηλφκελα αξρεία ηνπ component. 51

52 H Joomla ηαπηίδεη κε ην JPATH_COMPONENT κε ην αθξηβέο κνλνπάηη γηα ηνλ θψδηθα ηνπ back-end. Η editreview() εηνηκάδεη ηα HTML ζηνηρεία πξηλ ηα πεξάζεη ζηελ ζπλάξηεζε HTML_reviews::editReview(). Γεκηνπξγνχκε ην admin.reviews.html.php αξρείν θαη γξάθνπκε: <?php defined( '_JEXEC' ) or die( 'Restricted access' ); class HTML_reviews { function editreview( $row, $lists, $option ) { $editor =& JFactory::getEditor(); JHTML::_('behavior.calendar');?> <form action="index.php" method="post" name="adminform" id="adminform"> <fieldset class="adminform"> <legend>details</legend> <table class="admintable"> <tr> <td width="100" align="right" class="key"> Name: </td> <td> <input class="text_area" type="text" name="name" id="name" size="50" maxlength="250" value="<?php echo $row->name;?>" /> </td> </tr> <tr> <td width="100" align="right" class="key"> Address: </td> <td> <input class="text_area" type="text" name="address" id="address" size="50" maxlength="250" value="<?php echo $row->address;?>" /> </td> </tr> <tr> <td width="100" align="right" class="key"> Reservations: </td> <td> <?php echo $lists['reservations'];?> 52

53 </td> </tr> <tr> <td width="100" align="right" class="key"> Quicktake: </td> <td> <?php echo $editor->display( 'quicktake', $row->quicktake, '100%', '150', '40', '5' ) ;?> </td> </tr> <tr> <td width="100" align="right" class="key"> Review: </td> <td> <?php echo $editor->display( 'review', $row->review, '100%', '250', '40', '10' ) ;?> </td> </tr> <tr> <td width="100" align="right" class="key"> Notes: </td> <td> <textarea class="text_area" cols="20" rows="4" name="notes" id="notes" style="width:500px"><?php echo $row->notes;?></textarea> </td> </tr> <tr> <td width="100" align="right" class="key"> Smoking: </td> <td> <?php echo $lists['smoking'];?> 53

54 </td> </tr> <tr> <td width="100" align="right" class="key"> Credit Cards: </td> <td> <input class="text_area" type="text" name="credit_cards" id="credit_cards" size="50" maxlength="250" value="<?php echo $row->credit_cards;?>" /> </td> </tr> <tr> <td width="100" align="right" class="key"> Cuisine: </td> <td> <input class="text_area" type="text" name="cuisine" id="cuisine" size="31" maxlength="31" value="<?php echo $row->cuisine;?>" /> </td> </tr> <tr> <td width="100" align="right" class="key"> Average Dinner Price: </td> <td> $<input class="text_area" type="text" name="avg_dinner_price" id="avg_dinner_price" size="5" maxlength="3" value="<?php echo $row->avg_dinner_price;?>" /> </td> </tr> <tr> <td width="100" align="right" class="key"> Review Date: </td> <td> <input class="inputbox" type="text" name="review_date" id="review_date" size="25" maxlength="19" value="<?php echo $row->review_date;?>" /> <input type="reset" class="button" value="..." onclick="return showcalendar('review_date', 'y-mm-dd');" /> </td> </tr> <tr> <td width="100" align="right" class="key"> Published: </td> <td> <?php echo $lists['published'];?> 54

55 </td> </tr> </table> </fieldset> <input type="hidden" name="id" value="<?php echo $row->id;?>" /> <input type="hidden" name="option" value="<?php echo $option;?>" /> <input type="hidden" name="task" value="" /> </form> <?php } }?> Γξάθνπκε ζηνλ πεξηεγεηή: θαη βιέπνπκε ηελ εηθφλα: 55

56 Αξρηθά θέξλνπκε κέζα έλα αληηθείκελν πνπ αλαπαξηζηψληαο ηνλ HTML editor ηνπ δηαρεηξηζηή θαη απηφ ην θάλνπκε κε ηελ ζπλάξηεζε JHTML::_( behavior.calendar ) γηα λα πξνζζέζεη ηε Javascript θαη ην CSS πνπ πξνυπάξρεη. Απηφ είλαη απαξαίηεην γηα ην pop up εκεξνιφγην ηνπ πεδίνπ Review Date. Η ζπλάξηεζε display() παίξλεη ηα ζηνηρεία ηεο θφξκαο: name, value, width, height, columns, rows. Σα ηειεπηαία δχν είλαη γηα ηηο δηαζηάζεηο ηεο <textarea> ζηελ πεξίπησζε πνπ ν δηαρεηξηζηήο δε ζέιεη λα ρξεζηκνπνηήζεη εκεξνιφγην. 56

57 Δπεμεξγαζία δεδνκέλσλ Όηαλ ηα δεδνκέλα ζηε θφξκα έρνπλ ζπκπιεξσζεί, ν δηαρεηξηζηήο παηάεη ην θνπκπί save ηεο απνζήθεπζεο θαη ρξεηάδεηαη λα απνζεθεπηνχλ απηέο νη πιεξνθνξίεο ζηε βάζε. Αξρηθά δεκηνπξγνχκε ην savereview() κέζα ζην admin.reviews.php. : function savereview( $option ) { global $mainframe; $row =& JTable::getInstance('review', 'Table'); if (!$row->bind(jrequest::get('post'))) { echo "<script> alert('".$row->geterror()."'); window.history.go(-1); </script>\n"; exit(); } $row->quicktake = JRequest::getVar( 'quicktake', '', 'post', 'string', JREQUEST_ALLOWRAW ); $row->review = JRequest::getVar( 'review', '', 'post', 'string', JREQUEST_ALLOWRAW ); if(!$row->review_date) $row->review_date = date( 'Y-m-d H:i:s' ); if (!$row->store()) { echo "<script> alert('".$row->geterror()."'); window.history.go(-1); </script>\n"; exit(); } $mainframe->redirect('index.php?option='. $option, 'Review Saved'); } Αξρηθά ηξαβάκε ηελ global κεηαβιεηή $mainframe θαη ηελ ηξέρνπζα ζχλδεζε ηεο βάζεο δεδνκέλσλ. Σν αληηθείκελν $mainframe έρεη πνιιέο ζπλαξηήζεηο πνπ κπνξνχλ λα ρξεζηκνπνηεζνχλ γηα λα ειεγρζνχλ νη κεηαβιεηέο θαη θεθαιίδεο απηήο ηεο ζπλεδξίαο. Θέζακε επίζεο ηε $row ζαλ αλαθνξά γηα ηελ θιάζε TableReview, φπνπ ην φλνκα ηεο θιάζεο έρεη ζπλαξκνινγεζεί απφ ηηο παξακέηξνπο review θαη table. ηε ζπλέρεη θαινχκε ηελ ζπλάξηεζε ηεο $row πνπ ιέγεηαη bind(), ψζηε λα θνξηψζεη φιεο ηηο κεηαβιεηέο απφ ηε θφξκα. Η bind() παίξλεη κηα ζεηξά πίλαθα σο παξάκεηξν θαη πξνζπαζεί λα ηαηξηάμεη φια ηα ζηνηρεία ηεο ζηηηο κεηαβιεηέο κειψλ ηνπ αληηθεηκέλνπ. Αλ απνηχρεη ε ζπλάξηεζε, εκθαλίδνπκε έλα JavaScript alert θαη κεηαθέξνπκε ην ρξήζηε ζηελ πξνεγνχκελε νζφλε κε ηε ζπλάξηεζε history. Μεηά ην bind(), κπνξνχκε λα ρεηξηζηνχκε ηηο κεηαβιεηέο κειψλ $row άκεζα. Γεδνκέλνπ φηη ηα πεδία quicktake θαη review δέρνληαη ην πεξηερφκελν HTML, ρξεηάδνληαη εηδηθφ ρεηξηζκφ, αθνχ ε bind() αθαηξεί φιε ηελ HTML. Γηα λα μεπεξαζηεί απηφ ρξεζηκνπνηνχκε ηελ ζπλάξηεζε getvar() ηεο JRequest. Έηζη πεξλάκε ην φλνκα ηεο θφξκαο, ηελ εμ νξηζκνχ ηηκή, ηνλ πίλαθα απφ ηνλ 57

58 νπνίν ζέινπκε λα πάξνπκε δεδνκέλα, ην αλακελφκελν θνξκάη, θαη ηελ JREQUEST_ALLOWRAW flag αληίζηνηρα. Έρνπκε ηλ δπλαηφηεηα λα ζέηνπκε θάπνηα πξνθαζνξηζκέλα δεδνκέλα, φπσο θάλνπκε εδψ γηα ηελ ηξέρνπζα εκεξνκελία. Ρπζκίζακε λα ζπκπιεξψλεηαη ην πεδίν απηφκαηα, ζε πεξίπησζε πνπ δελ είρε επηιερζεί. Σέινο, θαινχκε ηε ζπλάξηεζε store() πνπ παίξλεη φιεο ηηο κεηαβιεηέο κειψλ θαη ηηο κεηαηξέπεη ζε δειψζεηο UPDATE ή INSERT, αλάινγα κε ηελ ηηκή ηνπ id. Γεδνκέλνπ φηη δεκηνπξγνχκε απηφ ην αξρείν γηα πξψηε θνξά, δελ έρεη ηηκή ην id, άξα ζα γίλεη INSERT θαη φρη UPDATE. Αλ πξνθχςεη θάπνην ιάζνο SQL, επηζηξέθνπκε ζηελ πξνεγνχκελε νζφλε. Αλ ην SQL είλαη επηηπρέο, ρξεζηκνπνηνχκε ηε ζπλάξηεζε redirect() απφ ην $mainframe γηα λα ζηείινπκε ην ρξήζηε πίζσ ζηελ βαζηθή νζφλε ηνπ component κε έλα κήλπκα επηβεβαίσζεο. Ωο ηψξα, ην switch() ζην αξρείν admin.reviews.php επεμεξγαδφηαλ κφλν ην add task. Σψξα πνπ έρνπκε δεκηνπξγήζεη κηα θφξκα θαη κηα ζπλάξηεζε γηα λα δηαρεηξίδεηαη ηελ απνζήθεπζε, κπνξνχκε λα πξνζζέζνπκε έλα case γηα λα απνζεθεχνπκε ηα δεδνκέλα. switch($task) { case 'add': editreview( $option ); break; } case 'save': savereview( $option ); break; Γεκηνπξγία ιίζηαο κε ηα δεδνκέλα ηεο βάζεο Δπεηδή ν δηαρεηξηζηήο δελ έρεη πξφζβαζε ζηε phpmyadmin, ρξεηάδεηαη λα θηηάμνπκε κηα νζφλε πνπ λα ζπγθεληξψλεη ηα reviews ηεο βάζεο δεδνκέλσλ. Πξνζζέηνπκε ζην admin.reviews.php ηνλ θψδηθα: function showreviews( $option ) { $db =& JFactory::getDBO(); $query = "SELECT * FROM # reviews"; $db->setquery( $query ); $rows = $db->loadobjectlist(); if ($db->geterrornum()) { echo $db->stderr(); return false; } HTML_reviews::showReviews( $option, $rows ); } 58

59 Απηή ε ζπλάξηεζε θνξηψλεη ηα δεδνκέλα πνπ είλαη πξνο εκθάληζε, άξα παίξλνπκε κηα αλαθνξά ηεο ηξέρνπζαο ζχλδεζεο κε ηε βάζε θαη χζηεξα θαινχκε ηελ setquery() ε νπνία δέρεηαη κέζα ηεο ην string ηνπ query θαη ην θξαηά γηα κειινληηθή ρξήζε, ρσξίο λα ην εθηειέζεη ακέζσο. Όηαλ φκσο θαινχκε ην loadobjectlist(), ην πξνεγνχκελν query εθηειείηαη θαη νη γξακκέο ηνπ απνηειέζκαηφο ηνπ απνζεθεχνληαη ζε έλα πίλαθα ηχπνπ array ζαλ αληηθείκελα. Αλ πξνθχςεη ζθάικα, ζηακαηάκε ην component. Αλ δελ ππάξρεη ζθάικα, πεξλάκε ηνλ πίλαθα ησλ απνηειεζκάησλ ζηελ παξαθάησ ζπλάξηεζε πνπ ζα πξνζηεζεί ζην αξρείν admin.reviews.html.php: function showreviews( $option, &$rows ) {?> <form action="index.php" method="post" name="adminform"> <table class="adminlist"> <thead> <tr> <th width="20"> <input type="checkbox" name="toggle" value="" onclick="checkall(<?php echo count( $rows );?>);" /> </th> <th class="title">name</th> <th width="15%">address</th> <th width="10%">reservations</th> <th width="10%">cuisine</th> <th width="10%">credit Cards</th> <th width="5%" nowrap="nowrap">published</th> </tr> </thead> <?php $k = 0; for ($i=0, $n=count( $rows ); $i < $n; $i++) { $row = &$rows[$i]; $checked = JHTML::_('grid.id', $i, $row->id ); $published = JHTML::_('grid.published', $row, $i );?> <tr class="<?php echo "row$k";?>"> <td> <?php echo $checked;?> </td> <td> <?php echo $row->name;?> </td> <td> <?php echo $row->address;?> </td> <td> <?php echo $row->reservations;?> </td> <td> <?php echo $row->cuisine;?> </td> <td> <?php echo $row->credit_cards;?> </td> <td align="center"> 59

60 } <?php echo $published;?> </td> </tr> <?php $k = 1 - $k; }?> </table> <input type="hidden" name="option" value="<?php echo $option;?>" /> <input type="hidden" name="task" value="" /> <input type="hidden" name="boxchecked" value="0" /> </form> <?php Απηή ε ζπλάξηεζε αξρίδεη κε ηνλ θαζνξηζκφ κηαο θφξκαο πνπ δείρλεη ζην index.php, κε ην φλνκα adminform (γηα ηηο αλαθνξέο JavaScript). Έλαο πίλαθαο κε ηελ θιάζε adminlist αξρίδεη θαη νη επηθεθαιίδεο πξνζηίζεληαη. Όιεο νη επηθεθαιίδεο είλαη νη ηππηθέο, εθηφο απφ ηελ πξψηε πνπ ελεξγεί ζαλ έλα checkbox ειέγρνπ, πνπ επηιέγεη απηφκαηα φιεο ηηο εγγξαθέο ζηελ νζφλε. Σψξα μεθηλά κηα επαλάιεςε ζηηο γξακκέο. Οη κεηαβιεηή $i είλαη αξρηθά 0 θαη ε $n ίζε κε ηνλ αξηζκφ ησλ γξακκψλ. Η επαλάιεςε εθηειείηαη φζν ππάξρνπλ αθφκε δηαζέζηκεο γξακκέο πξνο εκθάληζε. Μέζα ζηελ επαλάιεςε έρνπκε κηα αλαθνξά ζηελ ηξέρνπζα γξακκή γηα λα κπνξνχκε λα εκθαλίδνπκε ηα πεξηερφκελα. Αιιάδνπκε ηελ ηηκή ηεο κεηαβιεηήο $k κηα ζε 0 θαη κηα ζε 1, ψζηε λα ελαιιαζζφκαζηε κεηαμχ δχν δηαθνξεηηθψλ CSS θιάζεσλ κε δηαθνξεηηθέο background properties. Αξθεηέο απφ ηηο κεηαβιεηέο παίξλνπλ κνξθή εκθάληζεο ακέζσο, φκσο θάπνηεο ζέινπλ εηδηθή κεηαρείξηζε. Υξεζηκνπνηψληαο ην JHTML::('grid.id') κπνξνχκε λα πάξνπκε ηνλ HTML θψδηθα ελφο checkbox πνπ ζα αλαγλσξίδεηαη απφ ην back-end Javascript. Η ζπλάξηεζε JHTML::_('grid.published') παξάγεη κία εηθφλα θνπκπηνχ βαζηζκέλε ζηελ ηηκή ηεο published κεηαβιεηήο ηεο γξακκήο. Όηαλ απηή είλαη 1, παίξλνπκε έλα check σο εηθφλα, ελψ φηαλ είλαη 0 εκθαλίδεηαη έλα x. Αλαλεψλνπκε θαη πάιη ηνλ θψδηθα ηνπ switch() sto admin.reviews.php: switch($task) { case 'add': editreview( $option ); break; case 'save': savereview( $option ); break; } default: showreviews( $option ); break; 60

61 Μφιηο γξάςνπκε ζηνλ πεξηεγεηή εκθαλίδεηαη ε νζφλε: 61

62 2.11 Αλάπηπμε ηνπ Front-end Έρνληαο γξάςεη θάπνηα δεδνκέλα, reviews, ζην back-end, ηψξα νη ρξήζηεο ζέινπλ λα δνπλ πψο απηά εκθαλίδνληαη γηα λα ηα βιέπνπλ νη επηζθέπηεο ηνπ ηζηνηφπνπ ζην frond-end πγθέληξσζε ησλ reviews Μέρξη ηψξα φηαλ πιεθηξνινγνχζακε κεηαθεξφκαζηαλ ζηελ εηθφλα: Σψξα ζα γεκίζνπκε απηή ηελ εηθφλα κε κηα ιίζηα πνπ ζα πεξηέρεη ζπλδέζκνπο πνπ ζα δείρλνπλ ζε μερσξηζηέο reviews ην θαζέλα, ηηο νπνίεο έρνπκε πξνζζέζεη ζηε βάζε, ψζηε φηαλ νη επηζθέπηεο θνξηψλνπλ ηνλ ηζηφηνπν λα κπνξνχλ λα πεξηεγεζνχλ ζηα reviews. Πεγαίλνπκε ζην θάθειν /components/com_reviews ζην αξρείν reviews.php θαη εηζάγνπκε ηνλ θψδηθα: jimport('joomla.application.helper'); require_once( JApplicationHelper::getPath( 'html' ) ); JTable::addIncludePath(JPATH_ADMINISTRATOR.DS. 'components'.ds.$option.ds.'tables'); switch($task) { default: showpublishedreviews($option); break; } 62

63 function showpublishedreviews($option) { $db =& JFactory::getDBO(); $query = "SELECT * FROM # reviews WHERE published = '1' ORDER BY review_date DESC"; $db->setquery( $query ); $rows = $db->loadobjectlist(); if ($db->geterrornum()) { echo $db->stderr(); return false; } HTML_reviews::showReviews($rows, $option); } Πεξλάκε ην JPATH_ADMINISTRATOR.DS.'components'.DS.$option.DS.'tables' ζην Jtable::addIncludePath() γηα λα ηξαβήμνπκε ηελ θιάζε table πνπ είρακε γξάςεη ζην back-end. Η ζπλάξηεζε switch() ιεηηνπξγεί κε ηελ πξνεπηιεγκέλε πεξίπησζε case, ε νπνία θαιεί ηε ζπλάξηεζε γηα λα εκθαλίζεη φιεο ηηο θνηλνπνηεκέλεο (published) reviews. Σν query ζε απηή ηε ζπλάξηεζε δηαβεβαηψλεη ην φηη ζα εκθαληζηνχλ κφλν νη published reviews θαη απηέο ζα είλαη ηαμηλνκεκέλεο κε αληίζηξνθε ρξνλνινγηθή κε βάζε ηελ εκεξνκελία πνπ έγηλε ην review (review date). ε απηφ ην ζεκείν πξέπεη λα πξνζζέζνπκε ηελ θιάζε HTML_reviews class γηα ην frond-end. ην θάθειν /components/com_reviews δεκηνπξγνχκε ην αξρείν reviews.html.php: <?php class HTML_reviews { function showreviews($rows, $option) {?><table><?php foreach($rows as $row) { $link = 'index.php?option='. $option. '&id='. $row->id. '&task=view'; echo '<tr> <td> <a href="'. $link. '">'. $row->name. '</a> </td> </tr>'; }?></table><?php } }?> 63

64 Η ζπλάξηεζε showreviews() παίξλεη έλα ζεη απφ γξακκέο ηεο βάζεο θαη ην φλνκα ηνπ component. ε θάζε επαλάιεςε ε ζπλάξηεζε πξνζζέηεη έλα ζχλδεζκν link γηα θάζε γξακκή Δκθάληζε ησλ reviews Αλ θάλνπκε θιηθ ζε θάπνην απφ ηνπο ζπλδέζκνπο ηψξα, ζα δνχκε απιψο ηε ίδηα νζφλε αθνχ δελ έρνπκε αθφκε θηηάμεη ηνλ θψδηθα πνπ ζα ρεηξίδεηαη ην view task. Γη απηφ πξνζζέηνπκε ζην reviews.php ηνλ θψδηθα: function viewreview($option) { $id = JRequest::getVar('id', 0); $row =& JTable::getInstance('review', 'Table'); $row->load($id); if(!$row->published) { JError::raiseError( 404, JText::_( 'Invalid ID provided' ) ); } HTML_reviews::showReview($row, $option); } Πξψηα παίξλνπκε ην id απφ ην request ρξεζηκνπνηψληαο ηε getvar(), ε νπνία ειέγρεη ηε κεηαβιεηή σο πξνο δηαθνξεηηθνχο ηχπνπο. Αλ ε ηηκή γηα ην id ιείπεη ή δελ είλαη ζπκβαηή, ηφηε ιακβάλεηαη σο ηηκή ην 0 πνπ δίλεηαη σο δεχηεξε επηινγή παξακέηξνπ. 64

65 ηε ζπλέρεηα παίξλνπκε κηα αλαθνξά απφ ηελ θιάζε table ηνπ backend. Αθνχ θνξησζεί ε γξακκή κε ην εθάζηνηε id, γίλεηαη έιεγρνο γηα λα πηζηνπνηεζεί φηη ε επηιεγκέλε review είλαη published. Αλ δελ είλαη, ρξεζηκνπνηνχκε ηελ ζπλάξηεζε raiseerror() ηνπ JError γηα λα εκθαλίζεη ην κήλπκα «404 - Page could not be found». Σψξα πξνζζέηνπκε ζην switch() ηνλ παξαθάησ θψδηθα: switch($task) { case 'view': viewreview($option); break; default: showpublishedreviews($option); break; } 65

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

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

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

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

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

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

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

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

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

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

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

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

Κεθάλαιο 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, Δξ.

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

Α Ο Κ Η Α Μ Α Ζ Η Η Ρ Η ( 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/) ν ρξήζηεο κπνξεί λα εληνπίζεη πιηθό αθαδεκαϊθνύ θαη

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

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 ζηηο πξνεπηιεγκέλεο ηνπ ξπζκίζεηο

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Constructors and Destructors in C++

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

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

Διιεληθά Σειρά Moov Δγτειρίδιο τρήζηη Δνημέρφζης ταρηών Web Αλαζεώξεζε: R00 (2010/05) Πώς να ενημερώζφ ηοσς τάρηες; Υπάξρνπλ ηέζζεξα βήκαηα γηα ηελ ελεκέξσζε ηνπ ράξηε. Βήκα

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training Dipl.Biol.cand.med. Stylianos Kalaitzis Stylianos Kalaitzis Μνλνϋβξηδηζκνο 1 Γπν γνλείο, εηεξόδπγνη γηα ηνλ αιθηζκό θάλνπλ παηδηά. Πνία ε πηζαλόηεηα

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

Σρήκα Α. Γξάθνπκε ηα ζηνηρεία ηνπ Πξνκεζεπηή θαη παηάκε Δηζαγσγή. Σρήκα Β1

Σρήκα Α. Γξάθνπκε ηα ζηνηρεία ηνπ Πξνκεζεπηή θαη παηάκε Δηζαγσγή. Σρήκα Β1 MENU ΜΗΤΡΩΑ Προμηθεστές Σε απηό ην ζεκείν ηεο εθαξκνγήο επεμεξγαδόκαζηε ηo κεηξών Πξνκεζεπηώλ. Κάλνληαο θιηθ κε ην πνληίθη πάλσ ζην Πξνζζήθε (βειάθη 1) ζα βγεη ε θόξκα γηα ηελ εηζαγσγή λέαο εγγξαθήο (Σρήκα

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

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

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

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

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

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

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

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

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

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

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

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

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

Παλεπηζηήκην Πεηξαηψο Σκήκα Πιεξνθνξηθήο

Παλεπηζηήκην Πεηξαηψο Σκήκα Πιεξνθνξηθήο Παλεπηζηήκην Πεηξαηψο Σκήκα Πιεξνθνξηθήο Πξφγξακκα Μεηαπηπρηαθψλ πνπδψλ «Πιεξνθνξηθή» Μεηαπηπρηαθή Γηαηξηβή Σίηινο Γηαηξηβήο Ολνκαηεπψλπκν Φνηηεηή Παηξψλπκν Αξηζκφο Μεηξψνπ Δπηβιέπσλ Δημιουργία ιστότοπου

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

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

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

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

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ (Δλδεηθηηθέο Απαληήζεηο) ΘΔΜΑ Α Α1. α. Σωζηό β. Λάζνο

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

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

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

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

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Ειζαγωγή ζηη Φωηογραθία. Χριζηάκης Σαζεΐδης EFIAP

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Ειζαγωγή ζηη Φωηογραθία. Χριζηάκης Σαζεΐδης EFIAP ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ Ειζαγωγή ζηη Φωηογραθία Χριζηάκης Σαζεΐδης EFIAP 1 ΜΑΘΗΜΑ 6 ο Προγράμμαηα θωηογραθικών μηχανών Επιλογέας προγραμμάηων Μαο δίλεη ηε δπλαηόηεηα λα ειέγμνπκε ην άλνηγκα δηαθξάγκαηνο θαη

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

Αλμπερτ Μπουςαΐ (Α.Μ:34631)

Αλμπερτ Μπουςαΐ (Α.Μ:34631) Πηστιακή Εργαζία Τίηλος: Ανάπτυξη ιςτοςελίδασ online εξυπηρζτηςησ ςυνεργειϊν επιςκευϊν Αλμπερτ Μπουςαΐ (Α.Μ:34631) Επιβλζπων καθηγητήσ: Ι. Γ. Αγγειόπνπινο, MSc., PhD. Καζ. ΣΔΙ Πεηξαηά Περιεχόμενα 1. Ειςαγωγικά

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

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

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

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

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

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

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

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

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ ΝΟΜΟ ΙΨΑΝΝΙΝΨΝ ΔΗΜΟ ΙΨΑΝΝΙΣΨΝ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ ΝΟΜΟ ΙΨΑΝΝΙΝΨΝ ΔΗΜΟ ΙΨΑΝΝΙΣΨΝ Γ/λζε Πξνγξακκαηηζκνχ Οξγάλσζε θαη Πιεξνθνξηθή Σκήκα Πξνγξακκαηηζκνχ θαη Αλάπηπμε Σαρ. Γ/λζε: Βεληδέινπ4, Σ.Κ. 45 444, Ισάλληλα Μ ε λ έ τ η ΕΡΓΟ : ΧΗΥΙΑΚΟ ΤΛΙΚΟ ΚΑΙ ΜΕΣΑΥΡΑΗ ΤΠΑΡΦΟΤΑ ΙΣΟΕΛΙΔΑ ΓΙΑ ΣΟΝ ΕΚΤΓΦΡΟΝΙΜΟ

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

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

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

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

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

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

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

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

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

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

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

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

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

Κεθάιαην 20. Ελαχιστοποίηση του κόστους

Κεθάιαην 20. Ελαχιστοποίηση του κόστους Κεθάιαην 0 Ελαχιστοποίηση του κόστους Ειαρηζηνπνίεζε ηνπ θόζηνπο Μηα επηρείξεζε ειαρηζηνπνηεί ην θόζηνο ηεο αλ παξάγεη νπνηνδήπνηε δεδνκέλν επίπεδν πξντόληνο y 0 ζην κηθξόηεξν δπλαηό ζπλνιηθό θόζηνο. Τν

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

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

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

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

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 γηα ηελ νπνία ηζρύνπλ:

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

ΜΗΧΑΝΟΛΟΓΙΚΟ ΣΧΔΓΙΟ ΙΙ

ΜΗΧΑΝΟΛΟΓΙΚΟ ΣΧΔΓΙΟ ΙΙ 1 Σ. Δ. Ι. ΓΤ Σ Ι Κ Η Μ Α Κ Δ Γ Ο Ν Ι Α ΥΟΛΗ ΣΔΥΝΟΛΟΓΙΚΩΝ ΔΦΑΡΜΟΓΩΝ Σ Μ Η Μ Α Μ Η Υ Α Ν ΟΛΟ Γ Ι Α Δξγαζηήξην Μεραλνπξγηθώλ Καηεξγαζηώλ & CAD ΜΗΧΑΝΟΛΟΓΙΚΟ ΣΧΔΓΙΟ ΙΙ ΜΑΘΗΜΑ 2: Πνηόηεηα Δπηθάλεηαο Γξ. Βαξύηεο

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

Εςθςή ζςζηήμαηα επισειπήζεων και αξιολόγηζη

Εςθςή ζςζηήμαηα επισειπήζεων και αξιολόγηζη Εςθςή ζςζηήμαηα επισειπήζεων και αξιολόγηζη Μάθημα 11 Τμήμα Μάπκεηινγκ και Διοίκηζηρ Λειηοςπγιών Τα δηαγξάκκαηα θαηάζηαζεο (state diagrams) ρξεζηκνπνηνύληαη γηα λα βνεζήζνπλ ηνλ πξνγξακκαηηζηή λα θαηαιάβεη

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

Έξεπλα ζην δηαδίθηπν γηα εξγαιεία απηνκαηνπνηεκέλεο δεκηνπξγίαο δηαρείξηζεο πεξηερνκέλνπ

Έξεπλα ζην δηαδίθηπν γηα εξγαιεία απηνκαηνπνηεκέλεο δεκηνπξγίαο δηαρείξηζεο πεξηερνκέλνπ ΠΑΝΔΠΗΣΖΜΗΟ ΓΤΣΗΚΖ ΑΣΣΗΚΖ ΥΟΛΖ ΓΗΟΗΚΖΣΗΚΧΝ, ΟΗΚΟΝΟΜΗΚΧΝ & ΚΟΗΝΧΝΗΚΧΝ ΠΟΤΓΧΝ ΣΜΖΜΑ ΑΡΥΔΗΟΝΟΜΗΑ, ΒΗΒΛΗΟΘΖΚΟΝΟΜΗΑ KAI ΤΣΖΜΑΣΧΝ ΠΛΖΡΟΦΟΡΖΖ Έξεπλα ζην δηαδίθηπν γηα εξγαιεία απηνκαηνπνηεκέλεο δεκηνπξγίαο δηαρείξηζεο

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

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

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

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

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

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

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

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

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

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

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

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

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

ΚΔΦ. 2.4 ΡΗΕΔ ΠΡΑΓΜΑΣΗΚΩΝ ΑΡΗΘΜΩΝ

ΚΔΦ. 2.4 ΡΗΕΔ ΠΡΑΓΜΑΣΗΚΩΝ ΑΡΗΘΜΩΝ ΚΔΦ.. ΡΗΕΔ ΠΡΑΓΜΑΣΗΚΩΝ ΑΡΗΘΜΩΝ Οξηζκόο ηεηξαγσληθήο ξίδαο: Αλ 0 ηόηε νλνκάδνπκε ηεηξαγσληθή ξίδα ηνπ ηελ κε αξλεηηθή ιύζε ηεο εμίζσζεο:. Γειαδή ηεηξαγσληθή ξίδα ηνπ 0 ιέγεηαη ν αξηζκόο 0 πνπ όηαλ πςσζεί

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

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

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

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

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 ΑΚΖΔΗ ΤΜΝΑΗΟΤ - ΚΤΚΛΟ ΠΡΩΣΟ - - ηα πνηεο ηηκέο ηνπ ηα παξαθάησ θιάζκαηα δελ νξίδνληαη ; (Τπόδεημε : έλα θιάζκα νξίδεηαη αλ ν παξνλνκαζηήο είλαη δηάθνξνο ηνπ κεδελόο) - (-) - (-) - Να απινπνηεζνύλ ηα θιάζκαηα

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

CT_back office. Internet Business Hellas

CT_back office. Internet Business Hellas CT_back office Internet Business Hellas To CT_call center, είλαη έλα πξωηνπνξηαθό πξνϊόλ δηαρείξηζεο θαη νξγάλωζεο επαθώλ πειαηνινγίνπ. έρεη αλαπηπρζεί από ηελ εηαηξεία καο ζην ζύλνιό ηνπ, είλαη πιήξωο

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

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

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

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

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

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

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

ΥΡΙΣΟΤΓΔΝΝΙΑΣΙΚΔ ΚΑΣΑΚΔΤΔ

ΥΡΙΣΟΤΓΔΝΝΙΑΣΙΚΔ ΚΑΣΑΚΔΤΔ ΥΡΙΣΟΤΓΔΝΝΙΑΣΙΚΔ ΚΑΣΑΚΔΤΔ 1) Υξηζηνπγελληάηηθα ειαηάθηα θάξηα ή θαδξάθη θάξηα ή θαδξάθη Τιηθά πνπ ζα ρξεηαζηνύκε: Υαξηί θάλζνλ καύξν γηα ην θόλην, πξάζηλν γηα ηα ειαηάθηα, θόθθηλν γηα ηα αζηεξάθηα Απιό

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

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

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

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

Κεθάλαιο 7. Πξνζθνξά ηνπ θιάδνπ Μ. ΨΥΛΛΑΚΗ

Κεθάλαιο 7. Πξνζθνξά ηνπ θιάδνπ Μ. ΨΥΛΛΑΚΗ Κεθάλαιο 7 Πξνζθνξά ηνπ θιάδνπ 1 Προζθορά ανηαγωνιζηικού κλάδοσ Πώο πξέπεη λα ζπλδπαζηνύλ νη απνθάζεηο πξνζθνξάο ησλ πνιιώλ επηκέξνπο επηρεηξήζεσλ ελόο αληαγσληζηηθνύ θιάδνπ γηα λα βξνύκε ηελ θακπύιε πξνζθνξάο

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

Αντισταθμιστική ανάλυση

Αντισταθμιστική ανάλυση Θεσξήζηε έλαλ αιγόξηζκν Α πνπ ρξεζηκνπνηεί κηα δνκή δεδνκέλσλ Γ : Καηά ηε δηάξθεηα εθηέιεζεο ηνπ Α ε Γ πξαγκαηνπνηεί κία αθνινπζία από πξάμεηο. Παξάδεηγκα: Θπκεζείηε ην πξόβιεκα ηεο εύξεζεο-έλσζεο Δίρακε

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

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

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

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

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

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

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

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

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

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

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

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

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

ΥΔΓΙΑΜΟ, ΚΑΣΑΚΔΤΗ ΚΑΙ ΑΝΑΠΣΤΞΗ ΗΛΔΚΣΡΟΝΙΚΟΤ ΚΑΣΑΣΗΜΑΣΟ,ONLINE ΒΙΒΛΙΟΠΩΛΔΙΟ.

ΥΔΓΙΑΜΟ, ΚΑΣΑΚΔΤΗ ΚΑΙ ΑΝΑΠΣΤΞΗ ΗΛΔΚΣΡΟΝΙΚΟΤ ΚΑΣΑΣΗΜΑΣΟ,ONLINE ΒΙΒΛΙΟΠΩΛΔΙΟ. Σ.Δ.Η ΘΔΑΛΟΝΗΚΖ ΥΟΛΖ ΣΔΥΝΟΛΟΓΗΚΩΝ ΔΦΑΡΜΟΓΩΝ ΣΜΖΜΑ ΠΛΖΡΟΦΟΡΗΚΖ ΥΔΓΙΑΜΟ, ΚΑΣΑΚΔΤΗ ΚΑΙ ΑΝΑΠΣΤΞΗ ΗΛΔΚΣΡΟΝΙΚΟΤ ΚΑΣΑΣΗΜΑΣΟ,ONLINE ΒΙΒΛΙΟΠΩΛΔΙΟ. Σεο θνηηήηξηαο Σζηγάξα Δπζπκία Αξ. Μεηξψνπ: 07/3198 Δπηβιέπσλ θαζεγεηήο

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

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

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

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

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

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

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

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

ΣΔΥΝΟΛΟΓΙΚΟ ΔΚΠΑΙΓΔΤΣΙΚΟ ΙΓΡΤΜΑ (ΣΔΙ) ΓΤΣΙΚΗ ΜΑΚΔΓΟΝΙΑ ΣΔΥΝΟΛΟΓΙΚΟ ΔΚΠΑΙΓΔΤΣΙΚΟ ΙΓΡΤΜΑ (ΣΔΙ) ΓΤΣΙΚΗ ΜΑΚΔΓΟΝΙΑ ΠΑΡΑΡΣΗΜΑ ΚΑΣΟΡΙΑ ΣΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗ & ΣΔΥΝΟΛΟΓΙΑ ΤΠΟΛΟΓΙΣΩΝ ΠΣΤΥΙΑΚΗ ΔΡΓΑΙΑ Σνπ Ρνχζζνπ Γεψξγηνπ Α.Δ.Μ. 304 «Αλάπηπμε Portal & Forum γηα ην Σ.Δ.Ι.

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

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

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

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

ΔΦΑΡΜΟΜΔΝΑ ΜΑΘΗΜΑΣΙΚΑ ΣΗ ΧΗΜΔΙΑ Ι ΘΔΜΑΣΑ Α επηέκβξηνο 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

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

Σεσνολογικό Εκπαιδεςηικό Ίδπςμα Κπήηηρ σολή Σεσνολογικών Εθαπμογών Σμήμα Μησανικών Πληποθοπικήρ

Σεσνολογικό Εκπαιδεςηικό Ίδπςμα Κπήηηρ σολή Σεσνολογικών Εθαπμογών Σμήμα Μησανικών Πληποθοπικήρ Σεσνολογικό Εκπαιδεςηικό Ίδπςμα Κπήηηρ σολή Σεσνολογικών Εθαπμογών Σμήμα Μησανικών Πληποθοπικήρ ΠΣΤΥΙΑΚΗ ΕΡΓΑΙΑ Δημιοςπγία ηλεκηπονικού καηαζηήμαηορ με είδη παθήρ και κενηήμαηορ ΟΝΟΜΑΣΔΠΩΝΤΜΟ: ΠΑΣΑΚΗ ΥΡΙΣΟΦΟΡΟ

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

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

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

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

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

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

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

Τηλζφωνο: 99543321 Ε-mail: savvas_email@yahoo.com Ώρες διδασκαλίας: 16:00 19:15 μμ

Τηλζφωνο: 99543321 Ε-mail: savvas_email@yahoo.com Ώρες διδασκαλίας: 16:00 19:15 μμ ΠΑΙΓΑΓΩΓΙΚΟ ΙΝΣΙΣΟΤΣΟ ΚΤΠΡΟΤ Πξόγξακκα Δπηκόξθσζεο Τπνςεθίσλ Καζεγεηώλ Σερλνινγίαο Γελάξεο 2011 ΗΛΔΚΣΡΟΝΙΚΑ Ι (Ύιε Γπκλαζίνπ) Διδάσκων: Σαββίδης Σάββας Τηλζφωνο: 99543321 Ε-mail: savvas_email@yahoo.com

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

Σηα παξαδείγκαηα πνπ αθνινπζνύλ ρξεζηκνπνηήζεθαλ ην JQUIZ, ην JCROSS θαη ην JMATCH, πνπ αλαιπηηθά πεξηγξάθνληαη παξαθάηω.

Σηα παξαδείγκαηα πνπ αθνινπζνύλ ρξεζηκνπνηήζεθαλ ην JQUIZ, ην JCROSS θαη ην JMATCH, πνπ αλαιπηηθά πεξηγξάθνληαη παξαθάηω. Τι είναι το Hotpotatoes; Τν παθέην HotPotatoes 6 πνπ ρξεζηκνπνηήζεθε γηα ηε δεκηνπξγία ηωλ αζθήζεωλ, είλαη έλα πξόγξακκα αλνηρηνύ ινγηζκηθνύ θαη κπνξεί λα ρξεζηκνπνηεζεί ειεύζεξα από Παλεπηζηεκηαθά Ιδξύκαηα,

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

Ειςαγωγή ςτην καταςκευή ιςτοςελίδων και ηλ. καταςτημάτων. tapostolatos@aegean.gr

Ειςαγωγή ςτην καταςκευή ιςτοςελίδων και ηλ. καταςτημάτων. tapostolatos@aegean.gr Ειςαγωγή ςτην καταςκευή ιςτοςελίδων και ηλ. καταςτημάτων tapostolatos@aegean.gr Τι είναι ηο website Σύνολο από ιζηοζελίδες σπερκειμένοσ (hypertext)...πνπ θηινμελνύληαη ζε έλα web server Έρεη μοναδική διεύθσνζη

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

ΑΙΟΛΙΚΑ ΠΑΡΚΑ. Δρώτηση 1

ΑΙΟΛΙΚΑ ΠΑΡΚΑ. Δρώτηση 1 ΑΙΟΛΙΚΑ ΠΑΡΚΑ Πνιινί άλζξσπνη πηζηεύνπλ όηη ν άλεκνο ζα έπξεπε λα αληηθαηαζηήζεη ην πεηξέιαην θαη ην θάξβνπλν σο πεγή ελέξγεηαο γηα ηελ παξαγσγή ειεθηξηζκνύ. Οη θαηαζθεπέο πνπ θαίλνληαη ζηελ εηθόλα είλαη

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

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

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

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

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

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

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

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική Δίζηε μησανικόρ διοίκηζηρ μεγάληρ καηαζκεςαζηικήρ εηαιπείαρ και καλείζηε να ςλοποιήζεηε ηο έπγο πος πεπιγπάθεηαι από ηον Πίνακα 1. Κωδ.

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