Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

ZF - Problemi i diskusija

[es] :: PHP :: ZF - Problemi i diskusija

Strane: 1 2 3 4 5 6 ... Dalje > >>

[ Pregleda: 33982 | Odgovora: 229 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-3.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima08.04.2009. u 18:49 - pre 183 meseci
Evo juče probao da uključim i ono bacanje izuzetaka na Front kontroleru, da bih dobio još malo konkretniji uvid u taj moj problem, i sad se baca ovaj izuzetak: Session must be started before any output has been sent to the browser; output started in, itd. I uporno mi govori da je output startovan na prvoj liniji tog mog kontrolera, a tamo stoji samo otvoren <?php tag! Neverovatno...

Probao sam namerno na Index kontroleru da stavim jedan prazan red ispred <?php, i stvarno, baci se taj izuzetak, ali proverao sam taj moj drugi kontroler, takvih praznina nema.

Ne znam, ovo mora da je neki bag, ili u ZF-u ili u Smarty-ju...
 
Odgovor na temu

kazil
Robert Bašić
Full time PHP dev :)
Bačka Topola - Novi Sad

Član broj: 120044
Poruke: 686
*.dynamic.stcable.net.

Jabber: robertbasic@elitesecurity.org
ICQ: 446475288
Sajt: robertbasic.com


+2 Profil

icon Re: ZF + Smarty = problem sa modulima08.04.2009. u 19:00 - pre 183 meseci
Hehe, tesko da je u ZF-u :P

Nadam se da nigde nemas closing tag ?> to zna ponekad da pravi probleme. I nadam se da ti editor nije podesen na UTF8 with BOM xD
 
Odgovor na temu

Mister_rap
SE at Viacom

Član broj: 8822
Poruke: 2540
89.216.141.*

Jabber: mister_rap@jabber.com


+21 Profil

icon Re: ZF + Smarty = problem sa modulima08.04.2009. u 19:11 - pre 183 meseci
Da nemas poziv helpera u templejtima!?
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-3.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima08.04.2009. u 19:11 - pre 183 meseci
Jbt nećete mi verovati šta je bio problem, evo upravo sam provalio... :) Sad sam malo Google-ao na temu ovog mog problema i slučajno video da je neki lik spominjao encoding. I ja aj' da proverim koji je encoding postavljen na tom mom kontroleru, i vidim UTF-8. :S I ja odma' promenim u UTF-8 without BOM, lupim reload u Firefox-u, kad ono - radi! :D

Neverovatno, nikad mi to ne bi palo napamet...
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-3.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima08.04.2009. u 19:22 - pre 183 meseci
Citat:
kazil:Nadam se da nigde nemas closing tag ?> to zna ponekad da pravi probleme. I nadam se da ti editor nije podesen na UTF8 with BOM xD

Pa ja uvek pišem ?>, tako sam navikao.

I da vidiš, taj BOM je bio problem, moraću sad da pazim gde klikćem kad set-ujem encoding. :)

Jao koji blam, ne mogu da verujem da sam zbog toga pravio dramu na ovoj temi. U svakom slučaju, hvala obojici za angažovanje u vezi ovog problema... ;)
 
Odgovor na temu

kazil
Robert Bašić
Full time PHP dev :)
Bačka Topola - Novi Sad

Član broj: 120044
Poruke: 686
*.dynamic.stcable.net.

Jabber: robertbasic@elitesecurity.org
ICQ: 446475288
Sajt: robertbasic.com


+2 Profil

icon Re: ZF + Smarty = problem sa modulima08.04.2009. u 19:28 - pre 183 meseci
Najlakse za provaliti da li imas nesto pre bilo cega jeste da pogledas u source u browser-u.

Znam da si navikao da stavljas ?>, ali Teh Manual kaze http://framework.zend.com/manu...ndard.php-file-formatting.html :P

Edit: koji editor koristis?
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-3.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima08.04.2009. u 19:41 - pre 183 meseci
Jao što volim te coding strandarde... :D Ja sam za ono što forsira XML - svaki tag mora biti zatvoren, i tačka! :P :) Šalim se, dobro, ali pazim ja na te "trailing white space-ove", odnosno, trudim da mi kod bude što uredniji, tako da ne verujem da bi mi ikad to napravilo problem.

NP++, što? :)
 
Odgovor na temu

kazil
Robert Bašić
Full time PHP dev :)
Bačka Topola - Novi Sad

Član broj: 120044
Poruke: 686
*.dynamic.stcable.net.

Jabber: robertbasic@elitesecurity.org
ICQ: 446475288
Sajt: robertbasic.com


+2 Profil

