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



Σχετικά έγγραφα
Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 3: Server Side Scripting I - PHP

Δρ. Δημήτριος Α. Κουτσομητρόπουλος. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Α.Τ.Ε.Ι. Πάτρας

Web Programming for Dummies

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

5 η Διάλεξη: Προγραμματισμός στην πλευρά του εξυπηρετητή: προχωρημένα θέματα PHP

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΜΕ ΧΡΗΣΗ PHP

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

4 η Διάλεξη: Προγραμματισμός στην πλευρά του εξυπηρετητή: PHP

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

Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 3: Server Side Scripting II PHP & MySQL

Εφαρµογές διαδικτύου µε PHP

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

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 8 η Διάλεξη: Προγραμματισμός στην πλευρά του εξυπηρετητή: Τεχνολογία Java Server Pages (JSP)

στην πλευρά του εξυπηρετητή

ΠΡΟΣΟΧΗ: Οι απαντήσεις πολλαπλής επιλογής µόνο πάνω στο ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ

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

Τεχνολογίες Ανάπτυξης Εφαρμογών στο WEB

PHP/MySQL και Project

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

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

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

Θέμα Πτυχιακής: ΔΙΑΔΙΚΑΣΙΑ ΠΙΣΤΟΠΟΙΗΣΗΣ ΧΡΗΣΤΩΝ ΜΕΣΩ PHP!

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

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

για την Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών»

Βασικές Έννοιες Web Εφαρμογών

Πληροφορίες για το μάθημα

ΜΕΡΟΣ ΠΡΩΤΟ: Θεωρητική Προσέγγιση...15

Δημιουργία Μηχανής Αναζήτησης με PHP Στυλιάδης Κων/νος, Υπ. Κέντρου ΠΛΗ.ΝΕ.Τ. Ν. Φλώρινας, Φλώρινα, Σεπτέμβριος 2006

6.2 Υπηρεσίες Διαδικτύου

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

Μηχανή αναζήτησης βασισμένη σε AJAX και Soundex. Πτυχιακή Εργασία

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

Α.Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

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

Η HTML χρησιμοποιεί εντολές που ονομάζονται HTML tags δίνοντας εντολές στους Web browsers για το πώς να εμφανίζουν την κάθε ιστοσελίδα.

Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών: Web εφαρμογή με χρήση LDAP και SMTP Server

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

Π ΤΥ Χ ΙΑ Κ Η ΕΡΓΑΣΙΑ

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

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

Εισαγωγή στην Ανάπτυξη Εφαρμογών Web με Χρήση της Python, του Apache και του mod_python

Εισαγωγή στο PHP. Τί είναι το PHP. Σταύρος Πολυβίου

WEB SECURITY. Διαφάνειες: Δημήτρης Καρακώστας Διονύσης Ζήνδρος. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

NetBeans και σχετικά προγράμματα. Κακαρόντζας Γεώργιος Κέντρο Αριστείας Ανοιχτού Λογισμικού ΑΠΘ 1ο Θερινό Σχολείο Κώδικα

μ μ «μ»

Ρυθμίσεις εγκατάστασης ονόματος χώρου σε πίνακα ελέγχου plesk

Βασική δομή ενός HTML εγγράφου

Συλλογή και Επεξεργασία Δεδομένων με Φόρμες

Injection Attacks. Protocol Host FilePath. field1=valuex&field2=valuey. Query String. Web server HTTP GET.

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

Java & Java EE 3o Μέρος: Διασφάλιση ασφάλειας σε εφαρμογές Java Enterprise Edition. Κακαρόντζας Γεώργιος

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

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

Χρήση της PHP και επικοινωνία με τη MySQL

Στρατηγική ανάπτυξη δικτυακού κόμβου

Φόρμες. Γενικοί κανόνες. Η ετικέτα <form>

Εισαγωγή στις ΤΠΕ ΙΙ Γιάννης Βρέλλης ΠΤΔΕ-Πανεπιστήμιο Ιωαννίνων. World Wide Web. Παγκόσμιος Ιστός

ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ PHP

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

Ευπάθειες Διαδικτυακών Εφαρμογών & Web Εξυπηρετητών

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία

Αστέριος Κατσιφοδήμος Γιώργος Νικολάου Κώστας Βρυώνη. ΕΠΛ 428 Προγραμματισμός Συστημάτων 16/04/07

Εισαγωγή στην πληροφορική

Σταύρος Καουκάκης Ευτύχιος Βαβουράκης

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ I

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

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

Προγραμματισμός διαδικτυακών εφαρμογών με PHP

Άσκηση 5 -Δηµιουργία ιστοσελίδων µε HTML µέρος 5 ο

Επιβλέπων Καθηγητής : Τσιαντής Λεωνίδας Φοιτητής : Μακρής Γεώργιος

Προγραμματισμός Διαδικτύου ΕΡΓΑΣΤΗΡΙΟ. Τμ. ΔΕ- Χειμ

Φορολογική Βιβλιοθήκη. Θανάσης Φώτης Προγραμματιστής Εφαρμογών

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

