Ηλεκτρονικό ινστιτούτο Ηλεκτρονικό ινστιτούτο αισθητικής αισθητικής με χρήση με χρήση Opensource MVC PHP Opensource MVC PHP FrameworkFramework
Πτυχιακή εργασίαΣταυγιανουδάκης ΙωάννηςΑ.Μ:1226
Α.Τ.Ε.Ι ΚρήτηςΑ.Τ.Ε.Ι Κρήτης
Σχολή Τεχνολογικών εφαρμογώνΣχολή Τεχνολογικών εφαρμογώνΤμήμα εφαρμοσμένης Πληροφορικής & πολυμέσων Τμήμα εφαρμοσμένης Πληροφορικής & πολυμέσων
Ιστορία ανάπτυξης Ιστορία ανάπτυξης ιστοσελίδωνιστοσελίδων
ΠαλαιότερΠαλαιότεραα
ΣήμεραΣήμερα
Εξέλιξη ανάπτυξης Εξέλιξη ανάπτυξης ιστοσελίδωνιστοσελίδων
Ανάπτυξη με χρήση Ανάπτυξη με χρήση FrameworkFramework
Ένα web application framework :
Είναι ένα Framework ΛογισμικούΣχεδιάστηκε για την υποστήριξη ανάπτυξης:
Δυναμικών ιστοσελίδων Web εφαρμογών Web υπηρεσιών
Στόχος είναι η αντιμετώπιση κάποιων γενικών δραστηριοτήτων που χρησιμοποιούνται στην ανάπτυξη ιστοσελίδων.
Βιβλιοθήκες για πρόσβαση στην Βάση δεδομένων (Database Libraries)
Διαχείριση Session Συχνά προωθούν την επαναχρησιμοποίηση κώδικα Πολλά πολλά άλλα…
Βασική ιδέα του Βασική ιδέα του FrameworkFramework
Ένα Web Application Framework ανοικτού κώδικα (php)
Παρέχετε ΔΩΡΕΑΝ Γρήγορο Είναι ένα πολύ δυνατό πακέτο. Μπορεί να επεκταθεί εύκολα Μηδαμινή παραμετροποίηση Λεπτομερώς τεκμηριωμένο Παράγει καθαρά URLs MVC ( Model View Controller ) αρχιτεκτονική Υποστηρίζει πολλαπλές βάσεις δεδομένων Αντικειμενοστραφής συμπεριφορά (DB Objects) Φιλική κοινότητα χρηστών
Τι είναι το Τι είναι το CodeIgniter ?CodeIgniter ?
Active Records support Autoload class Επικύρωση δεδομένων Ασφάλεια και XXS Filtering Παρέχετε ΔΩΡΕΑΝ Ε-mail classes
Χειρισμός εικόνων Σελιδοποίηση Συμπίεση Διαχείριση errors Helpers
Διάγραμμα ροής του CodeIgniter
Χαρακτηριστικά Χαρακτηριστικά CodeIgniterCodeIgniter
Κάποια από τα χαρακτηριστικά του:
Διαχωρίζει τη διεπαφή χρήστη από το λειτουργικό κομμάτι . Model: Συμπυκνώνει τα δεδομένα της βασικής εφαρμογής View : λαμβάνει δεδομένα από το μοντέλο και τα παρουσιάζει στο
χρήστη. Controller : λαμβάνει και μεταφράζει εισόδους (inputs) σε
αιτήματα εισόδου σχετικά με το MODEL ή το VIEW
Αρχιτεκτονική Αρχιτεκτονική MVC MVC 1/21/2
ModelModel
ViewView
ControllerController
View (views/showProduct.php)<html><body> <p>Συνολο προϊόντων:<?=$count?></p></body></html>
Controller (controllers/product.php)function showProduct($id) {
$this->load->model(“product”);$count = $this->product-
>getCount($id);$data[‘count’] = $count;$this->load->view(“showProduct”,
$data);} Model (models/product.php)
function getCount($id) {$this->db->where(“id”,
$id);$this->db-
>from(“my_product”);$query = $this->db-
>get();return $->num_rows();
}
Αρχιτεκτονική Αρχιτεκτονική MVC MVC 2/22/2
Τα URL στο CodeIgniter είναι και τμηματικά (Segment Based).
Ο βασικός Controller:System/application/controllers/main.php
Το όνομα της μεθόδου του controller
http://beauty-plus.gr/ main / news
CodeIgniter URL CodeIgniter URL
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
CodeIgniter LibrariesCodeIgniter Libraries
Κάποια από τα 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
Form Helper form_open() form_open_multipart() form_input() form_textarea() form_checkbox() form_submit() form_close()
URL Helper site_url() base_url() anchor() anchor_popup() mailto()
CodeIgniter HelpersCodeIgniter Helpers
Beauty-plus.grBeauty-plus.gr
WYSIWUG WYSIWUG editoreditor
Private FolderPrivate Folder
CSSCSS,, SCRIPTS SCRIPTS IMAGES IMAGES κ.ακ.α
.htaccess- Περιορισμός της πρόσβασης.- Ανακατεύθυνση σε άλλη ιστοσελίδα. - Χειρισμός μηνυμάτων. - Ενεργοποίηση/απενεργοποίηση διαφόρων λειτουργιών του server.
Δομή Αρχείων Ινστιτούτου Δομή Αρχείων Ινστιτούτου ΑισθητικήςΑισθητικής 1/31/3
Core Files – Libs - Core Files – Libs - SystemSystem
Δομή Αρχείων Ινστιτούτου Δομή Αρχείων Ινστιτούτου ΑισθητικήςΑισθητικής 2/32/3
ModelsModelsViewsViews
ControllersControllers
Δομή Αρχείων Ινστιτούτου Δομή Αρχείων Ινστιτούτου ΑισθητικήςΑισθητικής 3/33/3
Custom Custom LibsLibs
HelpersHelpers ConfigConfig
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;?>
Πίνακας Πίνακας pagespages
View(inc/View(inc/institute.php)institute.php)
Controller(main/Controller(main/institute.php)institute.php)
Παράδειγμα 1Παράδειγμα 1
function getMainFeature(){
$this->db->select("*"); $this->db->where('featured','1'); $this->db->where('status', '1'); $this->db->orderby("rand()"); $this->db->limit(30); $query = $this->db->get('products'); if ($query->num_rows() > 0) return $query->result(); else return FALSE;
Model(products_model.phModel(products_model.php)p)
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 μας
Παράδειγμα 2Παράδειγμα 2
Επικοινωνία Δυνατότητα αγοράς προϊόντων Δυνατότητα κλεισίματος ραντεβού εύκολα Πλήρες σύστημα χρήστη (authentication
authorization) Ιστορικό αγορών Ιστορικό υπηρεσιών Περιοχή χρήστη Newsletter system Νέα & ανακοινώσεις Galleries
Σαν απλός Σαν απλός επισκέπτηςεπισκέπτηςΣαν απλός Σαν απλός επισκέπτηςεπισκέπτης
Δυνατότητες Δυνατότητες beauty-plus.gr beauty-plus.gr 1/21/2
StavgianCMS Προβολή γενικών πληροφοριών Στατιστικά στοιχεία Δημιουργία Event Πλήρης Διαχείριση:
Νέων – ανακοινώσεων, παραγγελιών, Ραντεβού Προϊόντων, Υπηρεσιών Gallery προϊόντων, υπηρεσιών, διαφημίσεων κ.α Χρηστών – Προσωπικού Δικαιωμάτων Περιεχόμενο σελίδων Faq’s και πολλά άλλα…
Δυνατότητες Δυνατότητες beauty-plus.gr beauty-plus.gr 2/22/2
Σαν διαχειριστήςΣαν διαχειριστήςΣαν διαχειριστήςΣαν διαχειριστής
ΤέλοςΤέλοςΕρωτήσεις - Ερωτήσεις - ΑπαντήσειςΑπαντήσεις
Top Related