Δημιουργία δυναμικής ιστοσελίδας σε PHP. Ανάπτυξη εφαρμογής FORUM.

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

Download "Δημιουργία δυναμικής ιστοσελίδας σε PHP. Ανάπτυξη εφαρμογής FORUM."

Transcript

1 Εισαγωγή Αντικείμενο της εργασίας είναι η δημιουργία μια δυναμικής εφαρμογής FORUM στο Internet. Για την ανάπτυξη και την υλοποίηση της εφαρμογής αυτής θα χρησιμοποιηθεί η γλώσσα PHP και η βάση δεδομένων MySQL. Το διάβασμα της εργασίας θα σας επιτρέψει να δημιουργήσετε πραγματικές, δυναμικές Web τοποθεσίες. Αν έχετε δημιουργήσει Web τοποθεσίες χρησιμοποιώντας απλή HTML, θα καταλάβατε τα όρια αυτής της προσεγγίσεις. Τα στατικά περιεχόμενα μιας HTML Web τοποθεσίας, είναι απλώς αυτό, δηλαδή στατικά. Παραμένουν τα ίδια, εκτός και αν τα ενημερώσετε άμεσα. Οι χρήστες σας δεν μπορούν να συνδιαλέγονται με την τοποθεσία με κάποιο τρόπο που να είναι ουσιαστικός. Χρησιμοποιώντας μια γλώσσα, όπως την PHP και μια βάση δεδομένων, όπως την MySQL μπορείτε να κάνετε τις τοποθεσίες σας δυναμικές, δηλαδή να είναι προσαρμόσιμες και θα περιέχουν ενημερωμένε πληροφορίες. Τι είναι η PHP; Η ΡΗΡ είναι μια γλώσσα script από την πλευρά του διακομιστή, σχεδιασμένη ειδικά για το Web.Μέσα σε μια HTML σελίδα μπορείτε να ενσωματώσετε PHP κώδικα, που θα εκτελείται κάθε φορά που θα επισκέπτεστε τη σελίδα. Ο ΡΗΡ κώδικας μεταφράζετε στο Web διακομιστή και δημιουργεί HTML ή άλλη έξοδο που θα δει ο επισκέπτης. Η ΡΗΡ δημιουργήθηκε το 1994 και ήταν αρχικά η δουλειά ενός ατόμου, του Rasmus Lerdorf. Υιοθετήθηκε και από άλλα ταλαντούχα άτομα και έχει περάσει από τρεις βασικές εκδόσεις. Τον Ιανουάριο του 2001 ήταν σε χρήση σχεδόν σε πέντε εκατομμύρια τομείς παγκόσμια και αυτός ο αριθμός μεγαλώνει γρήγορα. Η ΡΗΡ είναι ένα προϊόν ανοιχτού κώδικα. Θα έχετε πρόσβαση στον κώδικα προέλευσης. Μπορείτε να τον χρησιμοποιήσετε, να τον αλλάξετε και να τον αναδιανείμετε, χωρίς χρέωση. Η ΡΗΡ αρχικά σήμαινε Personal Home Page ( προσωπική αρχική σελίδα ), αλλά άλλαξε σύμφωνα με την σύμβαση GNU και τώρα σημαίνει PHP Hypertext Preprocessor ( προεπεξεργαστής κειμένου PHP ). Η τρέχουσα βασική έκδοση της ΡΗΡ είναι η 4. Αυτή η έκδοση έχει μερικές μεγάλες βελτιώσεις στη γλώσσα. Τι είναι η MySQL; Η MySQL είναι ένα πολύ γρήγορο και δυνατό, σύστημα διαχείρισης βάσεων δεδομένων. Μια βάση δεδομένων σας επιτρέπει να αποθηκεύετε, να αναζητάτε, να ταξινομείτε και να ανακαλείτε τα δεδομένα αποτελεσματικά. Ο MySQL διακομιστής ελέγχει την πρόσβαση στα δεδομένα σας, για να μπορούν να δουλεύουν πολλοί χρήστες ταυτόχρονα, για να παρέχει γρήγορη πρόσβαση και να διασφαλίζει ότι μόνο πιστοποιημένοι χρήστες μπορούν να έχουν πρόσβαση. Συνεπώς η MySQL είναι ένας πολυνηματικός διακομιστής πολλαπλών χρηστών. Χρησιμοποιεί την SQL ( Structured Query Language ) την τυπική γλώσσα ερωτημάτων για βάσεις δεδομένων, παγκόσμια. H MySQL είναι διαθέσιμη από το 1996 αλλά η ιστορίας της ξεκινά από το Σελ.1