2. ΕΙΣΑΓΩΓΗ ΣΤΗΝ HTML ΓΙΩΡΓΟΣ ΓΙΑΝΝΑΚΑΚΗΣ, ΜΑΝΩΛΗΣ ΤΣΙΚΝΑΚΗΣ

PHP Functions. by George Girtsou Copyright All Rights Reserved. Με την επιφύλαξη κάθε νόμιμου δικαιώματος.

Προγραμματισμός Ιστοσελίδων (Web Design)

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

A J A X AJAX Γιάννης Αρβανιτάκης

Εισαγωγή στον Παγκόσμιο ιστό και στη γλώσσα Html. Χρ. Ηλιούδης

Cascading Style Sheets Φόρμες (Forms)

«Δημιουργία Δυναμικών Ιστοσελίδων με PHP και MySQL στο Πανελλήνιο Σχολικό Δίκτυο»

Τεχνολογίες Διαδικτύου

Social Network : Programming on FACEBOOK

Αρχιτεκτονική πελάτη-εξυπηρέτη Οι διεργασίες που εκτελούνται στο δίκτυο είναι είτε πελάτες (clients) είτε εξυπηρέτες (servers). Εξυπηρέτης: παθητικός,

ΤΕΙ ΚΑΒΑΛΑΣ Σχολή Τεχνολογικών Εφαρμογών Τμήμα Βιομηχανικής Πληροφορικής

ΤΕΙ Σερρών Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πληροφορικής & Επικοινωνιών. Επώνυμο Όνομα: Α.Μ. : Εξάμηνο : Αίθουσα

Application... 4 Java Development Kit... 4 Android SDK... 5 Android Studio... 6 Genymotion... 8 ια ο Web Panel... 10

Περιγράφει τα δεδοµένα της ιστοσελίδας και τη δοµή τους στο ίδιο αρχείο

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

Διαβάστε στο Παράρτημα Α.1 πώς θα γράψετε ένα πρόγραμμα PHP για την παροχή δεδομένων σε μορφή διαφορετική από την HTML.

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

Γαβαλάς Δαμιανός

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

Ιστορία της PHP

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Οδηγίες Ακολουθήστε τα παρακάτω βήματα. Βεβαιωθείτε ότι το πρόγραμμά σας δουλεύει σωστά σε κάθε βήμα, πριν προχωρήσετε στο επόμενο.

Transcript:

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

Εισαγωγή PHP PHP:Hypertext Preprocessor Mηχανή που συνοδεύει web servers όπως ο IIS και ο Apache Η PHP είναι γλώσσα προγραμματισμού για web εφαρμογές Apache: Διαθέσιμος σε UNIX και WINDOWS περιβάλλοντα. Παράδειγμα συστήματος: Apache 2.2.17 PHP 5.3.6 MySQL 5.5.10

Εισαγωγή Απαιτούνται Βασικές Γνώσεις για www, html και τα βασικά μέρη μιας web page Κατανόηση μιας scripting γλώσσας όπως η JavaScript Προγραμματισμός (C-like γλώσσα) Τα script αρχεία εκτελούνται στον server Τα αρχεία έχουν αντίστοιχα κατάληξη.php

Εισαγωγή Http response Apache Client (Firefox) Html content.php PHP engine Πως Δουλεύουν τα ServerSide Scripts Όταν ο Browser ζητά ένα HTML αρχείο, ο server του επιστρέφει το αρχείο αυτό ως έχει, βάσει του πρωτοκόλλου Όταν ζητηθεί ένα PHP, o server περνά το αίτημα στη μηχανή PHP Η μηχανή PHP διαβάζει τα script αρχεία γραμμή-γραμμή και εκτελεί των κώδικα Τέλος, το αρχείο επιστρέφεται στον Browser ως απλή HTML

Εισαγωγή Τι μπορούν να κάνουν τα ServerSide Scripts Να τροποποιήσουν δυναμικά το περιεχόμενο μιας σελίδας Απαντά σε ερωτήματα και δεδομένα χρηστών από φόρμες HTML Δίνουν πρόσβαση σε δεδομένα και Βάσεις Δεδομένων και επιστρέφουν αποτελέσματα στον Browser Διαμορφώνουν τη σελίδα για προσωποποιημένη χρήση

Εισαγωγή Τι μπορούν να κάνουν τα ServerSide Scripts Παρέχει ασφάλεια, γιατί ο server-side κώδικας δεν είναι εμφανής στον πελάτη- Browser Oι επιστρεφόμενες σελίδες είναι HTML (όχι απαραίτητα valid, εξαρτάται από τον χρήστη), μπορούν να τις δουν όλοι οι browsers

Server Side Scripting ASP και ASP.NET Java/ JSP Ruby Είναι καλύτερη η PHP??? religious questions

Παραδείγματα Χρήσης <html> <body> <b>.php <?php echo "Hello, World!"; </b> <?php echo " <b> Hello, World! </b>" </body> </html> Hello_world1

Παραδείγματα Χρήσης <html><body>.php <? $greeting="hello "; $num=3+2; $num=$num+1; echo $greeting.$num." people!"; </body></html> Hello_world2

