Code Igniter

     Interogarea bazei de date, prelucrarea si afisarea rezultatelor vor fi realizate in PHP folosind modelul MVC implementat in cadrul framework-ului Codeigniter. Codeigniter este un framework care permite o paleta larga de arhitecturi ale aplicatiei in timp ce necesita putine resurse comparativ cu celelalte framework-uri disponibile. Dispune de un set de biblioteci de baza care trateaza cele mai des intalnite probleme in programarea PHP dar permite incarcarea selectiva a acestora, dezvoltarea lor si crearea unor noi biblioteci necesare aplicatiei respective. Codeigniter genereaza URL-uri “curate” si prietenoase cu motoarele de cautare, exemplu: http://site-ul-meu.ro/produse/produsul-cel-mai-vandut/27 in loc de clasicul http://site-ul-meu.ro/produse.php?id_produs=47 sau http://site-ul-meu.ro/produse.php?id_produs =72b32a1f754ba1c09b3695e0cb6cde7 f .

     De asemenea Codeigniter nu impune folosirea unui motor de interpretare a template-urilor, cum fac majoritatea framework-urilor PHP, desi cuprinde si un astfel de instrument. Motivul pentru care vom evita folosirea unui motor de interpretare a template-urilor este unul cat se poate de simplu. Acestea sunt mai lente decat folosirea directa a sintaxei PHP si nu usureaza cu nimic lucrul.
     Mai jos aveti o diagrama care explica fluxul unei aplicatii construite folosind Codeigniter.

 

Code Igniter

 

     In diagrama puteti observa ca informatiile nu ajung la controller respectiv model decat dupa ce trec prin filtrele de securitate. Acest lucru reduce semnificativ riscul unui atac care sa aiba succes. Pentru optimizarea timpilor in care este afisat continutul paginii web, Codeignter incarca numai functiile necesare executarii unei anume sarcini in momentul in care acestea sunt necesare. Intregul flux al aplicatiei este controlat si prin setarea unor variabile de sesiune care au rolul de a reduce riscul utilizarii neautorizate a interfetei de administrare sau a contului de client (de exemplu: un utilizator se conecteaza la contul sau de client si uita sa se delogheze inainte sa inchida browserul. Daca o alta persoana redeschide browserul dupa un timp nu va putea utiliza fraudulos contul deoarece intre timp sesiunea sa de lucru a expirat si este redirectionat catre pagina de logare).
     Codeigniter nu este o platforma de e-commerce. Platformele de e-commerce ca OS-Commerce, Magento, Zen-Cart, PrestaShop etc. prezinta o serie de dezavantaje care pe termen lung pot afecta afacerea dumneavoastra. Dintre acestea amintim folosirea unor arhitecturi complicate care ingreuneaza semnificativ upgrade-urile viitoare, in general au o interfata de administrare "stufoasa" care face mai dificila introducerea , editarea si stergerea de produse, platformele folosesc motoare pentru interpretarea template-urilor, template-urile sunt limitate ca design in functie de posibilitatile tehnice ale platformei, etc.     

     Codeigniter este fundamental diferit de platformele de e-commerce, fiind un framework PHP, el permite dezvoltarea oricarei aplicatii fara a impune restrictii de dezvoltare. In esenta Codeigniter nu impune decat folosirea modelului arhitectural MVC, ceea ce reprezinta un avantaj din perspectiva upgrade-urilor viitoare.

     Codeigniter este dezvoltat de EllisLab Inc. si distribuit ca software opensource sub o licenta de tip Apache/BSD care permite utilizarea in scop comercial in mod gratuit. Prima varianta publica si stabila de Codeigniter a aparut in data de 26 februarie 2006 iar ultima varianta stabila, Codeigniter 1.7.2., a fost lansata in data de 11 septembrie 2009. In aceasta perioada Codeigniter a primit review-uri pozitive in mod constat fiind apreciat in special pentru viteza sa si cantitatea redusa de resurse necesare functionarii optimesi a fost adoptat de multe afaceri online apreciate de un numar mare de utilizatori, dintre care amintim:
• http://motortopia.com/
• http://nibbledish.com
• http://filepanda.com
• http://voices.com
• http://giftlistcentral.co.uk
• http://melonbytes.com
• http://eagentlive.com
• http://eufeeds.eu
• http://importgenius.com