2 Πλεονεκτήματα της ΡΗΡ Κάποιοι από τους βασικούς ανταγωνιστές της ΡΗΡ είναι ο Perl, Microsoft Active Server Pages (ASP), Java Server Pages ( JSP ) και Allaire Cold Fusion. Σε σύγκριση με αυτά τα προϊόντα, η ΡΗΡ έχει πολλά πλεονεκτήματα όπως : Υψηλή απόδοση Διασυνδέσεις με πολλά διαφορετικά συστήματα βάσεων δεδομένων Ενσωματωμένες βιβλιοθήκες για πολλές συνηθισμένες Web διαδικασίες Χαμηλό κόστος Ευκολία μάθησης και χρήσης Μεταφερσιμότητα Διαθεσιμότητα του κώδικα προέλευσης Ακολουθεί μια πιο λεπτομερή περιγραφή αυτών των πλεονεκτημάτων. Απόδοση Η ΡΗΡ είναι πολύ αποτελεσματική. Με ένα φθηνό διακομιστή μπορείτε να εξυπηρετήσετε εκατομμύρια επισκέψεων καθημερινά. Οι δοκιμές που δημοσιεύθηκαν από την Zend Technologies ( δείχνουν ότι η ΡΗΡ ξεπερνά τους ανταγωνιστές της. Ολοκλήρωση με Βάσεις δεδομένων Η ΡΗΡ έχει εγγενείς συνδέσεις για πολλά συστήματα βάσεων δεδομένων. Εκτός από την MySQL, μπορείτε να συνδεθείτε κατευθείαν με τις βάσεις δεδομένων PostgreSQL, msql, Oracle, dbm, filepro, Informix, InterBase, Sybase, μεταξύ άλλων. Χρησιμοποιώντας το Open Database Connectivity Standard (ODBC) μπορείτε να συνδεθείτε σε οποιαδήποτε βάση δεδομένων παρέχει ένα πρόγραμμα οδήγησης ODBC. Αυτό περιλαμβάνει και τα προϊόντα της Microsoft products, μεταξύ άλλων. Ενσωματωμένες Βιβλιοθήκες Επειδή η ΡΗΡ σχεδιάστηκε για να χρησιμοποιείται στο Web, έχει πολλές ενσωματωμένες βιβλιοθήκες, που εκτελούν πολλές χρήσιμες λειτουργίες σχετικές με το Web. Μπορείτε να δημιουργήσετε εικόνες GIF δυναμικά, να συνδεθείτε με άλλες υπηρεσίες δικτύων, να στείλετε ηλεκτρονικό ταχυδρομείο, να δουλέψετε με cookies και να δημιουργήσετε PDF έγγραφα : όλα αυτά με λίγες γραμμές κώδικα. Σελ.2

3 Κόστος Η ΡΗΡ είναι δωρεάν. Μπορείτε να κατεβάσετε την τελευταία έκδοση από το χωρίς χρέωση. Εκμάθηση της ΡΗΡ Η σύνταξη της ΡΗΡ βασίζεται σε άλλες γλώσσες προγραμματισμού,βασικά στην C και στην Perl. Μεταφερσιμότητα Η ΡΗΡ είναι διαθέσιμη για πολλά λειτουργικά συστήματα. Μπορείτε να γράψετε κώδικα ΡΗΡ για δωρεάν συστήματα τύπου Unix, όπως LINUX και FreeBSD, για εμπορικές εκδώσεις του UNIX, όπως το Solaris και το IRIX ή για διαφορετικές εκδώσεις των Microsoft Windows. Ο κώδικα σας συνήθως θα δουλεύει χωρίς αλλαγές στα συστήματα που τρέχουν την ΡΗΡ. Κώδικας προέλευσης Έχετε πρόσβαση στον κώδικα προέλευσης της ΡΗΡ. Αντίθετα με εμπορικά, κλειστά προγράμματα, αν υπάρχει κάτι που θέλετε να αλλάξετε ή να προσθέσετε στη γλώσσα, μπορείτε να το κάνετε. Δεν χρειάζεται να περιμένετε τον κατασκευαστή να εμφανίσει διορθώσεις. Δεν θα ανησυχείτε αν ο κατασκευαστής θα σταματήσει να υπάρχει ή αν θα σταματήσει να υποστηρίζει το προϊόν. Πλεονεκτήματα της MySQL Μερικοί από τους κύριους ανταγωνιστές της MySQL είναι οι PostgreSQL, Microsoft SQL και Oracle. H MySQL έχει πολλά πλεονεκτήματα, όπως χαμηλό κόστος, εύκολη διαμόρφωση και μάθηση και ο κώδικας προέλευσης είναι διαθέσιμος. Απόδοση Η MySQL είναι χωρίς αμφιβολία γρήγορη. Μπορείτε να δείτε την σελίδα δοκιμών Πολλές από αυτές τις δοκιμές δείχνουν ότι η MySQL είναι αρκετά πιο γρήγορη από τον ανταγωνισμό. Σελ.3

4 Χαμηλό κόστος Η MySQL είναι διαθέσιμη δωρεάν, με άδεια ανοικτού κώδικα (Open Source) ή με χαμηλό κόστος, αν πάρετε εμπορική άδεια, αν απαιτείται από την εφαρμογή σας. Ευκολία Χρήσης Οι περισσότερες μοντέρνες βάσεις δεδομένων χρησιμοποιούν SQL. Αν έχετε χρησιμοποιήσει ένα άλλο σύστημα διαχείρισης βάσεων δεδομένων δεν θα έχετε πρόβλημα να προσαρμοστείτε σε αυτό. Μεταφερσιμότητα Η MySQL μπορεί να χρησιμοποιηθεί σε πολλά διαφορετικά συστήματα Unix όπως επίσης και στα Microsoft Windows. Κώδικας Προέλευσης Όπως και με την ΡΗΡ, μπορείτε να πάρετε και να τροποποιήσετε τον κώδικα προέλευσης της MySQL. Πώς είναι οργανωμένη η εργασία Η εργασία χωρίζεται σε πέντε κύριες ενότητες. Στο Μέρος Ι, γίνετε η αναλυτική περιγραφή την απαιτούμενων διαδικασιών για να μπορέσουμε να δουλέψουμε στην γλώσσα PHP και στην MySQL. ( Εγκαταστάσεις απαιτούμενων υλικών και ρυθμίσεων ) Στο Μέρος ΙΙ, γίνεται μια επισκόπηση των κυρίων τμημάτων της γλώσσας ΡΗΡ με παραδείγματα. Στο Μέρος ΙΙΙ, αναλύουμε την θεωρία και την σχεδίαση σχεσιακών συστημάτων βάσεων δεδομένων, όπως είναι η MySQL με την χρήση της SQL. Στο Μέρος ΙV, περιγράφετε ο τρόπος που μπορούμε να χρησιμοποιήσουμε την ΡΗΡ και την MySQL για τον έλεγχο ταυτότητας των χρηστών και την δημιουργία και διαχείριση συνόδων. Στο Μέρος V, θα αναλύσουμε και θα σχεδιάσουμε την εφαρμογή μας FORUM. Μετά το πέρας της εργασίας θα είμαστε ικανοί να δημιουργούμε, άμεσα και γρήγορα δυναμικές Ιστοσελίδες, εφαρμογές Web για οποιοδήποτε ανάγκη της αγοράς ή του προσωπικού μας χόμπι. Η περαιτέρω σχεδίαση εφαρμογών έγκειται στις ανάγκες τις αγοράς και της φαντασίας του Programmer ή Web Designer. Σελ.4

5 ΜΕΡΟΣ Ι ΣΕ ΑΥΤΟ ΤΟ ΜΕΡΟΣ Εγκατάσταση του Apache Server Εγκατάσταση της PHP Εγκατάσταση της MySQL Τελικές ρυθμίσεις για την σωστή λειτουργία Σελ.5

6 Για να μπορέσουμε να εργαστούμε και να σχεδιάσουμε δυναμικές σελίδες με την χρήση της ΡΗΡ και της MySQL απαιτείτε το ανάλογο λογισμικό και ένας διακομιστής Web. Θα χρησιμοποιήσουμε σαν λειτουργικό σύστημα τα Microsoft Windows XP και σαν διακομιστή τον Apache Web Server. Τον διακομιστή Apache Web Server μπορούμε να τον βρούμε δωρεάν στο Internet και να τον κατεβάσουμε από την ιστοσελίδα Συγκεκριμένα εμείς κατεβάσαμε την έκδοση που ήταν η νεότερη αυτήν τη στιγμή. (apache_ win32-x86-no_ssl.msi) Το επόμενο υλικό που πρέπει να έχουμε είναι οι βιβλιοθήκες της PHP για τα Microsoft Windows. Οι βιβλιοθήκες παρέχονται δωρεάν στις παρακάτω ιστοσελίδες: Η τελευταία έκδοση αυτή τη στιγμή είναι η (php win32.zip) Τέλος θα χρειαστούμε και την MySQL την οποία θα μπορέσουμε να την κατεβάσουμε δωρεάν από την ιστοσελίδα Η τελευταία έκδοση αυτή τη στιγμή είναι η (mysql win.zip) Επίσης ένα χρήσιμο εργαλείο για την MySQL το οποίο διαχειρίζεται τις βάσεις μας είναι το PHPMySQLAdmin το οποίο και αυτό διανέμεται δωρεάν στο Internet στην σελίδα Η τελευταία έκδοση αυτή τη στιγμή είναι η (phpmyadmin php.zip) Την συγγραφή του κώδικα από τα παραδείγματα μπορούμε να την κάνουμε και στο σημειωματάριο των Microsoft Windows ( Notepad ) ή μπορούμε να κατεβάσουμε μια δοκιμαστική έκδοση του πακέτου σχεδίασης ιστοσελίδων Macromedia Dreamweaver MX από την σελίδα Σελ.6

7 Εφόσον έχουμε όλα τα απαραίτητα υλικά μπορούμε να ξεκινήσουμε την εγκατάσταση τους. Εγκατάσταση του Apache Web Server Τρέχουμε το αρχείο : apache_ win32-x86-no_ssl.msi Θα εμφανιστεί η παρακάτω οθόνη και επιλέγουμε Next Σελ.7

8 Επιλέγουμε I accept the terms in the license agreement για να συνεχίσουμε με την εγκατάσταση του διακομιστή. πατάμε Next Σελ.8

9 Στην παρακάτω οθόνη επιλέγουμε For All users, on Port 80, as a Service -- Recommended. και πατάμε Next Διαλέγουμε Typical και πατάμε Next Σελ.9

10 Εδώ μας ζητάει σε ποιόν φάκελο του δίσκου μας θα εγκατασταθεί ο διακομιστής. Δεν αλλάζουμε την προεπιλεγμένη διαδρομή. Πατάμε Next Πατάμε Install και η εγκατάσταση θα ξεκινήσει Σελ.10

11 Μόλις τελειώσει η εγκατάσταση πατάμε Finish Σελ.11

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

13 Μετά την εγκατάσταση του διακομιστή Web έχει σειρά η εγκατάσταση των βιβλιοθηκών ΡΗΡ. Εγκατάσταση ΡΗΡ Αποσυμπιέζουμε τον αρχείο php win32.zip που κατεβάσαμε στον φάκελο c:\php Αντιγράφουμε τον αρχείο c:\php\php-ini.dist στον φάκελο των Windows ( c:\windows ) και το μετονομάζουμε σε php.ini Ανοίγουμε το αρχείο php.ini και αλλάζουμε της παρακάτω σειρές register_globals = On session.save_path = /tmp Δημιουργούμε έναν φάκελο στον δίσκο C: με όνομα tmp Δημιουργούμε έναν φάκελο στην διαδρομή C:\Program Files\Apache Group\Apache\htdocs με όνομα ergasia. Στον φάκελο αυτόν θα αποθηκεύουμε τα αρχεία PHP των παραδειγμάτων και της εφαρμογής FORUM Ανοίγουμε το αρχείο C:\Program Files\Apache Group\Apache\conf\httpd.conf και βρίσκουμε τις παρακάτω σειρές : # # ScriptAlias: This controls which directories contain server scripts. # ScriptAliases are essentially the same as Aliases, except that # documents in the realname directory are treated as applications and # run by the server when requested rather than as documents sent to the client. # The same rules about trailing "/" apply to ScriptAlias directives as to # Alias. # ScriptAlias /cgi-bin/ "C:/Program Files/Apache Group/Apache/cgi-bin/" και προσθέτουμε την παρακάτω γραμμή ScriptAlias /php/ "C:/php/" Έπειτα βρίσκουμε τις γραμμές # # AddType allows you to tweak mime.types without actually editing it, or to # make certain files to be certain types. # AddType application/x-tar.tgz Σελ.13

14 και προσθέτουμε τις παρακάτω AddType application/x-httpd-php.phtml.php AddType application/x-httpd-php-source.phps Τέλος βρίσκουμε τις παρακάτω γραμμές # # Action lets you define media types that will execute a script whenever # a matching file is called. This eliminates the need for repeated URL # pathnames for oft-used CGI file processors. # Format: Action media/type /cgi-script/location # Format: Action handler-name /cgi-script/location # και προσθέτουμε την παρακάτω γραμμή Action application/x-httpd-php /php/php.exe Το επόμενο βήμα είναι να δούμε δουλεύει η ΡΗΡ. Τα αρχεία που διακομιστεί ο διακομιστής μας βρίσκονται στον φάκελο C:\Program Files\Apache Group\Apache\htdocs. Επομένως ανοίγουμε το σημειωματάριο και δημιουργούμε ένα αρχείο phpinfo.php και μέσα γράφουμε τον παρακάτω κώδικα phpinfo(); και το αποθηκεύουμε μέσα στον φάκελο ergasia. Όλα τα αρχεία από εδώ και πέρα να εννοείτε ότι αποθηκεύονται εδώ μέσα. Σελ.14

15 Ανοίγουμε τον Internet Explorer των Windows XP και γράφουμε την διεύθυνση και αν έχουν όλα γίνει σωστά να εμφανιστεί η παρακάτω οθόνη. Σελ.15

16 Εγκατάσταση MySQL Αποσυμπιέζουμε το αρχείο mysql win.zip σε έναν προσωρινό φάκελο και τρέχουμε μετά το αρχείο Setup.exe. Σελ.16

17 Αφήνουμε την προεπιλεγμένη διαδρομή που θα εγκατασταθεί Σελ.17

18 Πατάμε Finish Βγαίνουμε σε περιβάλλον DOS, μπαίνουμε στον φάκελο c:\mysql\bin ( cd mysql\bin ) και γράφουμε την εντολή mysqld-max-nt install για να εγκατασταθεί σαν διακομιστής στα Windows η MySQL Σελ.18

19 Γράφουμε την εντολή NET START MySQL για να ξεκινήσει ο διακομιστής Τέλος γράφουμε την εντολή mysqlshow και θα εμφανιστούν οι 2 αρχικές βάσεις δεδομένων που δημιουργούνται με την εγκατάσταση της MySQL Κλείνουμε το παράθυρο το DOS (exit) Η διαδικασία εγκατάστασης όλων των υλικών σε αυτό το σημείο έχει ολοκληρωθεί και είμαστε έτοιμοι να συγγράψουμε τις πρώτες δυναμικές ιστοσελίδες μας. Σελ.19

20 ΜΕΡΟΣ ΙΙ ΣΕ ΑΥΤΟ ΤΟ ΜΕΡΟΣ Γρήγορη εκμάθηση της PHP Χρήση πινάκων Χειρισμός Συμβολοσειρών Επαναχρησιμοποίηση Κώδικα και Σύνταξη συναρτήσεων Σελ.20

21 Σε αυτό το μέρος θα κάνουμε μια γρήγορη επισκόπηση της σύνταξη της ΡΗΡ και των εντολών της γλώσσας. Θα αρχίσουμε με ένα παράδειγμα μιας online φόρμας παραγγελιών για να μάθουμε πως χρησιμοποιούνται οι μεταβλητές, οι τελεστές και οι παραστάσεις της ΡΗΡ. Θα καλύψουμε και τους τύπους των μεταβλητών. Θα δείξουμε πως είναι δυνατόν να προσπελαθούν οι μεταβλητές μιας φόρμας και πώς να τις χειριζόμαστε για να βρίσκουμε σύνολα και φόρους σε μια παραγγελία πελάτη. Μετά θα αναπτύξουμε την εφαρμογή χρησιμοποιώντας το ΡΗΡ script για να επικυρώσουμε τα δεδομένα εισόδου. Θα εξετάσουμε λογικές μεταβλητές και θα δώσουμε παραδείγματα για το πώς να χρησιμοποιείτε την εντολή if else. Τέλος θα εξερευνήσουμε τους βρόγχους γράφοντας PHP για να δημιουργήσουμε μεταβαλλόμενους πίνακες. Τα βασικά θέματα αυτού του μέρους είναι : Ενσωμάτωση ΡΗΡ στην HTML Προσθέτοντας δυναμικά περιεχόμενα Προσπέλαση μεταβλητών φορμών Αναγνωριστικά Μεταβλητές που δηλώνονται από τον χρήστη Τύποι μεταβλητών Εκχώρηση τιμών σε μεταβλητές Αποφάσεις με τις if, else Επανάληψη : βρόγχου while, do και for Πίνακες Χειρισμός συμβολοσειρών Επαναχρησιμοποίηση κώδικα και σύνταξη συναρτήσεων Σελ.21

22 Εφαρμογή δείγμα : Τα ανταλλακτικά του Νίκου Μια από τις πιο συνηθισμένες εφαρμογές οποιασδήποτε γλώσσας script από την πλευρά του διακομιστή είναι η επεξεργασία HTML φορμών. Θα αρχίσομε από την φόρμα παραγγελίας από το κατάστημα ανταλλακτικών του Νίκου, μια υποθετική εταιρεία με ανταλλακτικά. Η φόρμα παραγγελία Αυτή τη στιγμή έχουμε φτιάξει την φόρμα παραγγελιών του Νίκου για τα ανταλλακτικά που πουλάει ο Νίκος. Η φόρμα φαίνετε στην εικόνα 1.1 είναι μια σχετικά απλή φόρμα παραγγελίας παρόμοια με αυτές που υπάρχουν στις σελίδες του Internet. Το πρώτο πράγμα που θα ήθελε ο Νίκος να ξέρει, είναι τι παρήγγειλε ο πελάτης του, να βρει το σύνολο της παραγγελίας του και πόσος φόρος θα πληρωθεί. Εικόνα 1.1 Η αρχική φόρμα παραγγελίας του Νίκου καταγράφει μόνο προϊόντα και ποσότητες Σελ.22

23 Κώδικας του αρχείου orderform.html <html> <head> <title>ανταλλακτικά Αυτοκινήτων " Νίκος "</title> <meta http-equiv="content-type" content="text/html; charset=windows-1253"> </head> <body> <h1>ανταλλακτικά Αυτοκινήτων " Νίκος "</h1> <h2>φόρμα Παραγγελίας</h2> <form action="processorder.php" method=post> <table border=0> <tr bgcolor=#cccccc> <td width=150>ανταλλακτικό</td> <td width=15>ποσότητα</td> <td>ελαστικά</td> <td align=center><input type="text" name="tireqty" size=3 maxlength=3></td> <td>λάδια</td> <td align=center><input type="text" name="oilqty" size=3 maxlength=3></td> <td>μπουζιά</td> <td align=center><input type="text" name="sparkqty" size=3 maxlength=3></td> <td colspan=2 align=center><input type=submit value="submit Order"></td> </table> </form> </body> </html> Υπάρχουν δυο σημαντικά πράγματα στον κώδικα. Το πρώτο πράγμα που θα παρατηρήσετε είναι ότι έχουμε ορίσει την ενέργεια της φόρμας μας να είναι το όνομα του ΡΗΡ script που θα επεξεργαστεί την παραγγελία του πελάτη. Γενικά η τιμή της ιδιότητας ACTION είναι το URL που θα φορτωθεί όταν ο χρήστης πατήσει το κουμπί (submit). Τα δεδομένα που έχει πληκτρολογήσει ο χρήστης στη φόρμα θα σταλούν σε αυτό το URL, μέσω της μεθόδου που καθορίζεται στην ιδιότητα METHOD. Το δεύτερο σημαντικό πράγμα είναι τα ονόματα των πεδίων της φόρμας tireqty, oilqty και sparkqty. Θα χρησιμοποιήσουμε αυτά τα ονόματα ξανά στο PHP script. Εξ αιτίας αυτού, είναι σημαντικό να δίνουμε στα πεδία της φόρμας ονόματα που θα αντιπροσωπεύουν τις έννοιες της φόρμας μας για να μπορούμε να τα θυμόμαστε εύκολα. Σελ.23

24 Επεξεργασία της φόρμας Για να επεξεργαστούμε την φόρμα θα πρέπει να δημιουργήσουμε το script που αναφέρθηκε στην ιδιότητα ACTION της ετικέτας FORM, που ονομάζεται processorder.php. Ανοίγουμε το Notepad και δημιουργούμε το παραπάνω αρχείο και εισάγουμε τον παρακάτω κώδικα: <html> <head> <title>ανταλλακτικά Αυτοκινήτων " Νίκος "</title> <meta http-equiv="content-type" content="text/html; charset=windows-1253"> </head> <body> <h1>ανταλλακτικά Αυτοκινήτων</h1> <h2>αποτελέσματα Παραγγελίας</h2> </body> </html> Μέχρι στιγμής έχουμε γράψει τον απλό κώδικα HTML. Ενσωμάτωση ΡΗΡ στην HTML Κάτω από την επικεφαλίδα <h2> του αρχείου μας, πληκτρολογούμε την παρακάτω γραμμή: echo <p> Η παραγγελία επεξεργάστηκε. ; Αποθηκεύομε το αρχείο και το φορτώνουμε στον Browser το αρχείο με την φόρμα παραγγελίας, συμπληρώνουμε την παραγγελία και πατάμε Submit. Θα πρέπει να δούμε κάτι παρόμοιο με την εικόνα 1.2 Εικόνα 1.2 Το κείμενο που πέραση στην δομή της ΡΗΡ εμφανίζεται στον browser Σελ.24

25 Βλέποντας τον κώδικα μέσα από την browser, θα δούμε το παρακάτω. <html> <head> <title>ανταλλακτικά Αυτοκινήτων " Νίκος "</title> <meta http-equiv="content-type" content="text/html; charset=windows-1253"> </head> <body> <h1>ανταλλακτικά Αυτοκινήτων</h1> <h2>αποτελέσματα Παραγγελίας</h2> <p>η παραγγελία επεξεργάστηκε.</body> </html> Δεν φαίνεται καθόλου ο απλός κώδικα. Αυτό συμβαίνει επειδή ο μεταφραστείς έχει τρέξει το script και το έχει αντικαταστήσει με την έξοδο από το script.αυτό σημαίνει ότι, από την ΡΗΡ μπορούμε να παράγουμε καθαρή HTML, που φαίνεται σε οποιονδήποτε browser με αλλά λόγια,ο browser του χρήστη δεν χρειάζεται να καταλαβαίνει PHP. Αυτό δείχνει την ιδέα των script από την πλευρά του διακομιστή. Η ΡΗΡ έχει μεταφραστεί και εκτελεστεί στο Web διακομιστή, ξεχωριστά από την JavaScript και άλλες τεχνολογίες από την πλευρά του πελάτη που μεταφράζονται και εκτελούνται σε ένα Web Browser στον υπολογιστή του χρήστη. Ο κώδικας που έχουμε τώρα σε αυτό το αρχείο αποτελείται από τέσσερα πράγματα HTML Ετικέτες PHP Εντολές ΡΗΡ Χρησιμοποιώντας τις ΡΗΡ ετικέτες Ο κώδικας ΡΗΡ στο προηγούμενο παράδειγμα, αρχίζει με και τελειώνει με Αυτό είναι παρόμοιο με τις ετικέτες HTML, επειδή όλες ξεκινάνε με ένα σύμβολο μικρότερο < και τελειώνουν με ένα σύμβολο μεγαλύτερο >. Αυτά τα σύμβολα ονομάζονται ΡΗΡ ετικέτες και λένε στον Web διακομιστή πού ξεκινά ο ΡΗΡ κώδικας και που τελειώνει. Το κενό μεταξύ των ετικετών θα μεταφραστεί σαν ΡΗΡ. Το κείμενο έξω από αυτές τις ετικέτες θα αντιμετωπιστεί σαν κανονική HTML. Οι ετικέτες ΡΗΡ μας επιτρέπουν διαφεύγουμε από την HTML. ΡΗΡ εντολές Λέμε στον μεταφραστεί ΡΗΡ τι να κάνει βάζοντας τις εντολές ΡΗΡ μεταξύ της αρχικής και τελικής ετικέτας. Σε αυτό το παράδειγμα χρησιμοποιήσαμε μόνο ένα τύπο εντολής: echo <p> Η παραγγελία επεξεργάστηκε. ; Χρησιμοποιώντας την δομή echo έχετε ένα πολύ απλό αποτέλεσμα: τυπώνει την συμβολοσειρά που έχει περάσει σε αυτήν, στον browser. Στην εικόνα 1.2 βλέπουμε το αποτέλεσμα που είναι το κείμενο «Η παραγγελία επεξεργάστηκε.», που εμφανίζεται στο παράθυρο του browser Σελ.25

26 Θα παρατηρήσετε ότι εμφανίζεται ένα ερωτηματικό στο τέλος της εντολής echo. Αυτό χρησιμοποιείται για να ξεχωρίζει εντολές της ΡΗΡ, όπως μια τελεία χρησιμοποιείται για να ξεχωρίζει τις προτάσεις της γλώσσας. Είναι συνηθισμένο συντακτικό λάθος να παραλείψετε το ερωτηματικό. Προσθέτοντας δυναμικά περιεχόμενα Μέχρι στιγμής, δεν έχουμε χρησιμοποιήσει ΡΗΡ για να κάνουμε κάτι που δεν έχουμε κάνει με απλή HTML. Ο λόγος για να χρησιμοποιούμε την γλώσσα script από την πλευρά του διακομιστή,είναι για να μπορούμε να παρέχουμε δυναμικά περιεχόμενα στους χρήστες μια τοποθεσίας. Αυτή είναι μια σημαντική εφαρμογή, επειδή τα περιεχόμενα αυτά αλλάζουν σύμφωνα με τις ανάγκες ενός χρήστη ή θα κάνουν τους χρήστες να επανέρχονται στην τοποθεσία. Η ΡΗΡ μας επιτρέπει να το κάνουμε αυτό εύκολα. Ας αρχίσουμε με κάτι εύκολο. Αντικαθιστούμε την ΡΗΡ στο processorder.php με τον παρακάτω κώδικα : echo <p>η παραγγελία επεξεργάστηκε στης ; echo date( Hi, js F ); echo <br> ; Σε αυτόν τον κώδικα χρησιμοποιούμε την ενσωματωμένη συνάρτηση date() της ΡΗΡ, για να πούμε στον πελάτη την ημερομηνία και την ώρα που έγινε επεξεργασία της παραγγελίας του. Αυτό είναι διαφορετικό κάθε φορά που θα τρέχει το script. Εικόνα 1.3 Σελ.26

27 Προσπέλαση μεταβλητών φορμών Η ουσία να χρησιμοποιήσουμε μια φόρμα παραγγελίας είναι για να συλλέξουμε την παραγγελία του πελάτη. Είναι πολύ εύκολο στη ΡΗΡ να πάρουμε τις πληροφορίες που πληκτρολόγησε ο πελάτης. Μέσα στο PHP script, μπορείτε να έχετε πρόσβαση σε κάθε ένα από τα πεδία της φόρμας σαν μια μεταβλητή με το ίδιο όνομα με το πεδίο της φόρμας. Ας δούμε το παρακάτω παράδειγμα. Προσθέτουμε τις παρακάτω γραμμές στο κάτω μέρος του ΡΗΡ script : echo "<p>η παραγγελία σας περιέχει τα εξής"; echo "<br>"; echo $tireqty." ελαστικά<br>"; echo $oilqty." μπουκάλια λάδι<br>"; echo $sparkqty." μπουζιά<br>"; Συμπληρώνοντας την φόρμα πάλι στον browser, η έξοδος του script μας θα μοιάζει με αυτό που φαίνεται στην Εικόνα 1.4.Οι πραγματικές τιμές που θα φαίνονται φυσικά, θα εξαρτώνται από αυτό που πληκτρολογήσατε στη φόρμα. Εικόνα 1.4 Μεταβλητές φορμών Τα δεδομένα του script καταλήγουν σε ΡΗΡ μεταβλητές. Μπορείτε να αναγνωρίσετε τα ονόματα των μεταβλητών στην ΡΗΡ επειδή ξεκινούν με το $. Συνένωση συμβολοσειρών Στο script, χρησιμοποιούμε το echo για να δώσουμε την τιμή που πληκτρολόγησε ο χρήστης σε κάθε ένα από τα πεδία της φόρμας, ακολουθούμενη από κάποιο επεξηγηματικό κείμενο. Προσέχοντας καλύτερα την εντολή echo, θα δούμε ότι το όνομα της μεταβλητής και το επόμενο κείμενο έχουν μια τελεία μεταξύ τους ως εξής : echo $tireqty. ελαστικά<br> ; Σελ.27

28 Αυτός είναι ο τελεστής συνένωσης συμβολοσειρών, που χρησιμοποιείται για να προσθέτει συμβολοσειρές (κομμάτια κειμένου) μεταξύ τους. Μεταβλητές και σταθερές Η μεταβλητή και η συμβολοσειρά που συνενώνουμε σε κάθε μια από τις εντολές echo, είναι διαφορετικοί τύποι πραγμάτων. Οι μεταβλητές είναι σύμβολο για δεδομένα. Η συμβολοσειρά είναι η ίδια δεδομένα. Όταν χρησιμοποιούμε απλά δεδομένα σε ένα πρόγραμμα όπως αυτό, το ονομάζουμε σταθερά για να το ξεχωρίζουμε από μια μεταβλητή. Η $tireqty είναι μια μεταβλητή, ένα σύμβολο που αντιπροσωπεύει τα δεδομένα που πληκτρολόγησε ο χρήστης. Από την άλλη το ελαστικά είναι μια σταθερά. Μπορούμε να το πάρουμε όπως είναι. Αναγνωριστικά Τα αναγνωριστικά είναι τα ονόματα των μεταβλητών. Υπάρχουν μερικοί απλοί κανόνες για τα αναγνωριστικά : Τα αναγνωριστικά μπορεί να είναι οποιουδήποτε μήκους και μπορούν να αποτελούνται από γράμματα, αριθμούς, χαρακτήρες υπογράμμισης. Τα αναγνωριστικά δεν μπορούν να ξεκινούν με ψηφίου. Στην ΡΗΡ, τα αναγνωριστικά είναι ευαίσθητα σε κεφαλαία /πεζά.το $tireqty δεν είναι ίδιο με το $Tireqty. Τα αναγνωριστικά για τις μεταβλητές μπορούν να έχουν το ίδιο όνομα με μια ενσωματωμένη συνάρτηση. Εκχώρηση τιμών σε μεταβλητές Δίνεται τιμές σε μεταβλητές χρησιμοποιώντας τον τελεστή εκχώρησης, το ίσων (=). Στην τοποθεσία του Νίκου, θέλουμε να δουλέψουμε με το συνολικό αριθμό των ανταλλακτικών που παραγγέλθηκαν και το συνολικό ποσό. Προσθέτουμε τις παρακάτω γραμμές στο κάτω μέρος του script. $totalqty=0; $totalamount =0.00; Κάθε μια από αυτές τις γραμμές δημιουργεί μια μεταβλητή και της δίνει μια σταθερή τιμή. Τύποι μεταβλητών Η ΡΗΡ υποστηρίζει τους παρακάτω τύπους δεδομένων: Integer (ακέραιος) Double(διπλής ακρίβειας) String(συμβολοσειράς) Array(πίνακα) Object(αντικείμενα) Σελ.28

29 Τελεστές Οι τελεστές είναι σύμβολα που μπορούμε να χρησιμοποιήσουμε για να χειριστούμε τιμές και μεταβλητές εκτελώντας μια λειτουργία πάνω τους. Αριθμητικοί τελεστές Τελεστής Όνομα Παράδειγμα + Πρόσθεσης $a+$b - Αφαίρεσης $a-$b * Πολλαπλασιασμού $a*$b / Διαίρεσης $a/$b % Υπολοίπου $a%$b Τελεστές συμβολοσειρών $a = Νίκος ; $b = Ανταλλακτικά ; $results = $a.$b; Η μεταβλητή $results περιέχει τώρα την συμβολοσειρά Νίκος Ανταλλακτικά. Τελεστές σύγκρισης Οι τελεστές σύγκρισης χρησιμοποιούνται για να συγκρίνουμε δύο τιμές. Οι παραστάσεις που χρησιμοποιούν αυτούς τους τελεστές επιστρέφουν λογικές τιμές True False, ανάλογα με το αποτέλεσμα σύγκρισης. Τελεστής Όνομα Παράδειγμα == Ισότητα $a == $b === Ταυτότητα $a === $b!= Άνισο $a!= $b <> Άνισο $a <> $b < Μικρότερο $a < $b > Μεγαλύτερο $a >$b <= Μικρότερο ή ίσον $a <= $b >= Μεγαλύτερο ή ίσον $a >= $b Λογικοί τελεστές Οι λογικό τελεστές χρησιμοποιούνται για να συνδιάζουν τα αποτελέσμτα των λογικών συνθηκών. Για παράδειγμα μπορεί να ενδιαφερόμαστε σε μια περίπτωση αν η τιμή μιας μεταβλητής, της $a είναι μεταξύ 0 και 100. Θα πρέπει να ελέγξουμε τις συνθήκες $a >=0 και $a<=0, χρησιμοποιώντας τον τελεστή AND ως εξής: $a >0 && $a <=100. Τελεστής Όνομα Χρήση Αποτέλεσμα! NOT!$b Επιστρέφει true αν το $b είναι false και το αντίστοφο && AND $a && $b Επιστρέφει true αν τα $a και $b είναι και τα δύο true, διαφορετικά επιστρέφει false OR $a $b Επιστρέφει true αν το $a ή το $b είναι true/ And AND $a and $b To ίδιο με το && Or OR $a or $b Το ίδιο με το Σελ.29

30 Ο τελεστής μη εμφάνισης λαθών Ο μπορεί να χρησιμοποιηθεί εμπρός από οποιαδήποτε πρόταση. $a Χωρίς τον αυτή η γραμμή θα δημιουργήσει μια προειδοποίηση για διαίρεση με το 0. Με το τελεστή,το λάθος δεν εμφανίζεται. Αν δεν εμφανίζουμε τα λάθη θα πρέπει να συντάξουμε κατάλληλο κώδικα για να χειρίζεται τα τυχόν σφάλματα στην εφαρμογή μας. Χρήση τελεστών: Βρίσκοντας τα σύνολα μια φόρμας Τώρα που γνωρίζουμε τους τελεστές της ΡΗΡ, θα δουλέψουμε με τα σύνολα και τον φόρο στην φόρμα παραγγελίας του «Νίκου». Προσθέτουμε τον παρακάτω κώδικα στο κάτω μέρος του ΡΗΡ script : $TYREPRICE=100; $OILPRICE=10; $SPARKPRICE= 4; $totalqty = $tyreqty + $oilqty + $sparkqty; $totalamount = $tyreqty * $TYREPRICE + $oilqty * $OILPRICE + $sparkqty * $SPARKPRICE; echo "<br>\n"; echo "Συνολικά ανταλλακτικά: ".$totalqty."<br>\n"; echo "Σύνολο: $"; echo number_format($totalamount, 2); echo "<br>\n"; $taxrate = 0.10; // local sales tax is 10% $totalamount = $totalamount * (1 + $taxrate); $totalamount = number_format($totalamount, 2); echo "Σύνολα + Φόρος : $".$totalamount."<br>\n"; Ανανεώνοντας το browser θα δούμε κάτι ανάλογο με την Εικόνα 1.5 Εικόνα 1.5 Σελ.30

31 Όπως βλέπουμε έχουμε χρησιμοποιήσει διαφορετικούς τελεστές σε αυτό το τμήμα του κώδικα. Έχουμε χρησιμοιποιήσει την πρόσθεση και τον πολλαπλασιασμό για να βρούμε τα ποσά και τον τελεστή συνένωσης συμβολοσειρών, για να διαμορφώσουμε την έξοδο του browser. Έχουμε επίσης χρησιμοποιήσει την συνάρτηση number_format() για να μορφοποιήσουμε τα σύνολα ως συμβολοσειρές με δύο δεκαδικά ψηφία. Αυτή η συνάρτηση είναι από την βιβλιοθήκη Math της ΡΗΡ. Αποφάσεις με συνθήκες υπό Όρους Αν θέλουμε να αποκριθούμε λογικά στην είσοδο του χρήστη, ο κώδικας μας θα πρέπει να παίρνει λογικές αποφάσεις. Οι δομές που λένε στο πρόγραμμα μας να πάρει αποφάσεις ονομάζονται εντολές υπό όρους. Εντολές if Μπορούμε να χρησιμοποιήσουμε μια εντολή if για να πάρουμε μια απόφαση. Θα πρέπει να δώσουμε στην εντολή if μια συνθήκη για να την χρησιμοποιήσουμε. Αν η εντολή είναι true, θα εκτελεστεί το επόμενο τμήμα του κώδικα. Οι συνθήκες με εντολές if πρέπει να περιβάλλονται με παρενθέσεις. Για παράδειγμα, αν δεν παραγγείλαμε ελαστικά, λάδια και μπουζί από τον Νίκο, πιθανόν να έγινε επειδή κατά λάθος πατήσαμε το κουμπί Submit. Αντί να μας πει ότι έγινε η επεξεργασίας της παραγγελίας μας, η σελίδας θα έπρεπε να μας δώσει ένα πιο χρήσιμο μήνυμα. Όταν ο επισκέπτης δεν παραγγέλνει ανταλλακτικά, θα θέλαμε να του πούμε ότι «Δεν παραγγείλατε τίποτα από την προηγούμενη σελίδα» Μπορούμε να το κάνουμε αυτό εύκολα με την παρακάτω εντολή if: if( $totalqty == 0 ) echo Δεν παραγγείλατε τίποτα από την προηγούμενη σελίδα!<br>"; Τμήματα κώδικα Συνήθως έχουμε περισσότερες από μια εντολές που θέλουμε να εκτελέσουμε μέσα σε μια εντολή if. Δεν υπάρχει ανάγκη να τοποθετήσουμε μια νέα εντολή if πριν από κάθε μια. Αντίθετα μπορούμε να ομαδοποιήσουμε πολλές εντολές if σαν ένα μπλοκ. Για να δηλώσουμε ένα τμήμα κώδικα το συμπεριλαμβάνουμε μέσα σε άγκιστρα : If ( $totalqry == 0 ) echo <font color=red> ; echo Δεν παραγγείλατε τίποτα από την προηγούμενη σελίδα!<br> ; echo </font> ; Οι τρεις γραμμές κώδικα που περιβάλλονται στα άγκιστρα είναι τώρα ένα τμήμα κώδικα. Όταν η συνθήκη είναι true, εκτελούνται και οι τρεις γραμμές. Όταν είναι false αγνοούνται. Σελ.31

32 Εντολές else Συνήθως θέλουμε να αποφασίζουμε, όχι μόνο αν θέλουμε να εκτελείται μια ενέργεια αλλά επίσης ποιο σύνολο ενεργειών θέλουμε να εκτελεστεί. Μια εντολή else μας επιτρέπει να ορίζουμε μια εναλλακτική ενέργεια, όντα η συνθήκη της εντολή if είναι false.θέλουμε να προειδοποιούμε τους πελάτες του Νίκου όταν δεν παραγγέλνουν τίποτα. Από την άλλη εάν κάνουν μια παραγγελία, αντί για μια προειδοποίηση, θέλουμε να τους δείξουμε τι παρήγγειλαν. if( $totalqty == 0 ) echo "Δεν παραγγείλατε τίποτα από την προηγούμενη σελίδα!<br>"; else echo $tireqty." ελαστικά<br>"; echo $oilqty." μπουκάλια λάδι<br>"; echo $sparkqty." μπουζιά<br>"; Θα μπορούσαμε να δημιουργήσουμε πιο περίπλοκες λογικές διαδικασίες βάζοντας έθετες τις εντολές if, την μια μέσα στην άλλη. Στον παρακάτω κώδικα, όχο μόνο θα εμφανιστεί το άθροισμα όταν η συνθήκη $totalqty είναι αληθής, αλλά επίσης και κάθε γραμμή του αθροίσματος θα εμφανίζεται μόνο αν η δική της συνθήκη είναι αληθής. if( $totalqty == 0 ) echo "Δεν παραγγείλατε τίποτα από την προηγούμενη σελίδα!<br>"; else if ( $tyreqty>0 ) echo $tireqty." ελαστικά<br>"; if ( $oilqty>0 ) echo $oilqty." μπουκάλια λάδι<br>"; if ( $sparkqty>0 ) echo $sparkqty." μπουζιά<br>"; Εντολές elseif Για πολλές από τις αποφάσεις που παίρνουμε, υπάρχουν περισσότερες από δύο επιλογές. Μπορούμε να δημιουργήσουμε μια σειρά από πολλές επιλογές χρησιμοποιώντας την εντολή elseif. Η εντολή αυτή είναι συνδυασμός της else και της if. Παρέχοντας μια σειρά από συνθήκες, το πρόγραμμα μπορεί να ελέγχει κάθε μια, μέχρι να βρει αυτή που είναι αληθείς. Ο Νίκος δίνει μεγαλύτερη έκπτωση για μεγάλες παραγγελίες ελαστικών. Οι εκπτώσεις που δίνει είναι οι εξής Λιγότερα από 10 ελαστικά χωρίς έκπτωση ελαστικά 5% έκπτωση ελαστικά -10% έκπτωση 100 ή περισσότερα ελαστικά 15% έκπτωση Σελ.32

33 Μπορούμε να δημιουργήσουμε κώδικα για να υπολογίζει την έκπτωση χρησιμοποιώντας συνθήκες και εντολές if και elseif. Πρέπει να χρησιμοποιήσουμε τον τελεστή AND (&&) για να συνδυάσουμε δύο συνθήκες σε μία. If ($tireqty <10) $discount = 0; elseif ($tireqty >=10 && $tireqty <=49 ) $discount = 5; elseif ($tireqty >=50 && $tireqty <=99 ) $discount = 10; elseif ($tireqty >=100 ) $discount = 15; Επανάληψη : Επαναλαμβάνοντας ενέργειες Σε ένα πράγμα που οι υπολογιστές είναι πολύ καλοί είναι η αυτοματοποίηση επαναλαμβανόμενων διαδικασιών. Αν υπάρχει κάτι που πρέπει να κάνουμε με τον ίδιο τρόπο, πολλές φορές, μπορούμε να χρησιμοποιήσουμε ένα βρόγχο για να επαναλαμβάνουμε κάποια μέρη του προγράμματος μας. Ο Νίκος θέλει ένα πίνακα που να εμφανίζει το κόστος μεταφοράς που θα προστεθεί στην παραγγελία ενός πελάτη. Με την μεταφορική εταιρία που χρησιμοποιεί ο Νίκος, το κόστος μεταφοράς εξαρτάται από την απόσταση που θα μεταφερθεί το πακέτο. Το κόστος μπορεί να βρεθεί με έναν απλό τύπο. Θέλουμε ο πίνακας με τα μεταφορικά να μοιάζει με τον πίνακα της Εικόνας 1.6 Εικόνας 1.6 Η λίστα δείχνει τον HTML που εμφανίζει αυτόν τον πίνακα. Μπορείτε να δείτε ότι είναι μεγάλος και επαναλαμβανόμενος. <html> <head> <title>ανταλλακτικά Αυτοκινήτων " Νίκος "</title> <meta http-equiv="content-type" content="text/html; charset=windows-1253"> </head> <body> <table border = 0 cellpadding = 3> <td bgcolor = "#CCCCCC" align = center>απόσταση</td> <td bgcolor = "#CCCCCC" align = center>κόστος</td> Σελ.33

34 <td align = right>50</td> <td align = right>5</td> <td align = right>100</td> <td align = right>10</td> <td align = right>150</td> <td align = right>15</td> <td align = right>200</td> <td align = right>20</td> <td align = right>250</td> <td align = right>25</td> </table> </body> Θα βοηθούσε πολύ αν, αντί να ζητήσουμε από ένα άτομο που βαριέται εύκολα και πρέπει να πληρωθεί για το χρόνο του να πληκτρολογήσει τον HTML κώδικα, να το κάνει ένας φθηνός και ακούραστος υπολογιστής. Οι εντολές βρόγχων λένε στην ΡΗΡ να εκτελεί μια εντολή ή σύνολο εντολών, συνεχώς. Βρόγχοι While Το απλούστερο είδος βρόγχων στην ΡΗΡ είναι ο βρόγχος while.όπως και μια εντολή if έτσι και αυτός βασίζεται σε μια συνθήκη. Η διαφορά μεταξύ ενός βρόγχου while και μιας εντολής if είναι ότι η εντολή if εκτελεί το επόμενο τμήμα του κώδικα μία φορά, εφόσον η συνθήκη είναι αληθής. Ο βρόγχος while εκτελεί το τμήμα επαναλαμβανόμενα, εφόσον η συνθήκη είναι αληθής. Γενικά χρησιμοποιούμε ένα βρόγχο while όταν δεν ξέρουμε πόσες επαναλήψεις θα απαιτηθούν για να γίνει η συνθήκη αληθής. Αν απαιτείτε σταθερός αριθμός επαναλήψεων, μπορούμε να χρησιμοποιήσουμε ένα βρόγχο for. Η βασική δομή ενός βρόγχου while είναι : while (condition) expression; Ο παρακάτω κώδικας θα εμφανίσει τους αριθμούς 1 έως το 5 $num while ($num <= 5) echo $num. <br> ; $num++; Η εντολή $num++; ισοδυναμεί με $num = $num +1 ; δηλαδή προσθέτει στον εαυτό του κάθε φορά το 1. Στην αρχή της κάθε επανάληψης, ελέγχει την συνθήκη. Αν είναι ψευδείς, το τμήμα του δεν θα εκτελεστεί και ο βρόγχος θα τερματιστεί. Θα εκτελεστεί η αμέσως επόμενη εντολή μετά το βρόχο. Σελ.34

35 Μπορούμε να χρησιμοποιήσουμε ένα βρόγχο while για να εμφανίσουμε τον επαναλαμβανόμενο πίνακα μεταφορών της Εικόνας 1.6 <html> <head> <title>ανταλλακτικά Αυτοκινήτων " Νίκος "</title> <meta http-equiv="content-type" content="text/html; charset=windows-1253"> </head> <body> <table border = 0 cellpadding = 3> <td bgcolor = "#CCCCCC" align = center>απόσταση</td> <td bgcolor = "#CCCCCC" align = center>κόστος</td> $distance = 50; while ($distance <= 250 ) echo "\n <td align = right>$distance</td>\n"; echo " <td align = right>". $distance / 10."</td>\n\n"; $distance += 50; </table> </body> </html> Βρόγχοι for Ο τρόπος που χρησιμοποιήσαμε τον βρόγχο while προηγουμένως είναι πολύ συνηθισμένος. Ορίζουμε ένα μετρητή όταν ξεκινάμε.πριν από κάθε επανάληψη, ελέγχουμε τον μετρητή με μια συνθήκη. Στο τέλος της επανάληψης, τροποποιούμε τον μετρητή. Μπορούμε να γράψουμε αυτό το στυλ βρόγχου με μια πιο συμπαγή μορφή,χρησιμοποιώντας ένα βρόγχο for. Η βασική δομή ενός βρόγχου for είναι : for ( expression1; condition ; expresion2) Το expression1 εκτελείται μια φορά στην αρχή. Εδώ συνήθως ορίζουμε την αρχική τιμή ενός μετρητή. Το condition ελέγχεται πριν από κάθε επανάληψη. Εάν επιστρέψει false, η επόμενη επανάληψη θα σταματήσει. Εδώ συνήθως ελέγχουμε τον μετρητή ως προς ένα όριο. Το expression2 εκτελείται στο τέλος κάθε επανάληψης. Εδώ συνήθως ρυθμίζεται την τιμή του μετρητή Μπορούμε να ξαναγράψουμε τον βρόγχο while ως βρόχο for. for ($distance =50 ; $distance <=250 ; $distance += 50) echo "\n <td align = right>$distance</td>\n"; echo " <td align = right>". $distance / 10."</td>\n\n"; Και οι δύο εκδόσεις του while και του for είναι ισοδύναμες. Στη δεύτερη περίπτωση είναι λίγο πιο συμπαγής και εξοικονομούμε δύο γραμμές. Σελ.35

36 Σπάζοντας μια δομή ελέγχου ή Script Εάν θέλουμε να σταματήσουμε την εκτέλεση ενός τμήματος του κώδικα, υπάρχουν τρεις προσεγγίσεις, ανάλογα με το αποτέλεσμα που θέλουμε να επιτύχουμε. Αν θέλουμε να σταματήσουμε την εκτέλεση ενός βρόγχου, μπορούμε να χρησιμοποιήσουμε την εντολή break. Αν θέλουμε να μεταπηδήσουμε στην επόμενη επανάληψη του βρόγχου, μπορούμε αντίθετα να χρησιμοποιήσουμε την εντολή continue. Αν θέλουμε να σταματήσουμε εξολοκλήρου το ΡΗΡ script, μπορούμε να χρησιμοποιήσουμε την εντολή exit. Για παράδειγμα : If ( $totalqty == 0 ) echo Δεν συμπληρώσατε την παραγγελία σας στην προηγούμενη σελίδα ; exit; Η κλήση για έξοδο εμποδίζει την ΡΗΡ να εκτελέσει το υπόλοιπο script. Πίνακες Ένας πίνακας (array) είναι μια μεταβλητή που περιέχει ένα σύνολο ή σειρά από τιμές. Ένας πίνακας μπορεί να έχει πολλά στοιχεία.κάθε στοιχείο μπορεί να περιέχει μια τιμή, όπως κείμενο ή αριθμούς ή ένα άλλο πίνακα. Ένας πίνακας που περιέχει πίνακες, ονομάζεται πολυδιάστατος πίνακας. Η ΡΗΡ υποστηρίζει πίνακες με αριθμητικούς δείκτες και συσχετιζόμενους πίνακες. Η λίστα προϊόντων του Νίκου είναι ένας πίνακας του παραδείγματος μας. Στην εικόνα 2.1 μπορείτε να δείτε μια λίστα από τα τρία προϊόντα,αποθηκευμένα σε μορφή πίνακα και με μια μεταβλητή $products, που περιέχει τις τρεις τιμές. Ελαστικά Λάδια Μπουζί Εικόνα 2.1 Αφού έχουμε τις πληροφορίες σε ένα πίνακα, μπορούμε να κάνουμε διάφορα χρήσιμα πράγματα μαζί του. Χρησιμοποιώντας τους βρόγχους, μπορούμε να εξοικονομήσουμε κόπο εκτελώντας τις ίδιες ενέργειες σε κάθε τιμή του πίνακα. Με αυτόν τον τρόπο, με μια γραμμή κώδικα μπορούν να περάσουν όλες οι τιμές σε μια συνάρτηση. Οι τιμές που αποθηκεύονται σε έναν πίνακα ονομάζονται στοιχεία του πίνακα. Κάθε στοιχείο του πίνακα έχει ένα σχετικό δείκτη, που χρησιμοποιείται για πρόσβαση στα στοιχεία. Οι πίνακες στις περισσότερες γλώσσες προγραμματισμού,έχουν αριθμητικούς δείκτες. Η ΡΗΡ υποστηρίζει αυτούς τους τύπους πινάκων. Πίνακες με αριθμητικούς δείκτες Για να δημιουργήσουμε τον πίνακα της Εικόνας 2.1 χρησιμοποιούμε την παρακάτω γραμμή κώδικα ΡΗΡ: $products = array ( Ελαστικά, Λάδια, Μπουζι ); Σελ.36

37 Αυτό θα δημιουργήσει έναν πίνακα που ονομάζετε products και περιέχει τις τρεις αρχικές τιμές. «Ελαστικά, Λάδια, Μπουζι». Πρόσβαση στα περιεχόμενα του πίνακα Για να έχουμε πρόσβαση στα περιεχόμενα του πίνακα μια μεταβλητής, χρησιμοποιούμε το όνομά της. Πληκτρολογώντας : $products[1] = Μπαταρίες ; Εισάγουμε στο κλειδί 1 πίνακα μας την τιμή «Μπαταρίες» Αντιθέτως πληκτρολογώντας : echo $products[1] ; Θα τυπωθεί στην οθόνη η τιμή που περιέχεται μέσα στον πίνακα products που στην περίπτωση μας είναι «Λάδια» Χρησιμοποιώντας βρόγχους για πρόσβαση σε πίνακες Επειδή ο πίνακας έχει δείκτη μια σειρά από αριθμούς, μπορούμε να χρησιμοποιήσουμε ένα βρόγχο for για πιο εύκολη εμφάνιση των περιεχομένων του : for ( $i=0 ; $i <3 ; $i++ ) echo $products[$i] ; Αυτός ο βρόγχος θα εμφανίσει τα στοιχεία του πίνακά μας, απαιτώντας λιγότερη πληκτρολόγηση. Συσχετιζόμενοι πίνακες Στον πίνακα προϊόντων αφήσαμε την ΡΗΡ να δώσει σε κάθε στοιχείο τον προκαθορισμένο δείκτη. Αυτό σημαίνει ότι το πρώτο στοιχείο που προσθέσαμε είναι το στοιχείο 0, το δεύτερο είναι το 1 κλπ. Η ΡΗΡ υποστηρίζει επίσης συσχετιζόμενους πίνακες. Σε ένα συσχετιζόμενο πίνακα, μπορούμε να συσχετίσουμε με κάθε τιμή ένα οποιοδήποτε κλειδί ή ένα δείκτη. Αρχικοποιώντας ένα συσχετιζόμενο πίνακα Οι παρακάτω κώδικας δημιουργεί ένα συσχετιζόμενο πίνακα, με τα ονόματα των προϊόντων ως κλειδιά και τις τιμές των προϊόντων ως τιμές. $prices = array ( Ελαστικά =>100, Λάδια =>10, Μπουζί =>4); Πρόσβαση στα στοιχεία του πίνακα Και πάλι μπορούμε να έχουμε πρόσβαση στα περιεχόμενα του πίνακα χρησιμοποιώντας το όνομα της μεταβλητής και ένα κλειδί, ώστε να μπορούμε να έχουμε πρόσβαση στις πληροφορίες που έχουν αποθηκευτεί στον πίνακα prices ως $prices [ Ελαστικά ], $prices [ Λάδια ], $prices [ Μπουζί ]. Σελ.37

38 Όπως και οι πίνακες με αριθμητικούς δείκτες, έτσι και οι συσχετιζόμενοι πίνακες μπορούν να δημιουργηθούν και να αρχικοποιηθούν, προσθέτοντας κάθε φορά ένα στοιχείο. Ο παρακάτω κώδικας θα δημιουργήσει τον ίδιο πίνακα $prices. Αντί να δημιουργήσει ένα πίνακα με τρία στοιχεία, αυτός ο κώδικας, δημιουργεί ένα πίνακα μόνο με ένα στοιχείο και μετά προσθέτει δύο επιπλέον. $prices = arra( Ελαστικα =>100); $prices[ Λάδια ]=10; $prices[ Μπουζί ]=4; Εδώ είναι ένας άλλος, λίγο διαφορετικός, αλλά ισοδύναμος κώδικας. Σε αυτή την έκδοση δεν δημιουργούμε άμεσα ένα πίνακα. Ο πίνακας δημιουργείται όταν προσθέτουμε το πρώτο στοιχείο σε αυτόν. $prices[ Ελαστικα ]=100; $prices[ Λάδια ]=10; $prices[ Μπουζί ]=4; Μορφοποίηση συμβολοσειρών Αποκόπτοντας συμβολοσειρές :chop(), ltrim(), trim() Το πρώτο βήμα για την μορφοποίηση είναι η αποκοπή των επιπλέον από μία συμβολοσειρά. Αν και αυτό δεν απαιτείτε ποτέ, μπορεί να είναι χρήσιμο αν πρόκειται να αποθηκεύσουμε τη συμβολοσειρά σε ένα αρχείο ή βάση δεδομένων ή αν πρόκειται να την συγκρίνουμε με άλλες συμβολοσειρές. $name = trim($name); $ = trim($ ); $feedback = trim($feedback); Η συνάρτηση trim() κόβει τον κενό χώρο από την αρχή και το τέλος της συμβολοσειράς και επιστρέφει την τελική συμβολοσειρά. Οι χαρακτήρες που αποκόπτει είναι οι αλλαγές γραμμών και οι χαρακτήρες επιστροφής, οι οριζόντιοι και οι κατακόρυφοι στηλοθέτες, οι χαρακτήρες τέλους συμβολοσειράς και τα κενά. Ανάλογα με το συγκεκριμένο σκοπό μας, μπορούμε να χρησιμοποιήσουμε τις συναρτήσεις ltrim() ή chop(). Είναι και οι δύο παρόμοιες με την trim(), παίρνοντας τη συμβολοσειρά που μας ενδιαφέρει ως παράμετρο και επιστρέφοντας την μορφοποιημένη συμβολοσειρά. Η διαφορά μεταξύ των τριών είναι ότι η trim() αφαιρεί τον κενό χώρο από την αρχή και το τέλος μιας συμβολοσειράς, η ltrim() μόνο από την αρχή και η chop() αφαιρεί τον κενό χώρο από το τέλος της. Χρησιμοποιώντας HTML μορφοποίηση : Η συνάρτηση nl2br() Η συνάρτηση nl2br() παίρνει μια συμβολοσειρά ως παράμετρο και αντικαθιστά όλες τις αλλαγές γραμμών με την ετικέτα της HTML <br>. Αυτό είναι χρήσιμο για να εμφανιστεί μια μεγάλη συμβολοσειρά στον browser. Σελ.38

39 Αλλάζοντας τα πεζά-κεφαλαία μιας συμβολοσειράς Μπορούμε επίσης να αλλάξουμε τα πεζό-κεφαλαία μιας συμβολοσειράς Πίνακας συναρτήσεων πεζά - κεφαλαία Συνάρτηση Περιγραφή Χρήση Τιμή $sub Καλημέρα παιδία Strtoupper() Μετατρέπει την συμβολοσειρά σε κεφαλαία Strtoupper($sub) ΚΑΛΗΜΕΡΑ ΠΑΙΔΙΑ Strtolower() Μετατρέπει την συμβολοσειρά σε πεζά strtolower($sub) Καλημέρα παιδιά Ucfirst() Κάνει κεφαλαίο τον πρώτο χαρακτήρα της συμβολοσειράς αν είναι αλφαριθμητικός χαρακτήρας ucfirst($sub) Καλημέρα παιδιά ucwords() Κάνει κεφαλαίο τον πρώτο χαρακτήρα κάθε λέξης της συμοβολοσειράς που αρχίζει με ένα αλφαριθμητικό χαρακτήρα ucwords($sub) Καλημέρα Παιδία Μορφοποιώντας συμβολοσειρές για αποθήκευση : AddSlashes() και StripSlashes() Όπως χρησιμοποιούμε συναρτήσεις συμβολοσειρών για να μορφοποιήσουμε μια συμβολοσειρά οπτικά. Μπορούμε να χρησιμοποιήσουμε κάποιες από αυτές τις συναρτήσεις για να μορφοποιήσουμε μια συμβολοσειρά για αποθήκευση σε μια βάση δεδομένων. Κάποιοι χαρακτήρες είναι έγκυροι όταν είναι μέρος μιας συμβολοσειράς αλλά μπορούν να δημιουργήσουν προβλήματα, ιδιαίτερα όταν εισάγουμε δεδομένα σε μια βάση δεδομένων, επειδή η βάση δεδομένων θα μπορούσε να μεταφράσει αυτούς τους χαρακτήρες σαν χαρακτήρες ελέγχου. Οι προβληματικοί χαρακτήρες είναι τα εισαγωγικά (μονά και διπλά), οι ανάποδες κάθετοι και ο χαρακτήρας NULL. Θέλουμε να βρούμε ένα τρόπο να σημειώσουμε από ή να διαφύγουμε αυτούς τους χαρακτήρες, ώστε οι βάσεις δεδομένων, όπως η MySQL να καταλάβουν τι εννοούμε όταν χρησιμοποιούμε ένα σταθερό ειδικό χαρακτήρα, αντί για μια σειρά ελέγχου. Γι να διαφύγουμε από αυτούς τους χαρακτήρες προσθέτουμε μια ανάποδη κάθετο ( \ ) εμπρός από αυτούς. Για παράδειγμα τα διπλά εισαγωγικά γίνονται \ και η ανάποδος κάθετος γίνεται \\. Η ΡΗΡ παρέχει δύο συναρτήσεις ειδικά σχεδιασμένες για χαρακτήρες διαφυγής. Πριν γράψουμε μια συμβολοσειρά σε μια βάση δεδομένων, θα πρέπει να τις μορφοποιήσουμε με τις εντολές Addslashes() για παράδειγμα : $feedback = Addslashes($feedback); Σελ.39

40 Όταν χρησιμοποιήσουμε την AddSlashes(), η συμβολοσειρά αποθηκεύεται με τις ανάποδους καθέτους. Όταν ανακαλέσουμε τη συμβολοσειρά, θα πρέπει να θυμηθούμε να αφαιρέσουμε τις καθέτους. Αυτό επιτυγχάνεται με την χρησιμοποίηση της εντολής StripSlashes(). Για παράδειγμα : $feedback = StripSlashes($feedback); Η εικόνα 2.2 δείχνει τα αποτελέσματα όταν χρησιμοποιούνται αυτές οι συναρτήσεις σε συμβολοσειρές. Εικόνα 2.2 <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1253"> </head> <body> $feed = '"Καλημερα παιδία" είπε ο δάσκαλος μώλις μπήκε μέσα στην αίθουσα'; echo "Η πρόταση πριν την Addslashes()<br>"; echo $feed; echo "<br>η πρόταση μετά την Addslashes()<br>"; $feed = Addslashes($feed); echo $feed; echo "<br>η πρόταση μετά την Stipslashes()<br>"; $feed = Stripslashes($feed); echo $feed; </body> </html> Χρησιμοποιώντας την Substr() Με την συνάρτηση substr() να έχετε πρόσβαση σε μια δευτερεύουσα συμβολοσειρά, μεταξύ συγκεκριμένων αρχικών και τελικών σημείων μιας συμβολοσειράς. Η συνάρτηση substr() έχει το παρακάτω πρότυπο : string substr(string, int start, int [length] ); Αυτή η συνάρτηση επιστρέφει μια δευτερεύουσα συμβολοσειρά, που έχει αντιγράψει μέσα από το string. Θα δούμε παραδείγματα χρησιμοποιώντας την συμβολοσειρά test : $test = Your customer service is excellent ; παραδείγματα Σελ.40

41 substr($test,1); our customer service is excellent substr($test,-9); excellent substr($test,0,4); Your substr($test,4,-13); customer service Ελέγχοντας το μήκος συμβολοσειράς με την strlen() Μπορούμε να ελέγξουμε το μέγεθος μιας συμβολοσειράς με τη συνάρτηση strlen(). Αν περάσουμε μια συμβολοσειρά, αυτή η συνάρτηση θα επιστρέψει το μήκος της. Για παράδειγμα, strlen( hello ) επιστρέφει 5. Επαναχρησιμοποίηση Κώδικα και σύνταξη συναρτήσεων Ένας από τους στόχους των προγραμματιστών είναι να επαναχρησιμοποιούν κώδικα αντί να συντάσσουν νέο κώδικα. Η επαναχρησιμοποίηση υπάρχοντος κώδικα, περιορίζει το κόστος, αυξάνει την αξιοπιστία και βελτιώνει τη συνέπεια. Χρησιμοποιώντας τις require() και include() Η ΡΗΡ παρέχει δύο πολύ απλές εντολές, για να μπορούμε να ξαναχρησιμοποιούμε οποιοδήποτε είδος κώδικα. Χρησιμοποιώντας μια εντολή require() ή include(), μπορούμε να φορτώσουμε ένα αρχείο στο ΡΗΡ script μας. Το αρχείο μπορεί να περιέχει οτιδήποτε που θα πληκτρολογούσαμε σε ένα script, συμπεριλαμβανομένων ΡΗΡ εντολών, κειμένου, HTML ετικετών, ΡΗΡ συναρτήσεων. Χρησιμοποιώντας την require() Ο παρακάτω κώδικας αποθηκεύεται σε ένα αρχείο που ονομάζεται reusable.php: echo Αυτό είναι ένα απλό δείγμα ΡΗΡ.<br> ; Ο παρακάτω κώδικας αποθηκεύεται σε ένα αρχείο που ονομάζετε main.php echo Αυτό είναι το κεντρικό αρχείο.<br> ; require ( reusable.php ); echo Το script τελειώνει εδώ.<br> ; Αν φορτώσουμε το reusable.php, θα εμφανιστεί το μήνυμα «είναι ένα απλό δείγμα ΡΗΡ» στον browser. Αν φορτώσουμε το αρχείο main.php τότε θα εμφανιστεί κάτι λίγο πιο ενδιαφέρον., Σελ.41

42 Απαιτείται ένα αρχείο για να χρησιμοποιήσουμε μια εντολή require(). Στο προηγούμενο παράδειγμα, χρησιμοποιήσαμε το αρχείο reusable.php. Όταν τρέχουμε το script, η εντολή require ( reusable.php ); αντικαθιστάται από τα περιεχόμενα του αιτούμενου αρχείου και το script εκτελείται. Αυτό σημαίνει ότι όταν φορτώνουμε το main.php είναι σαν να τρέχει το παρακάτω script : echo Αυτό είναι το κεντρικό αρχείο.<br> ; echo Αυτό είναι ένα απλό δείγμα ΡΗΡ.<br> ; echo Το script τελειώνει εδώ.<br> ; Επεκτάσεις ονομάτων αρχείων και η require() H PHP δεν κοιτάζει την επέκταση των αρχείων στο αιτούμενο αρχείο. Αυτό σημαίνει ότι μπορούμε να ονομάσουμε το αρχείο μας σε οτιδήποτε θέλουμε, εφόσον δεν πρόκειται να το καλέσουμε απευθείας. Χρησιμοποιώντας συναρτήσεις στην ΡΗΡ Στις περισσότερες γλώσσες προγραμματισμού υπάρχουν συναρτήσεις. Χρησιμοποιούνται για να ξεχωρίζουν κώδικα που εκτελεί μια καλά ορισμένη διαδικασία. Αυτό κάνει τον κώδικα ευκολότερο να διαβαστεί και μας επιτρέπει να ξαναχρησιμοποιούμε τον κώδικα κάθε φορά που θέλουμε να κάνουμε την ίδια διαδικασία. Μια συνάρτηση είναι ανεξάρτητη λειτουργική μονάδα κώδικα που περιγράφει το περιβάλλον που κάνει την κλήση, εκτελεί κάποια διαδικασία και προαιρετικά επιστρέφει ένα αποτέλεσμα. Καλώντας συναρτήσεις Η παρακάτω γραμμή είναι η πιο απλή κλήση σε μια συνάρτηση: function_name(); Σελ.42

43 Αυτό καλεί μια συνάρτηση που ονομάζεται function_name και δεν απαιτεί παραμέτρους. Αυτή η γραμμή αγνοεί οποιαδήποτε τιμή μπορεί να επιστρέψει η συνάρτηση. Οι περισσότερες συναρτήσεις απαιτούν μια ή περισσότερες παραμέτρους, δηλαδή πληροφορίες που δίνονται σε μια συνάρτηση όταν καλείται και που επηρεάζουν το αποτέλεσμα της εκτέλεσης της συνάρτησης. Περνάμε παραμέτρους τοποθετώντας τα δεδομένα ή το όνομα μιας μεταβλητής που περιέχει τα δεδομένα μέσα σε παρενθέσεις, μετά το όνομα της συνάρτησης. Μια κλήση με παράμετρο μοιάζει ως εξής : Function_name( parameter ); Σε αυτή την περίπτωση η παράμετρος που χρησιμοποιήσαμε ήταν μια συμβολοσει ρα που περιείχε μόνο την λέξη «parameter», αλλά οι παρακάτω κλησεις είναι επίσης αποδεκτές ανάλογα με την συνάρτηση. Function_name(2); Function_name(6.231); Function_name( $variable ); Γιατί να ορίζουμε δικές μας συναρτήσεις Οι συναρτήσεις που είναι ενσωματωμένες στην ΡΗΡ μας επιτρέπουν να συνδιαλεγόμαστε με αρχεία, να χρησιμοποιούμε βάσεις δεδομένων, να δημιουργούμε γραφικά και να συνδεόμαστε σε άλλους διακομιστές. Παρόλα αυτά μπορούμε να γράψουμε και εμείς τις δικές μας συναρτήσεις, για να εκτελέσουμε οποιαδήποτε διαδικασία θέλουμε. Βασική δομή συναρτήσεων Μια δήλωση συνάρτησης δημιουργεί ή δηλώνει μια νέα συνάρτηση. Η δήλωση ξεκινάει με την λέξη κλειδί function, δίνει το όνομα της συνάρτησης, τις απαιτούμενες παραμέτρους και περιέχει τον κώδικα που εκτελείται κάθε φορά που καλείται η συνάρτηση. Παράδειγμα : Function my_function() echo Η συνάρτηση μου κλήθηκε ; Για να την καλέσουμε αρκεί να γράψουμε my_function(); Ονομάζοντας την συνάρτηση μας Το πιο σημαντικό θέμα που πρέπει να σκεφτούμε όταν ονομάζουμε τις συναρτήσεις μας είναι ότι το όνομα πρέπει να είναι σύντομο και περιγραφικό. Μερικοί περιορισμοί είναι οι εξής: Η συνάρτηση μας δεν μπορεί να έχει το ίδιο όνομα με μια υπάρχουσα συνάρτηση Το όνομα της συνάρτησης μας μπορεί να περιέχει μόνο γράμματα, ψηφία και χαρακτήρες υπογράμμισης Το όνομα της συνάρτησης μας δεν μπορεί να ξεκινάει με ψηφίο Σελ.43

Κατασκευή διαδικτυακής εφαρμογής αδειών-ρεπό για τη Διεύθυνση Προσωπικού

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

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

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

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

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

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor ΕισαγωγήστουςΗ/Υ PHP Hypertext Preprocessor ΤιείναιηPHP; PHP είναιµία server-based scripting language σχεδιασµένη ειδικά για το web. Σε µία html σελίδα µπορούµε να ενσωµατώσουµε php κώδικα που εκτελείται

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

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου ΕΣΔ 516 Τεχνολογίες Διαδικτύου Εισαγωγή στην PHP Περιεχόμενα Περιεχόμενα PHP και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις Παράδειγματα 1 Βιβλιογραφία Ενότητας Βιβλιογραφία [Lane 2004]: Chapter

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

PHP 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

PHP 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών PHP 1 Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

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

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

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

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

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

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

Εισαγωγή στην Αριθμητική Ανάλυση

Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στη MATLAB ΔΙΔΑΣΚΩΝ: ΓΕΩΡΓΙΟΣ ΑΚΡΙΒΗΣ ΒΟΗΘΟΙ: ΔΗΜΗΤΡΙΑΔΗΣ ΣΩΚΡΑΤΗΣ, ΣΚΟΡΔΑ ΕΛΕΝΗ E-MAIL: SDIMITRIADIS@CS.UOI.GR, ESKORDA@CS.UOI.GR Τι είναι Matlab Είναι ένα περιβάλλον

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

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

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

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

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

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

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

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

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

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

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

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

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

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

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

Γιάννης Σαμωνάκης. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP)