Παραδείγματα Χρήσης <? $h=strftime("%h");.php print "<p>".strftime("%m/%d/%y %H:%M:%S %p")."</p>"; if ($h<12) print "Kalhmera"; else if ($h==12) print "Kalo mesimeri"; else print "Kalo apogeyma"; if

Παραδείγματα Χρήσης <?.PHP for ($i=1; $i<=6; $i=$i+1){ } print "<h".$i.">this is header ".$i."</h".$i.">"; for

Παραδείγματα Χρήσης.PHP <? $students[0]="nikos"; $students[1]="maria"; for ($i=0; $i<=1; $i=$i+1){ print $students[$i]."<br>"; }.PHP <? $students[0]="nikos"; $students[1]="maria"; print_r($students); } array

Παραδείγματα Χρήσης <? $students[0]="nikos"; $students[1]="maria"; $students[2]="mpampis"; foreach ($students as $name){ } print $name."<br>";.php Foreach

Παραδείγματα Χρήσης.PHP <h1> Footer Test Page</h1> <p> This is the first paragraph. </p> <p>2nd p</p><p>3rd p</p><p>4th p</p> <? include ("footer.htm") Include

Παραδείγματα Χρήσης Σχετικά με τα προγράμματα Web Servers Παρουσίαση των HTTP Headers PHP: Headers.php Headers.html phpinfo()

Παραδείγματα Χρήσης <html><body>.php <? $struser=$_server["http_user_agent"]; print $struser; </body></html> Server_variable

Save info Το HTTP πρωτόκολλο είναι stateless Λύσεις: Server side λύσεις: Sessions Client side λύσεις (browser) Cookies HTML5 web storage ( cookies version 2

Sessions Μεταβλητές Session Οι μεταβλητές Session χρησιμοποιούνται για τη διατήρηση πληροφορίας σε περίπτωση διαδοχικών προσβάσεων. Με αυτόν τον τρόπο είναι δυνατή η προσωποποίηση του περιεχομένου. Συνήθως η πληροφορία που αποθηκεύεται στις μεταβλητές αυτές είναι τα username & userid. Για να δημιουργηθεί μια session μεταβλητή, την αποθηκεύουμε σε ένα Session Object. Το session object χρησιμοποιείται για να αποθηκευτεί πληροφορία ή και να αλλαχτούν οι ρυθμίσεις ενός user session. Οι μεταβλητές που αποθηκεύονται στο session object κρατούν την πληροφορία για έναν χρήστη κάθε φορά και είναι διαθέσιμες σε όλες τις σελίδες μιας εφαρμογής. Τα sessions σε αντίθεση με τα cookies αποθηκεύονται στον server και όχι στον client.

Cookies VS Sessions Cookies Τα cookies έχουν μεγάλο χρόνο ζωής Δεν υπάρχει πρόβλημα με web clustres Sessions Οι χρήστες δεν θέλουν πληροφορία να αποθηκεύεται στο pc τους Ο χρήστης δεν γνωρίζει, και ούτε μπορεί να δει, τι αποθηκεύεις στον server Δεν χρειάζεται να μεταφέρεται η πληροφορία στον client Μεγαλύτερο μέγεθος από τα cookies

Φόρμα.PHP <form name="login_form" method="post" action="login.php"> Username: <input type="text" name="username"><br> Password: <input type="password" name="password"><br> <input type="submit" value="login"> </form> Login_form

Φόρμα $_GET[ ] Η πληροφορία που αποστέλλεται από τη φόρμα με τη μέθοδο GET είναι ορατή σε όλους (στο πεδίο διευθύνσεων). Θυμίζουμε ότι η GET περιορίζει την ποσότητα πληροφορίας που μπορεί να σταλεί $_POST[ ] Η πληροφορία που στέλνεται από τη φόρμα με αυτή τη μέθοδο είναι αόρατη στον πελάτη. Η μέθοδος POST δεν έχει περιορισμούς ως προς το μέγεθος της πληροφορίας.

Φόρμα Login.PHP <?php session_start(); <html> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-7"/> </head> <?php if (isset($_session['session_username'])) { echo "Έχεις κάνει ήδη login <b>".$_session['session_username']."</b>! Μια φορά αρκεί."; echo "<br><a href='logoff.php'>log off</a>"; } else { if (strlen($_post['username']) < 6 strlen($_post['password']) < 6) { echo "<h2>δεν έχετε δώσει τα σωστά δεδομένα!</h2>"; echo "<br /><a href='login_form.php'><img src='meme.png' /></a>"; } else { $_SESSION['session_username'] = $_POST['username']; echo "Welcome <b>".$_session['session_username']; echo "<br><a href='logoff.php'>log off</a>"; } }

Φόρμα.PHP <? session_start(); <html> <head> <meta http-equiv="content-type" content="text/html; charset=iso- 8859-7"/> </head> <? session_unset(); <p>ευχαριστούμε που μας επισκεφθήκατε</p> </html> Logoff

Links www.php.net www.phpbuilder.com www.w3schools.com/php www.wampserver.com http://www.apachefriends.org/en/xampp.html