html cgi scrpts php 632 699 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
HTML-CGI SCRPTS-PHP ?????????? ????????? ?.?. 632 ?????? ???????? ?.?. 699 PowerPoint Presentation
Download Presentation
HTML-CGI SCRPTS-PHP ?????????? ????????? ?.?. 632 ?????? ???????? ?.?. 699

Loading in 2 Seconds...

play fullscreen
1 / 44

HTML-CGI SCRPTS-PHP ?????????? ????????? ?.?. 632 ?????? ???????? ?.?. 699 - PowerPoint PPT Presentation


  • 97 Views
  • Uploaded on

HTML-CGI SCRPTS-PHP Γεωργούλας Βασίλειος Α.Μ. 632 Τάσσης Σωτήριος Α.Μ. 699. HTML. HyperText Markup Language (Γλώσσα Χαρακτηρισμού Υπερκειμένου) Σύστημα επεξεργασίας εγγράφων. Tags. ( Tag- Ετικέτα):Είναι το βασικό δομικό στοιχείο της γλώσσας

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'HTML-CGI SCRPTS-PHP ?????????? ????????? ?.?. 632 ?????? ???????? ?.?. 699' - buck


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
html cgi scrpts php 632 699
HTML-CGI SCRPTS-PHPΓεωργούλας Βασίλειος Α.Μ. 632Τάσσης Σωτήριος Α.Μ. 699
slide2
HTML
  • HyperText Markup Language
  • (Γλώσσα Χαρακτηρισμού Υπερκειμένου)
  • Σύστημα επεξεργασίας εγγράφων
slide3
Tags
  • (Tag-Ετικέτα):Είναι το βασικό δομικό στοιχείο της γλώσσας
  • Χαρακτηριστικά του είναι το όνομα μέσα στα σύμβολα <> π.χ. <name>….</name>
  • Με τα διάφορα tags μορφοποιούμε την σελίδα με τα στοιχεία που θέλουμε, όπως γραμμές, στήλες, κείμενο, χρώματα, πλαίσια, σύνδεσμοι υπερκειμένου, πολυμέσα κ.ά.
  • Δεν είναι case sensitive στο name του tag
slide4
Διάφορα Tags
  • Υπάρχουν 3 tags που περιγράφουν την δομή της σελίδας γενικότερα (προαιρετικά) όπως
  • <HTML> Δηλώνει ότι το αρχείο είναι τύπου html
  • <HEAD> To ενδιάμεσο text είναι ο τίτλος για το υπόλοιπο αρχείο
  • <BODY> Το σώμα της html σελίδας μας
slide5
<TITLE> Δηλώνουμε το περιεχόμενο της web σελίδας μας. Τοποθετείται ανάμεσα από το <HEAD>
  • Επικεφαλίδες χρησιμοποιούνται για να ξεχωρίζουμε τα κεφάλαια που μπορεί να έχουμε στην σελίδα μας
  • Υπάρχουν 6 τύποι επικεφαλίδας

<H1>………</H1> το 1 δείχνει τον τύπο της επικεφαλίδας (από 1-6)

slide6
Παράγραφος <P>…</P> αρχή και τέλος μιας παραγράφου
  • Για σχόλια υπάρχει το tag <!-- σχόλιο -->
slide7
ΛΙΣΤΕΣ
  • Αριθμημένες Λίστες: Δημιουργούνται με το <ΟL>…</OL>. Κάθε στοιχείο της λίστας ξεκινά με το <LΙ>
  • Λίστες με κουκίδες: <UL>…</UL>

Και τα δύο με την ιδιότητα TYPE καθορίζουν το είδος αρίθμησης ή κουκίδας που επιθυμείται

slide8
Παράδειγμα:

<HTML><HEAD>

<TITLE> HTML FILE</TITLE></HEAD>

<BODY><UL TYPE=“square”>

<LI> HARDWARE

<LI> SOFTWARE</UL>

<OL type=“I”>

<LI> Monday <LI> Tuesday

</OL></BODY></HTML>

