Beauty salon

1,398 views
1,341 views

Published on

A codeigniter web application build in order

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,398
On SlideShare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Beauty salon

  1. 1. Ηλεκτρονικό ινστιτούτο αισθητικής με χρήση Opensource MVC PHP Framework Πτυχιακή εργασία Σταυγιανουδάκης Ιωάννης Α.Μ:1226 Α.Τ.Ε.Ι Κρήτης Σχολή Τεχνολογικών εφαρμογών Τμήμα εφαρμοσμένης Πληροφορικής & πολυμέσων
  2. 2. Ιστορία ανάπτυξης ιστοσελίδων Παλαιότερα Σήμερα
  3. 3. Εξέλιξη ανάπτυξης ιστοσελίδων Ανάπτυξη με χρήση Framework
  4. 4. <ul><li>Ένα web application framework : </li></ul><ul><ul><li>Είναι ένα Framework Λογισμικού </li></ul></ul><ul><ul><li>Σχεδιάστηκε για την υποστήριξη ανάπτυξης: </li></ul></ul><ul><ul><ul><li>Δυναμικών ιστοσελίδων </li></ul></ul></ul><ul><ul><ul><li>Web εφαρμογών </li></ul></ul></ul><ul><ul><ul><li>Web υπηρεσιών </li></ul></ul></ul><ul><ul><li>Στόχος είναι η αντιμετώπιση κάποιων γενικών δραστηριοτήτων που χρησιμοποιούνται στην ανάπτυξη ιστοσελίδων . </li></ul></ul><ul><ul><ul><li>Βιβλιοθήκες για πρόσβαση στην Βάση δεδομένων ( Database Libraries) </li></ul></ul></ul><ul><ul><ul><li>Διαχείριση Session </li></ul></ul></ul><ul><ul><ul><li>Συχνά προωθούν την επαναχρησιμοποίηση κώδικα </li></ul></ul></ul><ul><ul><ul><li>Πολλά πολλά άλλα… </li></ul></ul></ul>Βασική ιδέα του Framework
  5. 5. <ul><li>Ένα Web Application Framework ανοικτού κώδικα ( php) </li></ul><ul><li>Παρέχετε ΔΩΡΕΑΝ </li></ul><ul><li>Γρήγορο </li></ul><ul><li>Είναι ένα πολύ δυνατό πακέτο. </li></ul><ul><li>Μπορεί να επεκταθεί εύκολα </li></ul><ul><li>Μηδαμινή παραμετροποίηση </li></ul><ul><li>Λεπτομερώς τεκμηριωμένο </li></ul><ul><li>Παράγει καθαρά URLs </li></ul><ul><li>MVC ( Model View Controller ) αρχιτεκτονική </li></ul><ul><li>Υποστηρίζει πολλαπλές βάσεις δεδομένων </li></ul><ul><li>Αντικειμενοστραφής συμπεριφορά ( DB Objects ) </li></ul><ul><li>Φιλική κοινότητα χρηστών </li></ul>Τι είναι το CodeIgniter ?
  6. 6. <ul><li>Active Records support </li></ul><ul><li>Autoload class </li></ul><ul><li>Επικύρωση δεδομένων </li></ul><ul><li>Ασφάλεια και XXS Filtering </li></ul><ul><li>Παρέχετε ΔΩΡΕΑΝ </li></ul><ul><li>Ε- mail classes </li></ul><ul><li>Χειρισμός εικόνων </li></ul><ul><li>Σελιδοποίηση </li></ul><ul><li>Συμπίεση </li></ul><ul><li>Διαχείριση errors </li></ul><ul><li>Helpers </li></ul>Διάγραμμα ροής του CodeIgniter Χαρακτηριστικά CodeIgniter Κάποια από τα χαρακτηριστικά του:
  7. 7. <ul><li>Διαχωρίζει τη διεπαφή χρήστη από το λειτουργικό κομμάτι . </li></ul><ul><li>Model: Συμπυκνώνει τα δεδομένα της βασικής εφαρμογής </li></ul><ul><li>View : λαμβάνει δεδομένα από το μοντέλο και τα παρουσιάζει στο χρήστη . </li></ul><ul><li>Controller : λαμβάνει και μεταφράζει εισόδους ( inputs) σε αιτήματα εισόδου σχετικά με το MODEL ή το VIEW </li></ul>Αρχιτεκτονική MVC 1/2
  8. 8. Model View Controller Αρχιτεκτονική MVC 2/2 <ul><li>View (views/showProduct.php) </li></ul><ul><li><html> </li></ul><ul><li><body> </li></ul><ul><li> <p> Συνολο προϊόντων :<?=$count?></p> </li></ul><ul><li></body> </li></ul><ul><li></html> </li></ul><ul><li>Controller (controllers/product.php) </li></ul><ul><li>function showProduct($id) { </li></ul><ul><li>$this->load->model(“product”); </li></ul><ul><li>$count = $this->product->getCount($id); </li></ul><ul><li>$data[‘count’] = $count; </li></ul><ul><li>$this->load->view(“showProduct”, $data); </li></ul><ul><li>} </li></ul><ul><li>Model (models/product.php) </li></ul><ul><li>function getCount($id) { </li></ul><ul><li>$this->db->where(“id”, $id); </li></ul><ul><li>$this->db->from(“my_product”); </li></ul><ul><li>$query = $this->db->get(); </li></ul><ul><li>return $->num_rows(); </li></ul><ul><li>} </li></ul>
  9. 9. <ul><li>Τα URL στο CodeIgniter είναι και τμηματικά ( Segment Based ). </li></ul>http://beauty-plus.gr/ main / news CodeIgniter URL Ο βασικός Controller : System/application/controllers/main.php Το όνομα της μεθόδου του controller
  10. 10. Κλάσεις ειδικού σκοπού CodeIgniter Libraries Benchmarking Database Encryption Calendaring FTP Table File Uploading Email Image Manipulation Pagination Input and Security HTML Cart Parser Session Template Unit Testing User Agent URI Validation $this->load->library(‘database’); Χρησιμοποιώντας libraries
  11. 11. <ul><li>Κάποια από τα helpers που χρησιμοποιήσαμε . </li></ul><ul><li>Form Helper </li></ul><ul><ul><li>form_open() </li></ul></ul><ul><ul><li>form_open_multipart() </li></ul></ul><ul><ul><li>form_input() </li></ul></ul><ul><ul><li>form_textarea() </li></ul></ul><ul><ul><li>form_checkbox() </li></ul></ul><ul><ul><li>form_submit() </li></ul></ul><ul><ul><li>form_close() </li></ul></ul><ul><li>URL Helper </li></ul><ul><ul><li>site_url() </li></ul></ul><ul><ul><li>base_url() </li></ul></ul><ul><ul><li>anchor() </li></ul></ul><ul><ul><li>anchor_popup() </li></ul></ul><ul><ul><li>mailto() </li></ul></ul>CodeIgniter Helpers Array Date File HTML Smiley Text URL Cookie Download Form Security String Directory E-mail Inflector XML Parser Typography $this->load->helper(‘helper_name’); $this->load->helper(array(‘form’,’url’) ); Χρησιμοποιώντας ένα Helper μέσα σε ένα Controller
  12. 12. .htaccess - Περιορισμός της πρόσβασης. - Ανακατεύθυνση σε άλλη ιστοσελίδα.  - Χειρισμός μηνυμάτων.   - Ενεργοποίηση/απενεργοποίηση διαφόρων λειτουργιών του server. Δομή Αρχείων Ινστιτούτου Αισθητικής 1/3 Beauty-plus.gr WYSIWUG editor Private Folder CSS , SCRIPTS IMAGES κ.α Core Files – Libs - System
  13. 13. Δομή Αρχείων Ινστιτούτου Αισθητικής 2/3 Models Views Controllers
  14. 14. Δομή Αρχείων Ινστιτούτου Αισθητικής 3/3 Custom Libs Helpers Config
  15. 15. Παράδειγμα 1 function institute() { $this->_prepend_title(' Το ινστιτούτο'); $this->_setOutputData('breadCrumb', array((object)array( 'title'=> ' Το ινστιτούτο', 'link'=>site_url('main/institute') ))); $data->featured = $this->products_model->getMainFeature(); $data->content= $this->db->get_where('pages',array('id'=>'1'))->row(); $this->load->view('inc/institute',$data); } <?php $ci = &get_instance(); $ci->_add_js_file('home_preview'); $ci->_add_js_file('jquery.list-rotator.min'); ?> <?php echo $content->page;?> <?php echo $content->content;?> Πίνακας pages View(inc/institute.php) Controller(main/institute.php) function getMainFeature(){ $this->db->select(&quot;*&quot;); $this->db->where('featured','1'); $this->db->where('status', '1'); $this->db->orderby(&quot;rand()&quot;); $this->db->limit(30); $query = $this->db->get('products'); if ($query->num_rows() > 0) return $query->result(); else return FALSE; Model(products_model.php)
  16. 16. Παράδειγμα 2 function pages($mode=null, $id=null, $filters=array()) { $object = ' περιεχομένου'; $crud = new Crud('pages', $object, $mode, $id); $crud->remove_mode( array('add','duplicate','delete')); $crud->set_types( array( 'content'=>'rich_text' )); $crud->create(); } Controller(back/pages.php) Libraries/Crud.php Πίνακας στην βάση To view μας
  17. 17. <ul><li>Επικοινωνία </li></ul><ul><li>Δυνατότητα αγοράς προϊόντων </li></ul><ul><li>Δυνατότητα κλεισίματος ραντεβού εύκολα </li></ul><ul><li>Πλήρες σύστημα χρήστη ( authentication authorization) </li></ul><ul><li>Ιστορικό αγορών </li></ul><ul><li>Ιστορικό υπηρεσιών </li></ul><ul><li>Περιοχή χρήστη </li></ul><ul><li>Newsletter system </li></ul><ul><li>Νέα & ανακοινώσεις </li></ul><ul><li>Galleries </li></ul>Σαν απλός επισκέπτης Δυνατότητες beauty-plus.gr 1/2
  18. 18. <ul><li>StavgianCMS </li></ul><ul><ul><li>Προβολή γενικών πληροφοριών </li></ul></ul><ul><ul><li>Στατιστικά στοιχεία </li></ul></ul><ul><ul><li>Δημιουργία Event </li></ul></ul><ul><ul><li>Πλήρης Διαχείριση: </li></ul></ul><ul><ul><ul><li>Νέων – ανακοινώσεων, παραγγελιών, Ραντεβού </li></ul></ul></ul><ul><ul><ul><li>Προϊόντων, Υπηρεσιών </li></ul></ul></ul><ul><ul><ul><li>Gallery προϊόντων, υπηρεσιών, διαφημίσεων κ.α </li></ul></ul></ul><ul><ul><ul><li>Χρηστών – Προσωπικού </li></ul></ul></ul><ul><ul><ul><li>Δικαιωμάτων </li></ul></ul></ul><ul><ul><ul><li>Περιεχόμενο σελίδων </li></ul></ul></ul><ul><ul><ul><li>Faq’s και πολλά άλλα… </li></ul></ul></ul>Δυνατότητες beauty-plus.gr 2/2 Σαν διαχειριστής
  19. 19. Τέλος Ερωτήσεις - Απαντήσεις

×