Γιάννης Σαμωνάκης. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP) ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP) Γιάννης Σαμωνάκης 1 Περιεχόμενα Τι είναι η PHP Που μπορεί να χρησιμοποιηθεί

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

Θέματα Προγραμματισμού Διαδικτύου ~ PHP ~

Θέματα Προγραμματισμού Διαδικτύου ~ PHP ~ Θέματα Προγραμματισμού Διαδικτύου ~ PHP ~ Στελιος Σφακιανάκης Εαρινό 2019 Αυτή η εργασία χορηγείται με άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 1 Server-side programming

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

Εισαγωγή στην PHP. ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας. Περιεχόμενα. Περιεχόμενα

Εισαγωγή στην PHP. ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας. Περιεχόμενα. Περιεχόμενα ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας Εισαγωγή στην PHP Περιεχόμενα Περιεχόμενα PHP και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις Παράδειγματα 1 Βιβλιογραφία Ενότητας Βιβλιογραφία

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

Εργαστήριο 9. Προγραμματιστικές Εφαρμογές στο Διαδίκτυο. Στόχος. Προετοιμασία περιβάλλοντος εργασίας

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

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

Παράρτημα A: PHP, HTML φόρμες και το πρωτόκολλο HTTP.

Παράρτημα A: PHP, HTML φόρμες και το πρωτόκολλο HTTP. Εργαστήριο #5 Τι πρέπει να έχετε ολοκληρώσει από το προηγούμενο εργαστήριο. Θα πρέπει να ξέρετε να εισάγετε ένα βασικό πρόγραμμα PHP μέσα σε μια ιστοσελίδα, τη χρήση της echo και τον χειρισμό απλών μεταβλητών

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

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών Λειτουργικά Αριστείδης Ηλίας Συστήματα Ι Φ ρ ο ν τ ι σ τ ή ρ ι ο Shell Scripting Εισαγωγή Ένα shell script είναι μια λίστα εντολών που εκτελούνται ακολουθιακά Εκτελούνται ανάλογα με το κέλυφος και για

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

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

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

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