slide9
Σύνδεσμοι
  • Διασύνδεση της σελίδας μας με άλλες σελίδες του WEB ή του τοπικού δικτύου μας
  • Σύνδεση με συγκεκριμένα μέρη μέσα στην δική μας σελίδα για εύκολη μετάβαση σε αυτά
slide10
Το tag είναι <A> … </A>
  • To συγκεκριμένο tag έχει attributesNAME, HREF.
  • NAME: Ονοματίζει το σύνδεσμο
  • HREF: Επιλέγει το URL που θα φορτωθεί
slide11
ΤΕΧΝΙΚΕΣ ΜΟΡΦΟΠΟΙΗΣΕΙΣ ΚΕΙΜΕΝΟΥ
  • <em> … </em>

Τονισμένο κείμενο

  • <I>…</I> Italics
  • <big>…</big> ,<small>…</small> Αυξομείωση της γραμματοσειράς
  • <div>…</div> με όρισμα ALIGN. Στοίχιση του κειμένου ανάλογα με το όρισμα (left,right…)
slide12
ΠΙΝΑΚΕΣ
  • <TABLE>…</TABLE>: Δημιουργεί ένα πίνακα. Ανάμεσα στο ζεύγος περιλαμβάνονται και άλλα tags για την δημιουργία γραμμών, στηλών, λεζάντας
  • Ακόμη ένας πίνακας μπορεί να περιλαμβάνει και άλλους.
slide13
<tr>: Καθορίζει γραμμές στον πίνακα
  • <td>: Δημιουργεί ένα κελί στο πίνακα
  • <th>: Ορίζει όνομα σε μία στήλη
  • <caption>: Ορίζει το όνομα-λεζάντα του πίνακα
slide14
ΠΛΑΙΣΙΑ
  • <FRAMESET>: Δημιουργεί πλαίσια που χωρίζουν μέρη της οθόνης για διάφορα ξεχωριστά έγγραφα τα οποία αλληλεπιδρούν μεταξύ τους. Δεν χρησιμοποιείται μαζί με το <BODY>.
  • Με τα γνωρίσματα cols και rows δημιουργούμε στήλες και γραμμές για κάθε frameset.
slide15
<FRAMESET COLS=“COLUMN WIDTH,CONUMN WIDTH…”>: Το column width είναι αριθμός για pixel. Αν στη θέση του βάλουμε * χρησιμοποιείται ο μεγαλύτερος διαθέσιμος χώρος
  • <FRAMESET COLS=“ROW WIDTH,ROW WIDTH…”>: Αντίστοιχα για το attribute row.
slide16
<FRAMESRC=URL>: Συσχετίζει κάθε πλαίσιο με ένα html έγγραφο
  • Υποχρεωτικά χρησιμοποιείται για κάθε πλαίσιο που έχει οριστεί από το <FRAMESET>.
slide17
SCROLLING: Attribute του <FRAME>. Αν YES έχει σίγουρα μπάρες. Αν AUTO εμφανίζονται όταν είναι απαραίτητες.
  • BORDERCOLOR:Attribute του <FRAME>. Χρώμα για το περίγραμμα του πλαισίου. Παίρνει τιμές δίνοντας ή όνομα ή δεκαεξαδικό αριθμό
slide18
ΦΟΡΜΕΣ
  • <FORM>: Ορίζει μία φόρμα για εισαγωγή δεδομένων από τον χρήστη. Μπορεί να περιέχει πεδία, κουμπιά, drop-down menus κ.ά.
  • Έχει δύο attributes:
    • METHOD: Ορίζει τον τρόπο αποστολής των δεδομένων
    • ACTION: Ορίζει το script το οποίο θα επεξεργαστεί τα δεδομένα.
slide19
Tag <INPUT>: Καθορίζει την περιοχή στην οποία ο χρήστης εισάγει δεδομένα. Έχει attributes
    • Type: Ορίζει το είδος της περιοχής που αναφέρεται το input. Μπορεί να είναι text για πεδία κειμένου, radiobutton για στρογγυλά κουμπιά, submit για κουμπιά υποβολής φόρμας, reset για κουμπιά καθαρισμού της φόρμας, password για εισαγωγή συνθηματικού
