Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
1
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών: Web εφαρμογή με χρήση LDAP και SMTP Server
Πανεπιστήμιο Πελοποννήσου Τμήμα Επιστήμης & Τεχνολογίας Τηλεπικοινωνιών Ευάγγελος Α. Κοσμάτος
2
Αρχιτεκτονική εφαρμογής
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
3
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
Σελίδα index.html Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
4
Βασικά στοιχεία σελίδας index.html (1)
Τίτλος σελίδας <title>Login Page cnms1.com</title> Τίτλος μέσα στη σελίδα <h1>cnms1.com - Login Page</h1> Δημιουργία φόρμας που θα στέλνει τα περιεχόμενά της στη σελίδα ldap.php μέσω της μεθόδου post <form action='ldap.php' method=post> Κενό κελί στη φόρμα για συμπλήρωση από τον χρήστη το username <input type ='text' name='username'></input> Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
5
Βασικά στοιχεία σελίδας index.html (2)
Κενό κελί στη φόρμα για συμπλήρωση από τον χρήστη το password <input type ='password' name='password'></input> Προσθήκη κουμπιού για την υποβολή της φόρμας <input type='submit' value='Submit'> Προσθήκη κουμπιού για τον καθαρισμό της φόρμας <input type='reset' value='Reset'> Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
6
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
Παράθεση index.html <html> <head> <title>Login Page - cnms1.com</title> </head> <body> <h1>cnms1.com - Login Page</h1> <form action='ldap.php' method=post> <table border='0' cellspacing='0' cellpadding='0' align=center> <tr> <td align='center'>Username</td> <td align='center'> <input type ='text' name='username'></input> </td> </tr> <td align='center'>Password</td> <input type ='password' name='password'></input> <tr><td></td><td> <input type='submit' value='Submit'> <input type='reset' value='Reset'> </td></tr> </table> </form> </body> </html> Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
7
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
Σελίδα ldap.php Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
8
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
LDAP schema Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
9
Βασικά στοιχεία σελίδας ldap.php (1)
$ldap['user'] = $_POST["username"]; $ldap['userpass'] = $_POST["password"]; $ldap['host'] = "localhost"; $ldap['port'] = 389; $ldap['dn'] = "uid=".$ldap['user'].",ou=people,dc=corelab"; $ldap['base'] = "dc=corelab"; Σύνδεση με τον LDAP $ldap['conn'] = ldap_connect( $ldap['host'], $ldap['port'] ) or die("Could not connect to server {$ldap['host']}" ); Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
10
Βασικά στοιχεία σελίδας ldap.php (2)
BIND στον LDAP $ldap['bind'] = ldap_bind( $ldap['conn'], $ldap['dn'], $ldap['userpass']); Αναζήτηση χρήση στον LDAP $ldap['result'] = ldap_search( $ldap['conn'], $ldap['base'], 'uid='.$ldap['user'] ); Ανάκτηση των πληροφοριών του αποτελέσματος της αναζήτησης $ldap['info'] = ldap_get_entries( $ldap['conn'], $ldap['result'] ); Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
11
Βασικά στοιχεία σελίδας ldap.php (3)
Προσθήκη πληροφοριών στη σύνοδο $_SESSION['uid'] = $ldap['info'][0]['uid'][0]; Παρουσίαση πληροφοριών π.χ. εμφάνιση του uid που είναι αποθηκευμένο στον LDAP Server uid: <?php echo $ldap['info'][0]["uid"][0] ?> Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
12
Βασικά στοιχεία σελίδας ldap.php (4)
Δημιουργία φόρμας που θα στέλνει τα περιεχόμενά της στη σελίδα contact.php μέσω της μεθόδου post <form method="post" action="contact.php"> Επιλογή παραλήπτη <select name="sendto"> <option <option Όνομα και (στοιχεία φόρμας) <input size=25 name="Name"> <input size=25 name=" "> Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
13
Βασικά στοιχεία σελίδας ldap.php (5)
Κυρίως μήνυμα (στοιχείο φόρμας) <textarea name="Message" rows=5 cols=35></textarea> Εμφάνιση μηνυμάτων λαθών echo ldap_error( $ldap['conn'] ); Τερματισμός της σύνδεσης ldap_close($ldap['conn']); Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
14
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
Παράθεση ldap.php (1) <?php // LDAP variables $ldap['user'] = $_POST["username"]; $ldap['userpass'] = $_POST["password"]; $ldap['host'] = "localhost"; $ldap['port'] = 389; $ldap['dn'] = "uid=".$ldap['user'].",ou=people,dc=corelab"; $ldap['base'] = "dc=corelab"; // connecting to ldap $ldap['conn'] = ldap_connect( $ldap['host'], $ldap['port'] ) or die("Could not connect to server {$ldap['host']}" ); ldap_set_option($ldap['conn'], LDAP_OPT_PROTOCOL_VERSION, 3); // binding to ldap $ldap['bind'] = ldap_bind( $ldap['conn'], $ldap['dn'], $ldap['userpass']); if( !$ldap['bind'] ) { echo ldap_error( $ldap['conn'] ); exit; } Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
15
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
Παράθεση ldap.php (2) // search for the user on the ldap server and return all // the user information $ldap['result'] = ldap_search( $ldap['conn'], $ldap['base'], 'uid='.$ldap['user'] ); //echo $ldap['result']; if( $ldap['result'] ) { // retrieve all the entries from the search result $ldap['info'] = ldap_get_entries( $ldap['conn'], $ldap['result'] ); } else echo ldap_error( $ldap['conn'] ); exit; if( $ldap['info'] ) $_SESSION['uid'] = $ldap['info'][0]['uid'][0]; ?> <html><body><font face=Arial size=2> <form method="post" action="contact.php"> <table align=center> <tr><td colspan=2><strong>User info:</strong> <br>uid: <?php echo $ldap['info'][0]["uid"][0] ?> Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
16
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
Παράθεση ldap.php (3) <br></strong></td></tr> <tr><td colspan=2><strong><br>Contact the UOP:</strong></td></tr> <tr><td>Recipient:</td><td><select name="sendto"> <option <option <tr><td>Name:</td><td><input size=25 name="Name"></td></tr> <tr><td> </td><td><input size=25 name=" "></td></tr> <tr><td colspan=2>Message:</td></tr> <tr><td colspan=2 align=center><textarea name="Message" rows=5 cols=35></textarea></td></tr> <tr><td colspan=2 align=center><input type=submit name="send" value="Submit"></td></tr> </table> </form> </body> </html> <?php } else { echo ldap_error( $ldap['conn'] ); exit; // close connection to ldap server ldap_close($ldap['conn']); ?> Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
17
Βασικά στοιχεία σελίδας contact.php (1)
Ανάκτηση των πληροφοριών που στάλθηκαν από τη σελίδα ldap.php $to = $_REQUEST['sendto'] ; $from = $_REQUEST[' '] ; $name = $_REQUEST['Name'] ; Header, subject του πρώτου που θα σταλεί $headers = "From: $from"; $subject = "Web Contact Data"; Header, subject του δεύτερου που θα σταλεί $headers2 = "From: $subject2 = "Thank you for contacting us"; $autoreply = "Thank you for contacting us. Somebody will get back to you as soon as possible"; Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
18
Βασικά στοιχεία σελίδας contact.php (2)
Body του πρώτου που θα σταλεί $fields = array(); $fields{"Name"} = "Name"; $fields{" "} = " "; $fields{"Message"} = "Message"; $body = "We have received the following information:\n\n"; foreach($fields as $a => $b) {$body .= sprintf("%20s: %s\n",$b,$_REQUEST[$a]); } Αποστολή των s $send = mail($to, $subject, $body, $headers); $send2 = mail($from, $subject2, $autoreply, $headers2); Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
19
Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
Παράθεση contact.php <?php $to = $_REQUEST['sendto'] ; $from = $_REQUEST[' '] ; $name = $_REQUEST['Name'] ; $headers = "From: $from"; $subject = "Web Contact Data"; $fields = array(); $fields{"Name"} = "Name"; $fields{" "} = " "; $fields{"Message"} = "Message"; $body = "We have received the following information:\n\n"; foreach($fields as $a => $b){ $body .= sprintf("%20s: %s\n",$b,$_REQUEST[$a]); } $headers2 = "From: $subject2 = "Thank you for contacting us"; $autoreply = "Thank you for contacting us. Somebody will get back to you as soon as possible"; if($from == '') {print "You have not entered an , please go back and try again";} else { if($name == '') {print "You have not entered a name, please go back and try again";} $send = mail($to, $subject, $body, $headers); $send2 = mail($from, $subject2, $autoreply, $headers2); if($send) { print "Mail Send"; } else {print "We encountered an error sending your mail, please notify } ?> Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.