Τεχνολογίες Διαδικτύου. Server Side Scripting I PHP

Τεχνολογίες Διαδικτύου. Server Side Scripting I PHP Τεχνολογίες Διαδικτύου Server Side Scripting I PHP Εισαγωγή PHP PHP:Hypertext Preprocessor Mηχανή που συνοδεύει web servers όπως ο IIS και ο Apache Η PHP είναι γλώσσα προγραμματισμού για web εφαρμογές

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

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

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

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β.1 Τύποι Δεδομένων Όλες οι γλώσσες προγραμματισμού (πρέπει να) υποστηρίζουν πέντε (5) πρωταρχικούς τύπους δεδομένων: char (character) int (integer)

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

XAMPP Apache MySQL PHP javascript xampp

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

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

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Πίνακες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Πίνακες Πολλές φορές θέλουμε να κρατήσουμε στην μνήμη πολλά αντικείμενα

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

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

Περιεχόμενα. Πρόλογος...11 Περιεχόμενα Πρόλογος...11 Κεφάλαιο 1: Εισαγωγή...13 Η ιστορία της JavaScript...13 Τι είναι η JavaScript...15 Διαφορά μεταξύ σεναρίου και προγράμματος...16 Δυνατότητες και περιορισμοί της JavaScript...16

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