slide20
Name: Δίνει όνομα στο πεδίο εισόδου των δεδομένων ώστε να αναγνωρίζεται από το script που θα κάνει την επεξεργασία
  • Value: Ορίζει την τιμή του πεδίου π.χ. όνομα του κουμπιού, επιλεγμένο by default(checked) ένα radiobutton κ.τ.λ.
select tag
SELECT TAG
  • Μας δίνει την δυνατότητα δυναμικών και στατικών drop down menu.
  • Ανάμεσα στο ζεύγος των tags χρησιμοποιείται το tag <option> για να ορίσει τις επιλογές του drop down menu.
cgi scripts

CGI Scripts

Εξυπηρετούν την αλληλεπίδραση μεταξύ χρήστη κ εξυπηρετητή (μοντέλο client – server).

Επιτρέπουν την ανάκτηση πληροφορίας από μια βάση δεδομένων, κάνουν επιλογές σε μια σελίδα (π.χ. επιλογές από drop-down menus, μαύρισμα bullet points κ.λ.π.), επιτρέπουν την επεξεργασία των επιλογών του χρήστη κ την κατάλληλη απάντηση σε αυτές τις επιλογές.

slide23
Ένα script τρέχει πάνω στον server.
  • Το script καλείται από τον browser του χρήστη που αλληλεπιδρά με την εφαρμογή.
  • Μπορεί να κληθεί είτε μέσω ενός form (πεδίο Action), είτε σαν κανονικός σύνδεσμος μεταξύ δυο σελίδων.
  • Έχοντας είσοδο από τον browser κάνει κάποια ενέργεια (π.χ. ερώτηση σε μια βάση δεδομένων, μετάβαση σε μια επιθυμητή σελίδα ανάλογα με την επιλογή) και το αποτέλεσμα επιστρέφεται στον browser ο οποίος το εμφανίζει.
slide24
PHP
  • PHP Hypertext preprocessor (προεπεξεργαστής κειμένου Hypertext – Personal Home Page αρχικά)
  • Προϊόν ανοιχτού κώδικα σύμφωνο με την σύμβαση GNU
  • Πρώτη έκδοση το 1994 (Rasmus Lerdorf)
  • Τρέχουσα έκδοση η 5.2.*
  • Γλώσσα αλληλεπίδρασης μεταξύ browser και server.
slide25
ΡΗΡ – Βασική Χρήση
  • PHP tags:
  • XML Style : <?php ... ?>
  • Short Style : <? ... ?>
  • Script Style :

<SCRIPT LANGUAGE=‘php’>...</SCRIPT>

  • Προτάσεις:

echo ‘ ... ’

  • Σχόλια:
  • C Style : /* … */
  • C++ Style : //
  • Shell Style : #
slide26
Τύποι Δεδομένων
  • Integer – δηλώνει ακέραιους αριθμούς
  • Float – δηλώνει πραγματικούς αριθμούς
  • String – δηλώνει συμβολοσειρές χαρακτήρων
  • Boolean – δηλώνει μεταβλητές true false
  • Array – χρησιμοποιείται για αποθήκευση πολλαπλών στοιχείων του ίδιου τύπου
  • Objects – χρησιμοποιείται για αποθήκευση στιγμιότυπων κλάσεων
slide27
Τύποι Δεδομένων
  • NULL- μεταβλητές στις οποίες δεν έχει δοθεί ή έχει δοθεί η τιμή NULL
  • Resource- μεταβλητές που δημιουργούνται από ειδικές συναρτήσεις, κ κρατούν πληροφορίες για ανοιχτά αρχεία, συνδέσεις με βάσεις δεδομένων, καμβάδες εικόνων κ.λ.π.
  • Οι μεταβλητές δηλώνονται με το σύμβολο $
  • Χωρίζονται σε υπερκαθολικές, σταθερές, καθολικές, τοπικές