icon Re: ZF + Smarty = problem sa modulima08.04.2009. u 20:54 - pre 183 meseci
Heh mislio sam :) taj djavo je po defaultu podesen na UTF8+BOM :)
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-3.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima08.04.2009. u 21:32 - pre 183 meseci
Ne, po default-u je podešen na ANSI... A i ne piše eksplicitno UTF-8 BOM, nego samo UTF-8, a za taj koji mi koristimo baš piše "without BOM". :)
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-1.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima03.06.2009. u 10:26 - pre 181 meseci
Evo samo da kažem da sam ipak odustao od integracije Smarty-ja u Zend... :) Ali samo iz jednog jedinog razloga, a to je što jednostavno postoje određena ograničenja, koja nisam mogao da prevaziđem, a najveće je nemogućnost implementacije nečega što se zove Two-Step View. A i sad imam mogućnost korišćenja tih mnogih ugrađenih ViewHelper-a (doduše mnoge još ne znam da koristim :S). Ali svejedno, Smarty ću sigurno integrisati u ZF u situacijama kada se ne zahteva modularna aplikacija...

Sad kazil kaže: "Eto lepo sam ti ja govorio za Smarty!". :D

I da, poslušao sam savete Mister_rap-a, što se tiče onoga: "tanji" kontroler, "deblji" model, i oko izmeštanja zajedničkog koda u ActionHelper-e i FrontController plugin-ove, i svega što je vezano za izgled u custom ViewHelper-e. Kod je na taj način mnogo jasniji, "čistiji", logičniji...
 
Odgovor na temu

Mister_rap
SE at Viacom

Član broj: 8822
Poruke: 2540
*.dynamic.sbb.rs.

Jabber: mister_rap@jabber.com


+21 Profil

icon Re: ZF + Smarty = problem sa modulima03.06.2009. u 17:56 - pre 181 meseci
Citat:
... Two-Step View


Jeste da ne koristim smarty odavno ali ne vidim sto ti ovaj pattern predstavlja problem za integraciju!?
Meni kada je to potrebno u frontu, a treba mi cesto ja ne koristim nikakve helpere jer prosto mi je ovako preglednije i jednostavnije

Code:

<?php
echo $this->render('navigation.phtml');
?>
...
<?php
echo $this->render('footer.phtml');
?>
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-1.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima03.06.2009. u 21:10 - pre 181 meseci
Pa tako ja radim sa Smarty-jem, al' to mi je sad nekako glupo kad vidim šta se može sa Zend_Layout klasom... :) Sada u onim view script-ovima imam samo content, odnosno, taj sadržaj koji se menja, a ono što je fiksno je u layout-u. Smarty, koliko ja znam, ne podržava tako nešto...

A to što si ti napisao, i kako se radi u Smarty-ju, nije baš pravi Two-step View...
 
Odgovor na temu

Mister_rap
SE at Viacom

Član broj: 8822
Poruke: 2540
*.dynamic.sbb.rs.

Jabber: mister_rap@jabber.com


+21 Profil

icon Re: ZF + Smarty = problem sa modulima04.06.2009. u 00:27 - pre 181 meseci
Two-step View nije nikakva filozofija od patterna...

Kako god, znam da ima onih koji zagovaraju Zend_Layout i bio sam u pocetku poceo sa njim ali po mom misljenju ima vise nedostataka nego prednosti. Nego to i nije previse bitno.

Ako ja tebe razumem ne vidim kako to smarty ne podrzava tako nesto, sta se pod tim misli!?
Svakako da realizacija nije bas takva ali mozes da izvanredno struktuiras jer i smarty ima includove recimo...

Tako da ako je ovo neki tvoj phtlm (bez paritiala, zf css-a, head i bla bla bla):

Code:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title><?=$this->title?></title>
    <link rel="stylesheet" href="<?=$this->baseUrl()?>/main.css" type="text/css">
</head>
<body>
    <div id="main">
        <?=$this->layout()->content?>
    </div>
    <div id="sidebar">
        <?=$this->layout()->sidebar?>
    </div>
</body>
</html>


Nije mi jasno zasto to ne bi bilo moguce realizovati...
Meni je smarty-ev nedostatak sto on ne podrzava php a to mi je ujedno najveca prednost zf phtml.
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-1.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima04.06.2009. u 10:10 - pre 181 meseci
Citat:
Mister_rap: Ako ja tebe razumem ne vidim kako to smarty ne podrzava tako nesto, sta se pod tim misli!?

Pa ne, to sam rekao samo zbog toga što u Smarty-ju u svakom onom tpl fajlu moraš da include-uješ ostale delove, npr.
Code:

{include file = 'header.tpl'}

    <p>Neki tekst.</p>
    
{include file = 'footer.tpl'}

Al' dobro, to i nije tol'ko veliki problem, slažem se...

Citat:
Mister_rap: Meni je smarty-ev nedostatak sto on ne podrzava php

