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