slide28
Υπερ-καθολικές Μεταβλητές 1/2
  • $GLOBALS- Πίνακας καθολικών μεταβλητών
  • $_Server- Πίνακας μεταβλητών περιβάλλοντος διακομιστή
  • $_GET- Πίνακας που περνάει στο script μέσω της μεθόδου GET
  • $_POST- Πίνακας που περνάει στο script μέσω της μεθόδου POST
  • $_COOKIE- Πίνακας από μεταβλητές cookie
  • $_ENV- Πίνακας μεταβλητών περιβάλλοντος
  • $_FILES- Πίνακας μεταβλητών που σχετίζονται με αποστολές αρχείων
slide29
Υπερ-καθολικές Μεταβλητές 2/2
  • $_REQUEST- Πίνακας όλης της εισόδου του χρήστη, συμπεριλαμβανομένων των περιεχομένων εισόδου που περιλαμβάνουν τα $_GET, $_POST και $_COOKIE
  • $_SESSION- Πίνακας μεταβλητών συνόδου
slide30
Δομές Ελέγχου στην ΡΗΡ
  • Η ΡΗΡ χρησιμοποιεί τις ίδιες δομές ελέγχου με την C
  • if (condition) expression1;

else expression2;

  • If (condition) expression1;

elseif (condition) expression2;

else expression3;

  • Switch ($var)

case 1 : expression; break;

case 2 : expression; break;

default : expression; break;