U kom smislu "ne podrzava php"? Ti npr. u Smarty-ju možeš da koristiš standardan PHP kod u okviru if-ova, itd., npr. ovako:
Code:

{if !in_array($foo, $bar)}
//neki kod
{/if}

//ili
{if !substr($foo, 1, 3) != 'bar'}
//neki kod
{/if}

Takođe, bilo koju PHP-ovu f-ju možeš da koristiš kao modifier, npr.:
Code:

{assign var="foo" value=$bar|floor}
{assign var="foo1" value=$bar|substr:1:3}
{assign var="foo2" value=$bar|sha1}
//itd.

Ja mislim da je to velika prednost... A naravno, tu je i onaj {php}{/php} tag za embed-ovanje PHP koda, kojeg ja inače izbegavam da koristim...
 
Odgovor na temu

Mister_rap
SE at Viacom

Član broj: 8822
Poruke: 2540
*.dynamic.sbb.rs.

Jabber: mister_rap@jabber.com


+21 Profil

icon Re: ZF + Smarty = problem sa modulima04.06.2009. u 13:25 - pre 181 meseci
Odosmo u off totalni

Elem, rekoh da odavno ne koristim smarty ali {php}{/php} bi cini mi se bila jedina solucija za neku kubasicu poput ove:

Code:

<?=$this->Instance('Graphs')->displayNegative(a,17,17)?>


Ps.
U svakom slucaju sam skapirao, sve sto si napisao
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-1.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima05.06.2009. u 19:13 - pre 181 meseci
btw Sad naleteh na jedna problem sa ZF i modulima... Naime, pre par dana sam vršio tranziciju na ZF 1.8, pa sam između ostalog menjao ceo bootstrap proces, pravio onu Bootstrap klasu, menjao index.php, strukturu direktorijuma, itd. E sad, problem se javlja što nikako ne mogu da podesim autoload-ovanje resursa u modulima... Npr. kad pokušam da kreiram Admin_Form_NewCategory, izbaci mi onu grešku "Class Admin_Form_NewCategory not found". A po onome što sam čitao u dokumentaciji, ona klasa Zend_Application_Module_Autoloader bi automatski trebala da bude instancirana kad se koristi modularna organizacija, i ona bi trebala da bude odgovorna za učitavanje resursa (modela, formi, plugin-ova, itd.) u svakom modulu.

Imam ove tri linije u konfiguracionom fajlu:
Code:
resources.frontController.setControllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.modules = ""

A evo i dela koda iz Bootstrap.php:
Code:
protected function _initAutoloaders()
{
   $autoloader = Zend_Loader_Autoloader::getInstance();
   $autoloader->setFallbackAutoloader(true);

   $default_loader = new Zend_Application_Module_Autoloader(array(
         'namespace' => '',
         'basePath'  => APPLICATION_PATH
     ));
}

Ovaj deo sa $default_loader promenljivom mi rešava problem učitavanja resursa na default modulu, ali ne i na ostalim...

Uspeo sam da prevaziđem taj problem ubacivanjem ovoga:
Code:
$admin_loader = new Zend_Application_Module_Autoloader(array(
       'namespace' => 'Admin',
       'basePath'  => APPLICATION_PATH . '/modules/admin'
));

ispred $default_loader-a, ali nemojte mi reći da to moram da radim za svaki modul?

btw Ako vam to išta znači, struktura direktorijuma mi izgleda ovako:
Code:

app
  controllers
    forms
    models
    modules
      admin
        controllers
        forms    
        layouts
        models
        views
    views
data
front-end
libs
 
Odgovor na temu

Mister_rap
SE at Viacom

Član broj: 8822
Poruke: 2540
*.dynamic.sbb.rs.

Jabber: mister_rap@jabber.com


+21 Profil

icon Re: ZF + Smarty = problem sa modulima06.06.2009. u 22:14 - pre 181 meseci
Mislim da su tu nejmspejsovi problem, a i kod je mnogo pregledniji kad svaki modul dodas posebno u bootstrapu, tako da ne vidim sto ti je problem to da iskucas za 2-10-20-50 modula koliko ti applikacija koristi!?
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-1.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima07.06.2009. u 10:31 - pre 181 meseci
Pa problem je što ja to radim za jedan CMS, pa neću znati koliko ima modula, jer će korisnik moći da ih dodaje... Pa sam mislio da može neki "one-liner" (dobro, ajde dve, tri linije ) da reši stvar. Ja sam u stvari mislio da postoji neka automatika kod toga kad koristiš modularnu organizaciju, tako nešto i piše u manual-u: "When using module bootstraps with Zend_Application, an instance of Zend_Application_Module_Autoloader will be created by default for each discrete module, allowing you to autoload module resources.". Evo ti i link do te stranice na kojoj to piše, možda ćeš ti bolje da skapiraš o čemu se radi: http://framework.zend.com/manu...oader.autoloader-resource.html. (poglavlje 30.3.2.)

