Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 8 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 12.11.08
Prihlásený: 25.10.23
Príspevky: 125
Témy: 30
Príspevok NapísalOffline : 28.12.2011 21:04

zdravim,

zacal som sa trochu zaujimat o tento sposob tvorenia webov, pokukal par tutorialov a frameworkov a nie vsetko som dostatocne pochopil. respektive som schopny uz vytvorit v podstate hocijaku web aplikaciu prostrednictvom jednoho jednoduchsieho MVC frameworku, len neviem, ci by bola spravne strukturovana podla MVC logiky.

najprv som skusal Zend Framework, ten bol ale dost zlozity a pre mna asi zbytocny, kedze nechapem poriadne ani zakladom. nasiel som si teda taky uplne elementarny framework http://www.phpro.org/tutorials/Model-Vi ... r-MVC.html , co je nieco ako zjednodusena verzia Zendu a do neho si chcem spravit jednoduche CMS. zo zaciatku staci, ked bude prepojeny z MySQL DB a schopny odtial vytiahnut nejake zakladne settingy, dalej samozrejme zobrazovat jednotlive stranky, ktore budu tiez v DB a zakomponovat do toho nejakym sposobom moznost zmenit jazyk, ktory sa ulozi userovi do cookies. nasledne si preklad predstavujem tak, ze kazdy string pred vystupom prebehne nejakou funkciou, ktora ho vyhlada v patricnom csv subore a ak najde, prelozi.

stiahol som si teda ten framework a zacal som so zobrazovanim straniek. do indexovej akcie indexoveho kontroleru som napisal kod na vytiahnutie titulku a HTML kodu z databaze pre indexovu stranku, posunul tieto hodnoty templejte a ta to vykreslila. dalej je v tom kontroleri funkcia _call(), ktora zaisti zobrazovanie dalsich straniek.

dalej chcem spravit nejake menu a uz tu som si neisty. kam ten kod pre zobrazovanie menu vlozit? mam spravit novy kontroler pre menu a potom to nejakym sposobom prepojit alebo to zakomponovat do indexoveho kontrolera? to iste pre preklad, vobec neviem kam tu funkciu mam plesknut :/

mohol by mi to niekto vysvetlit? pripadne poskytnut nejaky vhodny priklad jednoducheho webu, ktory vyuziva MVC?

dakujem


Offline

Užívateľ
Užívateľ
MVC architektura

Registrovaný: 26.12.06
Prihlásený: 16.11.19
Príspevky: 3971
Témy: 181
Bydlisko: Nitra / Bra...
Príspevok NapísalOffline : 28.12.2011 22:01

CodeIgniter si skusal?

http://codeigniter.com/user_guide/

// pridané po 48 sekundách od posledného príspevku

mas tam aj videotutorialy, popripadne na zajtra.sk je celkom poho videocast







_________________
Sorry za prelkepy
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 12.11.08
Prihlásený: 25.10.23
Príspevky: 125
Témy: 30
Príspevok Napísal autor témyOffline : 28.12.2011 23:40

tak problematika je tam predsa rovnaka. nejde mi o framework, ale proste o celkove pochopenie toho MVC.

ten kontroler, co ma na starosti zobrazovanie stranok, si myslim, ze mi funguje spravne - vypyta si udaje (titulok, HTML kod) z db pre konkretnu stranku a posle ich do viewu. zvysok templejty stranky ako header a footer je definovany v php subory na serveri. cize jedine, co je tam zatial dynamicke, je ten titulok a HTML kod danej stranky.

menu by som mohol spravit podobne, ze jednoducho v tom istom kontrolery si selectnem z databazy vsetky titulky a poslem ich v arrayi do view, kde ich nejakym cylkom zobrazim. neviem ale to, ako a kam zakomponovat do toho webu nejake ine funkcie, ako spominany preklad alebo hocico ine, co vlastne ani nepotrebuje databazu, aby to bolo stale v tom MVC kontexte.


Offline

Užívateľ
Užívateľ
MVC architektura

Registrovaný: 26.12.06
Prihlásený: 16.11.19
Príspevky: 3971
Témy: 181
Bydlisko: Nitra / Bra...
Príspevok NapísalOffline : 29.12.2011 11:28

no tazko ti poviem, kedze tvoj Framework nepoznam a netusim ako tam funguje hierarchia.

no vseobecne by to malo byt asi tak, ze kontroler a jeho metody ti vlastne kontroluju, ktora cast webu sa zobrazi. model ti komunikuje s databazou, spracuva nejake data. takez v kontrolery volas potrebne metody z modelov a dalej nejak spracujes data. a nakoniec do viewu tie data posielas, aby si ich zobrazil v prehliadaci.

takze ak chces vytvorit menu, nevytvaras dalsi kontroler, ale ho vygenerujes v nejakej casti modelu.

v CI existuju aj helpre popripadne libraries. takze ja to tam robim trochu inak, ale je to zbytocne vysvetlvoat, ekd itak nebudes mat sajnu o com hovorim.
MVC architektura

Pozri si te videotutiraly, ktore som ti spominal. ten videocast na zajtra.sk ma viac dielov a je po slovensky, takze by si z toho mal dost pochopit.

Dalej co je "original" tutorial od tvorcov CI, ukazuju tam ako za 20 minut naprogramovat blog pomocou toho FW. a je tam aj nejaky uvod do CI. z toho by si mal princip pochopit.







_________________
Sorry za prelkepy
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 12.11.08
Prihlásený: 25.10.23
Príspevky: 125
Témy: 30
Príspevok Napísal autor témyOffline : 02.01.2012 18:53