slide31
Επαναληπτικές Δομές στην ΡΗΡ
  • Η ΡΗΡ χρησιμοποιεί τις ίδιες δομές επανάληψης με την C
  • While (condition) expression;
  • For (expression1; condition; expression2;

expression;

  • Do

expression;

while (condition);

slide32
PHP και Βάσεις Δεδομένων
  • Ένας χρήστης έχει την δυνατότητα να δει ή να αλλάξει τις εγγραφές μιας βάσης δεδομένων που βρίσκεται αποθηκευμένη στον server.
  • Ο χρήστης δίνει τα στοιχεία τα οποία θέλει να δει ή να επεξεργαστεί με κάποιον τρόπο
  • Ένα script αναλαμβάνει να κάνει την ερώτηση με βάση την είσοδο του χρήστη
  • Πίσω στον browser εμφανίζονται τα αποτελέσματα της ερώτησης.
slide33
ΡΗΡ και Βάσεις Δεδομένων
  • Η βάση δεδομένων με την οποία αλληλεπιδρά ο χρήστης δεν είναι αποθηκευμένη τοπικά ώστε να μπορεί να κάνει ο ίδιος την ερώτηση του.
  • Ο χρήστης δίνει τα απαιτούμενα δεδομένα ώστε ένα php script να μπορεί να κάνει μια σωστή ερώτηση στην βάση.
  • Οι επηρεαζόμενες εγγραφές επιστρέφουν σαν output στο script το οποίο με την σειρά του τα επιστρέφει στον browser είτε με κατάλληλα μηνύματα που εμφανίζει το ίδιο το script είτε δίνοντας τα ως είσοδο σε άλλη σελίδα της εφαρμογής.
slide34
ΡΗΡ και Βάσεις Δεδομένων
  • Αυτού του είδους η αλληλεπίδραση, που επιτυγχάνεται μέσω της PHP είναι πολύ σημαντική.
  • Επιλογές :
    • Login registered users
    • Δυναμικά μενού
    • Επιλογή από μια πλειάδα καταχωρήσεων (π.χ. βιβλία από βιβλιοθήκες, τηλεφωνικοί κατάλογοι…)
script
Είσοδος σε ένα ΡΗΡ script
  • Ένας browser έχει την δυνατότητα να στέλνει δεδομένα σε ένα script μέσω κάποιων μεθόδων.
  • Μέθοδοι
    • GET : τα δεδομένα πακετάρονται και στέλνονται στο τέλος του URL για το οποίο προορίζονται
    • POST: τα δεδομένα στέλνονται σαν μια ανεξάρτητη ροή δεδομένων
slide36
Επικοινωνία με την Βάση Δεδομένων
  • Το script που είναι υπεύθυνο για την εκτέλεση της ερώτησης λαμβάνει είσοδο.
  • Πρέπει να γίνει έλεγχος για το αν έχει δοθεί ότι είναι αναγκαίο για την εκτέλεση της ερώτησης.
  • Γίνεται σύνδεση με τον διακομηστή της βάσης (π.χ. SQL server) και επιλέγεται η βάση
  • Γίνεται η ερώτηση και η κατάλληλη επεξεργασία στις επηρεαζόμενες εγγραφές.
  • Με βάση τα αποτελέσματα που έδωσε η επεξεργασία γίνεται κάποια ενέργεια.
slide37
Επιλογή Βάσης Δεδομένων
  • Η ΡΗΡ έχει δικές της συνδέσεις με πολλά συστήματα βάσεων δεδομένων (MySQL, mSQL, Oracle, filePRO, Hyperware, InterBase ...)
  • Δεδομένου των πλεονεκτημάτων της MySQL (open source, ευκολία χρήσης, υψηλή απόδοση, μεταφερσιμότητα) χρησιμοποιείται για την επίδειξη της επικοινωνίας με την ΡΗΡ.
mysql
Συναρτήσεις ΡΗΡ για επικοινωνία με την MySQL
  • mysql_connect(server, user,password);

Συνδέει τον user με το συγκεκριμένο password στον συγκεκριμένο MySQL server.

  • mysql_select_db(name);

Ο χρήστης συνδέεται στην βάση με όνομα name.

  • $query=mysql_query(...);

Εκτελείται μια ερώτηση πάνω στην βάση.Το αποτέλεσμα που έχει η ερώτηση πάνω στην βάση αποθηκεύεται στην μεταβλητή $query τύπου resource.

mysql1
Συναρτήσεις ΡΗΡ για επικοινωνία με την MySQL
  • $row=mysql_fetch_array($query);

Αποθηκεύει τις επηρεαζόμενες από την ερώτηση γραμμές της βάσης σε μια μεταβλητή $row.

  • mysql_affected_rows();

Δίνει τον αριθμό των επηρεαζόμενων γραμμών.

  • mysql_error();

Χρησιμεύει για την αποσφαλμάτωση καθώς εμφανίζει στο standard output (browser) τα λάθη που έχουν προκύψει στην προσπάθειά μας να συνδεθούμε με τον server, να επιλέξουμε βάση, ή να εκτελέσουμε κάποιο ερώτημα.

script1
Έλεγχος εισόδου σε ένα ΡΗΡ script
  • Όταν ένα script εκτελεί μια ερώτηση σε μια βάση δεδομένων, είναι απαραίτητο από την μεριά του χρήστη να δώσει όλες τις απαραίτητες πληροφορίες.
  • Ο έλεγχος για το σύνολο των πληροφοριών γίνεται με την εντολή isset
slide41
Παράδειγμα

If (!(isset($_POST[“username"]) && isset($_POST["password"])))

die(“Insufficient authentication credentials. <a href=‘login.html'>go back</a>");

Το συγκεκριμένο κομμάτι κώδικα στέλνει έναν χρήστη που δεν έχει δώσει username και password σε μια σελίδα login.html

slide42
Αναγνώριση ενός χρήστη από το σύστημα
  • Το σύστημα είναι σε θέση να αναγνωρίζει τον χρήστη χωρίς να χρειάζεται να δίνει όνομα και συνθηματικό για κάθε μετάβαση από σελίδα σε σελίδα.
  • Ο χρήστης θα αναγνωρίζεται έως ότου αποχωρίσει από το σύστημα
  • Αυτό επιτυγχάνεται με τα sessions
sessions
Sessions
  • session_start(): η εντολή αυτή ξεκινά ένα καινούριο session κατά το οποίο αποδίδεται στον χρήστη ένα μοναδικό αναγνωριστικό (session id)
  • Το id αυτό μαζί με άλλες πληροφορίες (π.χ. μέγιστος χρόνος που μένει ανοιχτό ένα session, αν επιτρέπονται cookies…) αποθηκεύεται στην υπερ-καθολική μεταβλητή $_SESSION.
slide44
Πηγές
  • L. Welling, L. Thomson Ανάπτυξη Web Εφαρμογών Σε ΡΗΡ και MySQL
  • http://www.php.net/manual/en/index.php
  • http://www.phpbuilder.com/
  • http://htmlplayground.com/
  • http://www.htmlhelp.com/