Doduše, mogu ja i dinamički to da odradim, skeniram taj direktorijum sa modulima, dohvatim sve foldere u neki niz, i onda "protrčim" kroz sve njih i odradim to instanciranje Zend_Application_Module_Autoloader-a za svaki od njih. Samo tu onda treba da pazim na namespace, jer u stvari ne znam kakva je konvencija što se tiče dodele imena foldera nekom modulu... Npr. ako se taj folder zove foo_bar, kako će onda izgledati onaj prefiks? Možda FooBar... Ili da li sme da bude space-ova u tim imenima foldera... Nadam se da razumeš šta hoću da kažem...
 
Odgovor na temu

Mister_rap
SE at Viacom

Član broj: 8822
Poruke: 2540
*.dynamic.sbb.rs.

Jabber: mister_rap@jabber.com


+21 Profil

icon Re: ZF + Smarty = problem sa modulima08.06.2009. u 21:06 - pre 181 meseci
Procitah ovo, i ja kapiram (jer je to tako) da ti moras registrovati namespace prvobitno pa tek onda mozes da pocnes sa koriscenjem...
Licno za svaki modul mozes da uvedes isti namespace sto znaci da pocinju sa NP_... (recimo).

Ne znam ovo za foo_bar ali ne vidim sto bi koristio takvo imenovanje foldera...
Po mom misljenju veci je problem izboriti se kvalitetno kod takve ZF aplikacije sa layoutima i templejtima za svaki modul ali sta znam :D
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-1.sezampro.yu.



+33 Profil

icon Re: ZF + Smarty = problem sa modulima08.06.2009. u 21:42 - pre 181 meseci
Citat:
Mister_rap: Licno za svaki modul mozes da uvedes isti namespace

Da, al' to mi je nekako nepraktično rešenje, ne znam... Al' svejedno, svaki modul, što se tog autoloading-a tiče, mora da ima poseban basePath (logično), tako da ipak nema "skraćivanja" koda po tom pitanju.

Citat:
Mister_rap:Ne znam ovo za foo_bar ali ne vidim sto bi koristio takvo imenovanje foldera...

Pa ne, al' kažem ne znam kakva su uopšte pravila što se tog imenovanja tiče. Jednom sam samo negde pročitao nešto vezano za to, odnosno, za ono kako ZF mapp-ira taj prefiks na osnovu imena foldera modula, al' pojma nemam gde. Mislim da je negde u manual-u...

Citat:
Mister_rap: Po mom misljenju veci je problem izboriti se kvalitetno kod takve ZF aplikacije sa layoutima i templejtima za svaki modul ali sta znam

Pa ja sam to u ovoj mojoj aplikaciji rešio sa jednim Controller Plugin-om:
Code:

public function preDispatch(Zend_Controller_Request_Abstract $request)
{
    //echo $request->getModuleName();
    if ($request->getModuleName() == 'default') {
        $wf_settings = new Model_DbTable_WebfolioSettings();
            
        $layoutPath = BASE_PATH . '/front-end/themes/' . $wf_settings->fetchRow("name = 'theme_dir'")->__get('value');
    }
    else {
        $layoutPath = APPLICATION_PATH . '/modules/' . $request->getModuleName() . '/layouts';
    }
        
    Zend_Layout::startMvc(array(
            'layoutPath' => $layoutPath
        ));
}

Za default modul, layout-i su mi u direktorijumu sa temama (front-end/themes/), pošto sam namestio onu "foru" sa promenom teme iz admin panela, i mogućnošću da korisnik dodaje svoje teme...

I ipak se nisam odlučio za onu varijantu da imam public folder, u kome će biti i index.php, jer nekako, ovaj CMS ne pravim samo za sebe, koristiće ga (nadam se ), ili će ga bar isprobati, dosta ljudi, pa sam pomislio da možda većina ljudi neće znati da podesi da im startni folder bude taj public. Razumeš šta hoću da kažem... I onda sam ipak rešio da idem tako što će mi index.php i .htaccess biti u root-u samog projekta, o onda korisnik zna odakle se "kreće". A taj public sam zamenio za front-end, u kome se nalazi sve ono isto kao što bi bilo u public-u (img, css, js, themes, itd.), ali samo bez index i htaccess... Znam, to sad malo predstavlja bezbednosni propust, jer će neko moći da "gađa" app folder, u kome je i konfiguracioni fajl, al' šta ću, možda se na kraju ipak vratim na public...
 
Odgovor na temu

[es] :: PHP :: ZF - Problemi i diskusija

Strane: 1 2 3 4 5 6 ... Dalje > >>

[ Pregleda: 33982 | Odgovora: 229 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.