Γνωρίστε το Excel 2007

Γνωρίστε το Excel 2007 Εισαγωγή τύπων Γνωρίστε το Excel 2007 Πληκτρολογήστε το σύμβολο της ισότητας (=), χρησιμοποιήστε ένα μαθηματικό τελεστή (+,-,*,/) και πατήστε το πλήκτρο ENTER. Πρόσθεση, διαίρεση, πολλαπλασιασμός και αφαίρεση

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

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

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

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια: Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται

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

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

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

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

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

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

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να αναπτύξουν ένα πρόγραμμα όπου θα επαναλάβουν τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής.

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

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

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

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

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος Προγραμματισμός ΗΥ και Υπολογιστική Φυσική Χρήστος Γκουμόπουλος Προγραμματισμός ΗΥ και Υπολογιστική Φυσική Χρήστος Γκουμόπουλος Προγραμματισμός ΗΥ και Υπολογιστική Φυσική Χρήστος Γκουμόπουλος Προγραμματισμός

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

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

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

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

Διαδικασιακός Προγραμματισμός

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

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

Εργαστήριο 8. Προγραμματιστικές Εφαρμογές στο Διαδίκτυο

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων

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

for for for for( . */

for for for for( . */ Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται

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

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB Εαρινό εξάμηνο 2018-2019 Τμήμα Μαθηματικών ΑΠΘ Διδάσκουσα: Αγγελική Παπάνα Μεταδιδακτορική Ερευνήτρια Πολυτεχνική σχολή, Α.Π.Θ. & Οικονομικό Τμήμα, Πανεπιστήμιο

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

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

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

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

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Βασικά Στοιχεία Το αλφάβητο της C Οι βασικοί τύποι της C Δηλώσεις μεταβλητών Είσοδος/Έξοδος Βασικές εντολές της C Αλφάβητο

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

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΣΤΑΘΕΡΕΣ είναι τα μεγέθη που δεν μεταβάλλονται κατά την εκτέλεση ενός αλγόριθμου. Εκτός από τις αριθμητικές σταθερές (7, 4, 3.5, 100 κλπ), τις λογικές σταθερές (αληθής και ψευδής)

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

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

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

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

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

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

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub

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

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

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

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

Διαδικασιακός Προγραμματισμός

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

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

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Β Μέρος Δομή Ελέγχου if-elif-else Επαναληπτική Δομή Ελέγχου while Επαναληπτική Δομή Ελέγχου for Αλληλεπίδραση χρήστη-προγράμματος Συναρτήσεις Η δομή

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα της γλώσσας C, το Dev-C++, το οποίο είναι εφαρμογή που τρέχει

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

ΕΡΓΑΣΤΗΡΙΟ 1: 1 Εισαγωγή, Χρήσιμες Εφαρμογές

ΕΡΓΑΣΤΗΡΙΟ 1: 1 Εισαγωγή, Χρήσιμες Εφαρμογές ΕΡΓΑΣΤΗΡΙΟ 1: 1 Εισαγωγή, Χρήσιμες Εφαρμογές Σκοπός του εργαστηρίου αυτού είναι η εξοικείωση με κάποιες εφαρμογές που θα μας φανούν πολύ χρήσιμες κατά τη διάρκεια του μαθήματος της Εισαγωγής στον Προγραμματισμό.

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

Η γλώσσα προγραμματισμού Strange

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

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

Η γλώσσα προγραμματισμού C

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η

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

Διαδικασιακός Προγραμματισμός

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

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 2: Δομή ενός προγράμματος C Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

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

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Εργαστήριο 4: 4.1 Η Δομή Ελέγχου if Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Γενική Μορφή: Παρατηρήσεις:

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

Σχεδίαση Βάσεων Δεδομένων

Σχεδίαση Βάσεων Δεδομένων Οδηγίες Μέρος 1: Απαντήστε κάθε ερώτηση. 1. Ποια είναι τα πλεονεκτήματα που παρέχει το Περιβάλλον Βάσεων Δεδομένων της Oracle για τις επιχειρήσεις; Το σύστημα διαχείρισης βάσεων δεδομένων της Oracle δίνει

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

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ,

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ, Εισαγωγή στο MATLAB Κολοβού Αθανασία, ΕΔΙΠ, akolovou@di.uoa.gr Εγκατάσταση του Matlab Διανέμεται ελεύθερα στα μέλη του ΕΚΠΑ το λογισμικό MATLAB με 75 ταυτόχρονες (concurrent) άδειες χρήσης. Μπορείτε να

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

Παρουσίαση PHP. Μιχάλης Ζήσης GreekLUG

Παρουσίαση PHP. Μιχάλης Ζήσης GreekLUG Παρουσίαση PHP Μιχάλης Ζήσης GreekLUG PHP Λίγα λόγια... Η PHP είναι μιας γενικής χρήσης Γλώσσα Προγραμματισμού για δημιουργία δυναμικού περιεχομένου PHP σημαίνει... PHP Hypertext Preprocessor Τρέχει σε

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα της γλώσσας C, το Dev-C++, το οποίο είναι εφαρμογή που τρέχει

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

Εγχειρίδιο εγκατάστασης Megasoft 2009

Εγχειρίδιο εγκατάστασης Megasoft 2009 Εγχειρίδιο εγκατάστασης Megasoft 2009 Περιεχόμενα Εγκατάσταση Joomla, JoomFish και VirtueMart... 3 Αποστολή αρχείων Joomla στο Διακομιστή (Host)... 3 Εγκατάσταση Joomla... 4 Εγκατάσταση VirtueMart... 9

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

ΕΡΓΑΣΤΗΡΙΟ 1: Εισαγωγή, Χρήσιμες Εφαρμογές

ΕΡΓΑΣΤΗΡΙΟ 1: Εισαγωγή, Χρήσιμες Εφαρμογές ΕΡΓΑΣΤΗΡΙΟ 1: Εισαγωγή, Χρήσιμες Εφαρμογές Σκοπός του εργαστηρίου αυτού είναι η χρησιμοποίηση κάποιων εφαρμογών που θα μας φανούν πολύ χρήσιμες κατά τη διάρκεια του μαθήματος της Εισαγωγής στον Προγραμματισμό.

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

ΟΔΗΓΙΕΣ FTP ΣΥΝΔΕΣΗΣ

ΟΔΗΓΙΕΣ FTP ΣΥΝΔΕΣΗΣ ΟΔΗΓΙΕΣ FTP ΣΥΝΔΕΣΗΣ ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ FTP...3 ΒΗΜΑ 1 Ο ΕΠΙΛΟΓΗ FTP CLIENT...3 ΒΗΜΑ 2 ο ΕΓΚΑΤΑΣΤΑΣΗ FTP CLIENT...3 ΒΗΜΑ 3 ο ΡΥΘΜΙΣΕΙΣ ΣΥΝΔΕΣΗΣ...8 ΑΠΟΡΙΕΣ ΒΟΗΘΕΙΑ...10 2 / 10 ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ FTP Για να

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

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 4 η Τελεστές Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης

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

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ 9.1 Εντολές Εισόδου/εξόδου Στην Pascal, 1. Tα δεδομένα των προγραμμάτων λαμβάνονται: είτε από το πληκτρολόγιο είτε από ένα αρχείο με τη χρήση των διαδικασιών read και readln,

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

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

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

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

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

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

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

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

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

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

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής Στο εργαστήριο αυτό θα δούμε πώς ορίζονται και πώς χρησιμοποιούνται οι συμβολοσειρές στην C. Επίσης, θα μελετήσουμε κάποιες από τις συναρτήσεις

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

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

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

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

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

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

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

«Δουλεύω Ηλεκτρονικά, Δουλεύω Γρήγορα και με Ασφάλεια - by e-base.gr»

«Δουλεύω Ηλεκτρονικά, Δουλεύω Γρήγορα και με Ασφάλεια - by e-base.gr» Επεξήγηση web site με λογικό διάγραμμα «Δουλεύω Ηλεκτρονικά, Δουλεύω Γρήγορα και με Ασφάλεια - by e-base.gr» Web : www.e-base.gr E-mail : support@e-base.gr Facebook : Like Twitter : @ebasegr Πολλοί άνθρωποι

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

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Python scripts Ένα πρόγραμμα στην Python (συχνά αποκαλείται script) αποτελείται από μία ακολουθία ορισμών και εντολών. H ακολουθία των ορισμών και

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

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

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

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

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1 Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων Octave - Διαδικασία ανάπτυξης προγραμμάτων MATLAB - Απλά

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

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C Επαναληπτικός βρόχος καλείται το τμήμα του κώδικα μέσα σε ένα πρόγραμμα, το οποίο εκτελείται από την αρχή και επαναλαμβάνεται

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον

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

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

ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Τρίτη Διάλεξη Εντολές Επιλογής και Επανάληψης Εντολές επιλογής Εντολή if Η πιο απλή μορφή της if συντάσσεται ως εξής: if ( συνθήκη ) Οι εντολές μέσα στα άγκιστρα αποτελούν

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

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

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

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

Οδηγίες για την εγκατάσταση του πακέτου Cygwin

Οδηγίες για την εγκατάσταση του πακέτου Cygwin Οδηγίες για την εγκατάσταση του πακέτου Cygwin Ακολουθήστε τις οδηγίες που περιγράφονται σε αυτό το file μόνο αν έχετε κάποιο laptop ή desktop PC που τρέχουν κάποιο version των Microsoft Windows. 1) Copy

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

ΟΝΟΜΑ : ΚΩΝΣΤΑΝΤΙΝΟΣ ΕΠΩΝΥΜΟ : ΚΟΚΟΛΟΓΟΣ Α.Μ. : Ε11060 ΕΞΑΜΗΝΟ : ΕΠΙ ΠΤΥΧΙΟ ΤΜΗΜΑ : ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΑΘΗΜΑ : ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ : ΕΦΑΡΜΟΓΗ

ΟΝΟΜΑ : ΚΩΝΣΤΑΝΤΙΝΟΣ ΕΠΩΝΥΜΟ : ΚΟΚΟΛΟΓΟΣ Α.Μ. : Ε11060 ΕΞΑΜΗΝΟ : ΕΠΙ ΠΤΥΧΙΟ ΤΜΗΜΑ : ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΑΘΗΜΑ : ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ : ΕΦΑΡΜΟΓΗ 1 ΟΝΟΜΑ : ΚΩΝΣΤΑΝΤΙΝΟΣ ΕΠΩΝΥΜΟ : ΚΟΚΟΛΟΓΟΣ Α.Μ. : Ε11060 ΕΞΑΜΗΝΟ : ΕΠΙ ΠΤΥΧΙΟ ΤΜΗΜΑ : ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΑΘΗΜΑ : ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ : ΕΦΑΡΜΟΓΗ ΚΑΤΑΓΡΑΦΗΣ ΥΠΗΡΕΣΙΩΝ ΕΠΙΧΕΙΡΗΣΗΣ ΛΙΑΝΙΚΗΣ ΠΩΛΗΣΗΣ ΕΠΙΒΛΕΠΩΝ

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

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python 1η Ομάδα Ασκήσεων Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων IDLE - Διαδικασία ανάπτυξης προγραμμάτων Python - Εισαγωγικά προγράμματα / print / μεταβλητές / input

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

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

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

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

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

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

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

ΚΕΦΑΛΑΙΟ 2. Τιμές, τύποι, μεταβλητές, λέξεις-κλειδιά, εντολές. 2.1 Εισαγωγή

ΚΕΦΑΛΑΙΟ 2. Τιμές, τύποι, μεταβλητές, λέξεις-κλειδιά, εντολές. 2.1 Εισαγωγή ΚΕΦΑΛΑΙΟ 2 Τιμές, τύποι, μεταβλητές, λέξεις-κλειδιά, εντολές Σύνοψη Το κεφάλαιο αυτό εισάγει τον αναγνώστη σε βασικές έννοιες που είναι χρήσιμες για την απόκτηση μιας πρώτης εμπειρίας με την Python. Προαπαιτούμενη

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

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

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

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java Δρ. Απόστολος Γκάμας Λέκτορας (407/80) gkamas@uop.gr Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου Διαφάνεια 1 Εισαγωγή

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

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

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

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

Οδηγίες για τη Χρήση του Google Drive

Οδηγίες για τη Χρήση του Google Drive Οδηγίες για τη Χρήση του Google Drive Χαρπαντίδου Ζαχαρούλα Επιμορφώτρια Β επιπέδου ΠΕ 19-20 Υπεύθυνη ΚΕ.ΠΛΗ.ΝΕ.Τ. Δράμας 2013 Περιεχόμενα Δημιουργία λογαριασμού στο Google Drive. 3 Διαχείριση του GoogleDrive..

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

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ 1 Βάση Δεδομένων: Με το όρο Βάση Δεδομένων εννοούμε ένα σύνολο δεδομένων που είναι οργανωμένο

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

FAIL PASS PASS οριακά

FAIL PASS PASS οριακά AEM 0001 0002 COMMENTS οριακά -Το πρόγραµµά σου δουλεύει λάθος για τις εισόδους: 7 -Δεν έχεις µεριµνήσει για την περίπτωση step=1. Μπορούσες να θεωρήσεις ειδική περίπτωση και να την υλοποιείς σε άλλον

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

1. Απαιτήσεις εργασίας

1. Απαιτήσεις εργασίας ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ Τμήμα Πολιτισμικής Τεχνολογίας & Επικοινωνίας 2 η Εργασία στο μάθημα «Δικτυακά Πολυμέσα Ι»: «Δημιουργία φόρμας για καταχώρηση στοιχείων με HTML - Javascript» Ημερομηνία παράδοσης:

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

Λίγα λόγια από το συγγραφέα Κεφάλαιο 1: Βάσεις δεδομένων και Microsoft Access Κεφάλαιο 2: Microsoft Access

Λίγα λόγια από το συγγραφέα Κεφάλαιο 1: Βάσεις δεδομένων και Microsoft Access Κεφάλαιο 2: Microsoft Access Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 Κεφάλαιο 1: Βάσεις δεδομένων και Microsoft Access... 9 Κεφάλαιο 2: Microsoft Access 2002... 20 Κεφάλαιο 3: Το σύστημα Βοήθειας του Microsoft Office ΧΡ... 36

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

Εργαστήριο 6. Προγραμματιστικές Εφαρμογές στο Διαδίκτυο. Στόχος. Προετοιμασία περιβάλλοντος εργασίας. a) Εκκίνηση XAMPP

