1.mini mvc, jako dobar, sve je odvojeno, nije puno code-a , cijeli code zauzima 13 kb, na disku 76 kb.
jedan primjer mvc-a sa front controllerom.
http://jream.com/lab/
dakle svaki zahtjev bio get ili post ide na front controlelr.
frontcontroller dinamički pokreće controller i metodu iz controllera.
ja koristim ovaj mvc za neke svoje projekte.
izbacio sam dosta toga iz projekta, tako da mi je samo ostalo u libs: Bootstrap, controller, database, model i view.
u database sam stavio svoju klasu za konekciju na bazu, select, update, insert.
također u config file-u se definira url(localhost/aplikacija -- kod mene je ovako, aplikacija je follder u www diru), a kad se poziva controller, autor koristi url pa ime_controllera/metoda/parametar.
ja sam probao bez url-a ispred i radi.
npr.
<form action="products/getAllProducts" method="post">
ako npr. treba napraviti paging, link na svaku stranicu se može staviti kao:
products/filterProducts/page
također probao sam pozvati neki controller preko jquery-a na isti način i radi.
za prikaz view-a ima dva načina, prvi način po defaultu je da uključi i header i footer, a drugi način kad se stavi false, ne uključuje header i footer.
2drugi način - ručno mvc
kako bi ručno izgledao mvc:
npr. imamo neki view i neku akciju : post ili get,
ako je post, opet možemo staviti parametre u link
npr:
<form action="products.php?metoda=filterProducts¶metar=products_name" method="post">
u controlleru product imamo klasu koja sadrži određene metode, a svaka metoda poziva određenu metodu iz modela, napravimo include modela , a u konstrukturu controllera instancira se klasa modela.
a ispod klase u controlleru dohvaćamo get , instanciramo klasu controllera i pozivamo metoda koju smo učitali sa get.
u našem slučaju filterProducts, učitamo parametar i parametar predamo metodi controllera.
kad su npr. upisivanje ili traženje podataka u pitanju , koristimo ovo iznad ili podatke iz posta, kad prikazujemo podatke koristimo npr. ovo ispod.
kad prikazujemo view, ako je prikaz, instanciramo kalsu controllera i pozove određenu metodu.
ako radimo ručno, moramo još napraviti rewrite url-a.
primjer mvc-a bez frameworka:
mvc bez frameworka
ja ću definitivno koristiti ovaj mini mvc framework jer mi je dovoljan.