Γλώσσα Προγραμματισμού V PHP Μάθημα 2-3 Μανώλης Αργυρός – Μανταλένα Παλαιολόγου
Φόρμες (1 /4) Τα πρώτα site προσέφεραν στους επισκέπτες τους πληροφορίες με στατική μορφή Το περιεχόμενό τους μπορούσε να αλλάξει μόνο αν ο συγγραφέας των σελίδων το άλλαζε. Χρειαζόταν ένας μηχανισμός ώστε ο επισκέπτης να μπορεί να στείλει δεδομένα στο site. Ο μηχανισμός αυτός είναι οι φόρμες.
Φόρμες (2 /4) Αυτό είναι ένα παράδειγμα μιας απλής φόρμας που όταν επιλεχθεί το submit, στέλνει τα στοιχεία της φόρμας στον web server. Έτσι επιτυγχάνεται η αμφίδρομη επικοινωνία μεταξύ του web site και του επισκέπτη.
Φόρμες (3 /4) Ο κώδικας για την προηγούμενη φόρμα είναι <html> <body> <form action="welcome.php" method="post"> Name: <input type="text" name="name"><br> E-mail: <input type="text" name="email"><br> <input type="submit"> </form> </body> </html> Όταν ο χρήστης καταχωρήσει τη φόρμα, τα δεδομένα θα σταλούν στο αρχείο που έχει οριστεί στην action, δηλαδή στο welcome.php, με τη μέθοδο post.
Φόρμες (4 /4) Το welcome.php θα μπορούσε να είναι αυτό: <html> <body> Welcome <?php echo $_POST["name"]; ?><br> Your email address is: <?php echo $_POST["email"]; ?> </body> </html> Η $_POST είναι μια superglobal μεταβλητή η οποία χρησιμοποιείται για να συλλέγει δεδομένα που έχουν καταχωρηθεί με μία φόρμα με τη μέθοδο post. ΚAΘΕ φορά που θέλουμε να χρησιμοποιήσουμε δεδομένα από τη φόρμα μέσα στο script θα χρησιμοποιούμε την $_POST.
echo (1/2) H echo είναι μια εντολή που χρησιμοποιείται για να εμφανίσει δεδομένα στην οθόνη. Μπορεί να χρησιμοποιηθεί με παρενθέσεις ή και χωρίς: echo ή echo(). Αυτό που θα εμφανίσει η echo μπαίνει μέσα σε εισαγωγικά. echo “Hello world!”; Για να χρησιμοποιήσουμε τύπους μορφοποίησης της html μέσα σε php script, πρέπει να τους βάλουμε μέσα στα εισαγωγικά της echo. echo “I’m learning PHP <br>”; Μία μεταβλητή θα εμφανιστεί είτε μέσα σε εισαγωγικά είτε χωρίς. echo $x; echo “$x”; H echo μπορεί να εμφανίσει και το αποτέλεσμα πράξεων echo $x+$y;
echo (1/2) Το σύμβολο «.» είναι ο τελεστής συνένωσης συμβολοσειρών που χρησιμοποιείται για να προσθέτει συμβολοσειρές (κομμάτια κειμένου) μεταξύ τους. Τα παρακάτω παραδείγματα εμφανίζουν το ίδιο αποτέλεσμα στην οθόνη: Παράδειγμα 1 Echo “ I love $txt!”; Παράδειγμα 2 Echo “ I love”.$txt.”!”; Παράδειγμα 3 echo “I love”; echo $txt; echo “!”;
rand() Η συνάρτηση rand() επιστρέφει έναν τυχαίο ακέραιο. Αν θέλουμε έναν τυχαίο ακέραιο ανάμεσα σε έναν min και σε έναν max ακέραιο, τότε δίνουμε στην rand() τις παραμέτρους: rand(min,max)
Αριθμητικοί τελεστές Τελεστής Όνομα Παράδειγμα Αποτέλεσμα + Πρόσθεση $x+$y Άθροισμα - Αφαίρεση $x-$y Διαφορά * Πολλαπλασιασμός $x*$y Γινόμενο / Διαίρεση $x/$y Πηλίκο % Υπόλοιπο $x%$y
Συγκριτικοί τελεστές Τελεστής Όνομα Παράδειγμα Αποτέλεσμα == Ισότητα Συγκριτικοί τελεστές Τελεστής Όνομα Παράδειγμα Αποτέλεσμα == Ισότητα $x==$y Επιστρέφει TRUE αν το $x είναι ίσο με το$y === Ταυτότητα $x===$y Επιστρέφει TRUE αν το $x είναι ίσο με το$y και είναι και ίδιου τύπου != Ανισότητα $x!=$y Επιστρέφει TRUE αν το $x δεν είναι ίσο με το$y <> $x<>$y < Μικρότερο $x<$y Επιστρέφει TRUE αν το $x είναι μικρότερο από το $y > Μεγαλύτερο $x>$y Επιστρέφει TRUE αν το $x είναι μεγαλύτερο από το $y <= Μικρότερο ή ίσο $x<=$y Επιστρέφει TRUE αν το $x είναι μικρότερο ή ίσο με το $y => Μεγαλύτερο ή ίσο $x=>$y Επιστρέφει TRUE αν το $x είναι μεγαλύτερο ή ίσο με το $y
Λογικοί τελεστές Τελεστής Όνομα Παράδειγμα Αποτέλεσμα and And Λογικοί τελεστές Τελεστής Όνομα Παράδειγμα Αποτέλεσμα and And $x and &y Επιστρέφει true αν και τα δύο είναι true or Or $x or &y Επιστρέφει true, αν ένα από τα δύο, ή και τα δύο είναι true xor Xor $x xor &y Επιστρέφει true αν ένα μόνο από τα δύο είναι true && $x && &y || $x || &y ! Not ! $x Επιστρέφει true αν το $x είναι false και false αν το $x είναι true
Δομές Επανάληψης Συχνά όταν γράφουμε κώδικα, θέλουμε κάποιες γραμμές κώδικα να τρέξουν για μερικές φόρες στη σειρά. Αντί να γράφουμε τον ίδιο κώδικα στη σειρά πολλές φορές, χρησιμοποιούμε τις δομές επανάληψης. Στην PHP υπάρχουν οι ακόλουθες δομές επανάληψης While do...while foreach
Δομή επανάληψης For (1/2) Σύνταξη: for (init counter; test counter; increment counter){ κώδικας } Init counter: Αρχικοποιεί την τιμή του μετρητή Test counter: Αν ισχύει, επαναλαμβάνεται το loop Increment counter: Αυξάνει την τιμή του μετρητή
Εντολές συνθήκης Με τις εντολές συνθήκης μπορούμε να επέμβουμε στη ροή εκτέλεσης του προγράμματος. Οι εντολές συνθήκης χρησιμοποιούνται για να εκτελούν διαφορετικό κώδικα υπό διαφορετικές συνθήκες. Οι εντολές συνθήκης στην PHP είναι: if if...else if...elseif...else switch
Εντολή if Η εντολή if, εκτελεί ένα τμήμα κώδικα, αν κάποια συνθήκη είναι true. Σύνταξη: if (συνθήκη){ κώδικας που θα εκτελεστεί αν η συνθήκη είναι true } Παράδειγμα: <?php $age=10; if ($age <18){ echo “Ανήλικος”; ?> Το παράδειγμα αυτό εμφανίζει το μήνυμα «Ανήλικος» αν η ηλικία είναι μικρότερη των 18 ετών.
Εντολή if...else (1/2) Η εντολή if...else, εκτελεί κάποιο κώδικα αν μία συνθήκη είναι αληθής, και διαφορετικό κώδικα αν δεν είναι. Σύνταξη: if (συνθήκη){ Κώδικας που θα εκτελεσθεί αν η συνθήκη είναι true } else { Κώδικας που θα εκτελεσθεί αν η συνθήκη είναι false }
Εντολή if...else (2/2) Παράδειγμα: <?php $age=10; if ($age <18){ echo “Ανήλικος”; } else { echo “ Ενήλικος”; } ?> To παράδειγμα αυτό εμφανίζει στην οθόνη το μήνυμα «Ανήλικος» αν η ηλικία είναι μικρότερη του 18 και “Ενήλικος” διαφορετικά.
Εντολή if...elseif...else (1/2) Σύνταξη: if (συνθήκη1){ Κώδικας που θα εκτελεσθεί αν η συνθήκη1 είναι true } elseif (συνθήκη) { Κώδικας που θα εκτελεσθεί αν η συνθήκη2 είναι true }else{ κώδικας που θα εκτελεσθεί αν όλες οι συνθήκες είναι false. }
Εντολή if...elseif...else (2/2) Παράδειγμα: <?php $age=10; if ($age <18){ echo “Ανήλικος”; } elseif ($age<70) { echo “ Ενήλικος”; } else { echo “Ηλικιωμένος”; } ?> To παράδειγμα αυτό εμφανίζει στην οθόνη το μήνυμα «Ανήλικος» αν η ηλικία είναι μικρότερη του 18, “Ενήλικος” αν δεν είναι μικρότερη του 18 αλλά είναι μικρότερη του 70, και «Ηλικιωμένος» διαφορετικά.
Εντολή switch(1/2) Η εντολή switch, επιλέγει ανάμεσα διαφορετικές ομάδες κώδικα και εκτελεί αυτή που επιτρέπει η συνθήκη. Σύνταξη: switch (n){ case label1: κώδικας που θα εκτελεστεί αν n=label1; break; case label2: κώδικας που θα εκτελεστεί αν n=label2; case label3: κώδικας που θα εκτελεστεί αν n=label3; default: κώδικας που θα εκτελεστεί αν n είναι διαφορετικό από όλα τα labels }
Εντολή switch (2/2) Παράδειγμα: <?php $color=green; switch($color){ case (blue) : echo “Tο χρώμα είναι μπλε”; break; case (red): echo “Tο χρώμα είναι κόκκινο”; default: echo “Tο χρώμα δεν είναι μπλε ούτε κόκκινο”; } ?>
Γλώσσα Προγραμματισμού V PHP Μάθημα 2-3 Μανώλης Αργυρός – Μανταλένα Παλαιολόγου