no pozeral som si tak letmo tu user guide a nejake priklady a je to v podstate +- dost podobne tomu zendu. v zende som to ale pochopil tak, ze model je naviazany iba na jednu tabulku v databaze. tu ale pozeram, ze vlastne mozem pracovat s ktoroukolvek tabulkou.

cize keby som napriklad chcel spravit indexovu stranku, ktora by vypisovala 10 najnovsich noviniek a 10 najnovsich tem vo fore, tak do indexoveho modelu by som spravil jednu metodu, ktora by vracala 10 noviniek z novinkovej tabulky a druhu z fora. v kontroleri by som to array vlastne iba posunul do viewu, kde by sa to nejakym cyklom vypisalo. tak?


Offline

Užívateľ
Užívateľ
MVC architektura

Registrovaný: 26.12.06
Prihlásený: 16.11.19
Príspevky: 3971
Témy: 181
Bydlisko: Nitra / Bra...
Príspevok NapísalOffline : 03.01.2012 18:25

no myslim ze si to pochopil spravne







_________________
Sorry za prelkepy
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 12.11.08
Prihlásený: 25.10.23
Príspevky: 125
Témy: 30
Príspevok Napísal autor témyOffline : 09.01.2012 15:49

tak diky moc, celkom ma to chytilo ;)

inak skusam si prerobit moj povodny web do tohoto frameworku a celkom mi tam nevyhovuje ta trieda Language, lebo preklady dokaze cerpat iba so suborov na serveri. kedze ale ja mam kopu prekladov dlhsich textov ulozenych v databazi, ako to riesit? zatial som to spravil tak, ze som si vytvoril novu kniznicu (do application/libraries), ktora cerpa tie preklady z DB na zaklade ID. v podstate mi vsetko funguje ako ma, len by som chcel vediet tvoj nazor, ci je to riesene spravne a ako by si to riesil ty. myslim si, ze samotny kod tej triedy mam spraveny dobre, len si nie som isty, ci je to spravne zakomponovane do toho webu - ci to nema byt riesene ako helper, alebo to zakomponovat do modelu a ci vobec je spravne, ze kniznica komunikuje s databazou. lebo pride mi, ze takto trochu straca zmysel model, kedze z modelu vyberiem iba id, to posuniem tej mojej funkcii na preklad a az ta vyberie z databaze konkretny text.

Kód:
<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Translate
{
var $user_language;
var $default_language;
var $CI;


    public function __construct(){
        $this->CI =& get_instance();
        $this->CI->load->helper('cookie');
        $this->user_language = get_cookie("lang");
        $this->default_language = $this->CI->config->item("default_language");
       
        if(!$this->user_language){
            $this->user_language = $this->default_language;
            set_cookie("lang", $this->default_language, time()+3600000);
        }
    }
   
    public function translate($item, $id){
        $query = $this->CI->db->query("SELECT translate FROM preklady WHERE item='$item' AND text_id='$id' AND language='$this->user_language'");
        if($query->num_rows() > 0){
            $translate = $query->result();
            return $translate[0]->translate;
        }
        else{
            return $this->get_default_translate($item, $id);
        }
    }
   
    private function get_default_translate($item, $id){
        $query = $this->CI->db->query("SELECT $item FROM stranky WHERE id='$id'");
        if($query->num_rows() > 0){
            $default_translate = $query->result();
            return $default_translate[0]->$item;
        }
        else{
            return "Sorry, no translate for this text - ".$item."_".$id;
        }
    }
   
   

}


Offline

Čestný člen
Čestný člen
MVC architektura

Registrovaný: 21.02.06
Prihlásený: 08.12.14
Príspevky: 5404
Témy: 30
Bydlisko: Bratislava
Príspevok NapísalOffline : 09.01.2012 16:23

Môžeš si urobiť vlastnú knižnicu, alebo rozšíriť tú, ktorá je súčasťou frameworku. Také menšie nakopnutie môžeš nájsť tu: http://codeigniter.com/wiki/Language_Class_Extended_DB







_________________
Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme.
Odpovedať na tému [ Príspevkov: 8 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. 32bit / 64bit architektura

v Intel - Integrated Electronics

3

1117

12.05.2009 14:36

Srnka0 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Architektura skrinky-vetranie

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Modifikácie, návody a projekty

39

3883

20.08.2006 22:38

Shark NX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. MVC: časť model

v PHP, ASP

2

604

26.01.2011 16:55

Flety Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Redakčný systém ( MVC )

v PHP, ASP

4

464

17.02.2015 16:48

majky358 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. MVC framework (php)

v Ostatné

6

1130

18.02.2009 18:52

p360t Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Architektura Fermi - Nvidia GF100 se představuje

v Novinky

8

868

18.01.2010 20:53

Malveon Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Jednoducha MVC aplikacia PHP

v Ponuka práce

0

410

12.12.2014 17:42

peter902 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Architektúra mobilných telefónov s dvoma rozličnými CPU

v Novinky

1

560

30.10.2011 21:40

nBXXL Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Java - Navrhovy model MEDIATOR, MVC

v Assembler, C, C++, Pascal, Java

0

300

14.04.2016 23:35

janik12333 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. C# .NET MVC Frontend programator

v Ponuka práce

2

671

10.01.2013 19:43

TJ Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. nVidia Kepler:architektura a devět GeForce 600M v noteboocíh

v Novinky

6

1512

01.04.2012 15:40

Xaltotun Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. kupa domeny pre ASP .Net mvc webstránku

v Domény

1

430

05.07.2019 11:48

ux Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra