LinuxFanClub Wiki

Υπηρεσίες, Προγραμματισμός, Εκπαίδευση ..

User Tools

Site Tools


el:school:lessons:html:ergastirio:php:demo

PHP - Βασικές δομές

  • H php είναι μια γλώσσα προγραμματισμού που εκτελείται σε web servers και παράγει html που καταλαβαίνουν οι περιηγητές (browsers).
  • Είδαμε πως μπορούμε να λάβουμε δεδομένα από μία φόρμα με την μέθοδο get κάνοντας χρήση της php.
  • Στην νέα άσκηση θα δούμε διάφορα προγραμματιστικά χαρακτηριστικά της php και πως θα την συνδυάσουμε με html
  1. ΔΗΜΙΟΥΡΓΙΑ PHP ΣΕΛΙΔΑΣ
    1. Δημιουργήστε με το geany ένα νέο αρχείο php και αποθηκεύστε το ως demo.php στον φάκελο public_html/www
    2. Προσθέστε μέσα στο <body> .. </body> τον παρακάτω κώδικα
      •  <?php
           echo "Demo";
        ?>
      • Η echo εμφανίζει κάτι στην ιστοσελίδα (όπως η writeln στην pascal, η printf στην C κτλ).
      • Ακόμα δεν κάναμε κάτι το ιδιαίτερο θα μπορούσαμε να το γράψουμε και σε απλή html.
    3. Για να δούμε το αποτέλεσμα θα πρέπει να ανοίξουμε την ιστοσελίδα από τον web server, όχι τοπικά. Αν ο webserver μας έχει όνομα lserver, πηγαίνουμε στην διεύθυνση http://lserver/~username/demo.php (όπου username βάζετε το δικό σας)
  2. ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ
    1. Ας κάνουμε το κείμενο Demo μεγάλο (επικεφαλίδα 1) όπως ξέρουμε στην html και να είναι στο κέντρο. Βάλτε τις ετικέτες που πρέπει.
    2. Το κείμενό μας είναι στην 1η γραμμή. Εάν θέλαμε να εμφανιστεί για παράδειγμα στην 11η γραμμή θα έπρεπε να βάζαμε 10 φορές την ετικέτα <br>. Πάμε να το κάνουμε προγραμματιστικά με την php. Εισάγετε τον παρακάτω κώδικα πάνω από το echo “Demo”;.
      •    for ($i = 1; $i <= 10; $i++) {
              echo "<br>";
           }
    • Η παραπάνω δομή επανάληψης θα εκτελέσει 10 φορές την echo “<br>”;
  3. ΜΕΤΑΒΛΗΤΕΣ
    • Οι μεταβλητές όπως πιθανόν γνωρίζουμε και από άλλες γλώσσες προγραμματισμού αποθηκεύουν τιμές, αριθμητικές, κειμένου ή άλλες.
    • Η i είναι μία μεταβλητή της php. Αρχικά έχει την τιμή 1 και αυξάνεται κατά 1 με την εντολή $i++ σε κάθε επανάληψη. Η επανάληψη εκτελείται ενώ η συνθήκη $i ⇐ 10 ισχύει (είναι αλήθεια). Όταν λοιπόν γίνει η i 11 σταματάει η επανάληξη.
    • Βλέπουμε ότι στην php οι μεταβλητές έχουν πάντα μπροστά το σύμβολο $
    1. Πάμε να ορίσουμε μια νέα μεταβλητή $line που θα πάρει μία τυχαία τιμή από 1 έως 20. Εισάγετε τον παρακάτω κώδικα πάνω από την for
      $line=rand(1, 20);
    2. Αντικαταστήστε το 10 με $line ώστε να μην έχουμε πάντα 10 <br> αλλά τυχαία από 1 έως 20 και δείτε το αποτέλεσμα.
    3. Επίσης για να είναι εμφανές και σε μάς η τιμή της line, κάτω από την echo “<center><H1>Demo</H1></center>”; εισάγετε τον κώδικα
      echo "Γραμμή " . $line;
      • Εντοπίσατε ένα μικρό λογικό λάθος; Αν μπορείτε διορθώστε το αλλιώς αφήστε το, είναι μικρής σημασίας.
  4. Χρώματα - PHP μέσα σε ετικέτες
    • Εάν θέλαμε να βάλουμε χρώματα στην σελίδα μας σε φόντο και κείμενο θα τροποποιούσαμε την <body> για παράδειγμα σε <body bgcolor=“red” text=“yellow”> ή θα χρησιμοποιούσαμε δεκαεξαδικούς αριθμούς όπως <body bgcolor=“#fa27e2” text=“#64bc9d”>.
    • Πάμε να δούμε πως θα παράγουμε τυχαία δεκαεξαδικά χρώματα με την php ώστε να τα βάλουμε στην ετικέτα <body>
    1. Διαγράψτε την ετικέτα <body> και στην αρχή του κώδικα php πριν από όλα τα υπόλοιπα εισάγετε τον παρακάτω κώδικα
      •    $bgclr = sprintf("#%06x",rand(0,16777215));
           echo "<body bgcolor=" . $bgclr . " >";
      • Ο κώδικας αυτός βάζει μια τυχαία δεκαεξαδική τιμή στην μεταβλητή $bgclr π.χ. #fa27e2.
      • Η echo παίρνει το κείμενο “<body bgcolor=“, προσθέτει σε αυτό με τον τελεστή τελεία . την τιμή της μεταβλητής $bgclr και τέλος προσθέτει και το κείμενο ” >“ ώστε να κλείσει η ετικέτα <body>
      • Η echo τελικά εμφανίζει την html <body bgcolor=#fa27e2>
    2. Μπορείτε με παρόμοιο τρόπο με μια νέα μεταβλητή $textclr, να βάλετε και την text=#64bc9d (όπου #64bc9d τυχαία τιμή) μέσα στην <body .. > ώστε να αλλάξει χρώμα και στο κείμενο;
      • Προσοχή να υπάρχει κενό πριν από το κειμενο text
    3. Αλλάξτε επίσης την γραμμή echo “Γραμμή ” . $line; σε
      echo "Γραμμή " . $line . " Χρώμα φόντου " . $bgclr . " Χρώμα κειμένου " . $textclr ;

      ώστε να βλέπουμε ακριβώς πια χρώματα χρησιμοποιούμε.

    4. Πατήστε αρκετές φορές F5 για να δείτε το αποτέλεσμα που αλλάζει κάθε φορά. Αυτό σημαίνει δυναμική σελίδα!
  5. for μέσα σε for
    • Έχουμε ήδη δει μια επανάληψη με for στην οποία δημιουργούσαμε κενές γραμμές με πολλά <br>
    1. Να φτιαχτεί μία γραμμή με 20 αστεράκια (το σύμβολο *) με χρήση επανάληψης.
    2. Στην θέση του 20 να μπει μια μεταβλητή με όνομα $mikos. Ακριβώς πάνω από την for με τα αστεράκια ορίστε η μεταβλητή $mikos να πάρει την τιμή 20. Εμφανίστε πάλι την ιστοσελίδα. Θα πρέπει να είναι όμοια.
    3. Έχουμε φτιάξει μία γραμμή με 20 αστεράκια. Από κάτω δημιουργήστε άλλη μία. (Προσοχή πρέπει να αλλάξετε γραμμή στην html)
    4. Όταν φτιάχνετε μια επανάληψη με for, εκτελούνται πολλές φορές όσες εντολές υπάρχουν ανάμεσα στα { }. Μπορείτε να φτιάξετε 5 γραμμές με αστεράκια. (Προσοχή για να μην μπλέξετε τους μετρητές χρησιμοποιήστε μετρητή $j για τις 5 γραμμές)
    5. Στην θέση του 5 βάλτε μια μεταβλητή ipsos. Ακριβώς πριν την χρησιμοποιήσετε, δώστε την τιμή 5 στην μεταβλητή $mikos.
    6. Εμφανίστε κάτω από το σχήμα με τις 5 γραμμές από 20 αστεράκια το κείμενο Ορθογώνιο με 5 γραμμές και 20 αστεράκια, αλλά στην θέση του 5 και του 20 να είναι οι αντίστοιχες μεταβλητές.
    7. Εμφανίστε 10 γραμμές με 30 αστεράκια η κάθε μία.
el/school/lessons/html/ergastirio/php/demo.txt · Last modified: Y/m/d H:i by vagk