Εργαστήριο 6. Προγραμματιστικές Εφαρμογές στο Διαδίκτυο. Στόχος. Προετοιμασία περιβάλλοντος εργασίας. a) Εκκίνηση XAMPP Εργαστήριο 6 Προγραμματιστικές Εφαρμογές στο Διαδίκτυο Στόχος Στόχος του εργαστηρίου είναι η εισαγωγή στην γλώσσα PHP και η εξοικείωση των φοιτητών στην χρήση του Web Server για την εξυπηρέτηση σελίδων

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

ARTius με PostgreSQL

ARTius με PostgreSQL ARTius με PostgreSQL 9.3.5.1 Features: Δεν υπάρχει License και κόστος αγοράς / αναβάθμισης του PostgreSQL. Εύκολη και γρήγορη εγκατάσταση. Ταχύτερη παραλληλία (row locking) σε σχέση με άλλα dbms (SQLite,

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

JAVASCRIPT 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

JAVASCRIPT 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών JAVASCRIPT 1 Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

Βάσεις δεδομένων (Access)

Βάσεις δεδομένων (Access) Βάσεις δεδομένων (Access) Όταν εκκινούμε την Access εμφανίζεται το παρακάτω παράθυρο: Για να φτιάξουμε μια νέα ΒΔ κάνουμε κλικ στην επιλογή «Κενή βάση δεδομένων» στο Παράθυρο Εργασιών. Θα εμφανιστεί το

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική

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