Mirosław Ziobro

Mirosław Ziobro Specjalista
informatyk, UX
Experience Designer,
Grafik Ko...

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Witam, Uczę się właśnie tego frameworka. Znam PHP więcej w wersji strukturalnej niż obiektowej i potrzebuję pomocy w zrozumieniu tematyki Zend Frameworka 2. Będę wdzięczny jeśli mógł by mi ktoś pomóc.
Krzysztof N.

Krzysztof N. CEO. Aplikacje
internetowe i
mobilne. Symfony,
Zend.

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Mirosław Z.:
Witam, Uczę się właśnie tego frameworka. Znam PHP więcej w wersji strukturalnej niż obiektowej i potrzebuję pomocy w zrozumieniu tematyki Zend Frameworka 2. Będę wdzięczny jeśli mógł by mi ktoś pomóc.
A może zerkniesz i zaciekawi Cię framework Symfony 2? Skoro zaczynasz naukę i ambitnie podchodzisz do niej to może zdecydujesz się na Symfony ;)

Przy okazji zapraszam do grupy Symfony 2.x :)
Mirosław Ziobro

Mirosław Ziobro Specjalista
informatyk, UX
Experience Designer,
Grafik Ko...

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Oczywiście że mnie zaciekawi Symfony 2. Teraz piorytetem jest dla mnie Zend Framework 2 ale jak najbardziej chciałbym też poznać Symfony 2 ,teraz już zacząłem się uczyć Zenda jak na razie z kursu z Eduweb.pl i mam problem z opanowaniem routingu. Zrobiłem moduł tak jak w kursie ale jak wpisuje w widoku np.
"< a hre f = "/users /index /register "> Rejestracja </ a >" to potem w widoku Zend robi mi
"users/index/users/index/register" i wywala bład 404. Nie wiem czemu mi tak podwaja. Wstawiłem to nawet na hosting w sieci bo myśląłme że na moim localhoście coś mam źle ale to samo jest na hostingu. Kombinuję na różne sposoby w pliku module.config.php i żadnej poprawy. A według kursu który przerabiam powinno śmigać dobre.Ten post został edytowany przez Autora dnia 27.05.15 o godzinie 17:28
Krzysztof N.

Krzysztof N. CEO. Aplikacje
internetowe i
mobilne. Symfony,
Zend.

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Mirosław Z.:
Oczywiście że mnie zaciekawi Symfony 2. Teraz piorytetem jest dla mnie Zend Framework 2 ale jak najbardziej chciałbym też poznać Symfony 2 ,teraz już zacząłem się uczyć Zenda jak na razie z kursu z Eduweb.pl i mam problem z opanowaniem routingu. Zrobiłem moduł tak jak w kursie ale jak wpisuje w widoku np.
"< a hre f = "/users /index /register "> Rejestracja </
> a >" to potem w widoku Zend robi mi
"users/index/users/index/register" i wywala bład 404. Nie wiem czemu mi tak podwaja. Wstawiłem to nawet na hosting w sieci bo myśląłme że na moim localhoście coś mam źle ale to samo jest na hostingu. Kombinuję na różne sposoby w pliku module.config.php i żadnej poprawy. A według kursu który przerabiam powinno śmigać dobre.
1. Kurs na pewno dotyczy Zend Framework 2? Może dotyczy Zend Framework 1?
2. Jeśli wstawiasz tylko kod HTML
<a href="/users/index/register">
to jako wynik powinieneś otrzymać tylko kod HTML
<a href="/users/index/register">
Najwidoczniej użyłeś innego sposobu / funkcji / helpera.
Mirosław Ziobro

Mirosław Ziobro Specjalista
informatyk, UX
Experience Designer,
Grafik Ko...

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Tak mam w kursie w widoku
plik index.phtml

<div align="right"><h1>Strona modułu użytkowników!!</h1>
<p>To jest strona główna modułu użytkowników.</p>

<a href = "users /index/login ">Zaloguj < / a><br />
<a href = "users /index /register" > Rejestracja < / a>
</div>

w kursie zwraca prawidłowe podstrony widoki u mnie zwraca
http://localhost/~zend_test/public/users/index/users/i... w przypadku widoku
view/users/index/register.phtml
http://localhost/~zend_test/public/users/index/users/i... w przypadku widoku
view/users/index/register.phtml

a tak wygląda mój plik module.config.php

<?php
return array(
'controllers' => array(
'invokables' => array(
'Users\Controller\Index' => 'Users\Controller\IndexController',
),
),
'router' => array(
'routes' => array(
'users' => array(
'type' => 'Literal',
'options' => array(
// Change this to something specific to your module
'route' => '/users',
'defaults' => array(
// Change this value to reflect the namespace in which
// the controllers for your module are found
'__NAMESPACE__' => 'Users\Controller',
'controller' => 'Index',
'action' => 'index',
),
),
'may_terminate' => true,
'child_routes' => array(
// This route is a sane default when developing a module;
// as you solidify the routes for your module, however,
// you may want to remove it and replace it with more
// specific routes.
'default' => array(
'type' => 'Segment',
'options' => array(
'route' => '/[:controller[/:action]]',
'constraints' => array(
'controller' => '[a-zA-Z][a-zA-Z0-9_-]*',
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
),
'defaults' => array(
),
),
),
),
),
),
),
'view_manager' => array(
'template_path_stack' => array(
'users' => __DIR__ . '/../view',

),
),
);

Nie wiem co jest źle. Ale jak z ręki wpisuje http://localhost/~zend_test/public/users/index/users/i... to widoki ładuje mi poprawnie. Ten post został edytowany przez Autora dnia 27.05.15 o godzinie 20:44
Andrzej Prażmo

Andrzej Prażmo programista .NET,
właściciel firmy SEE
Software

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Skorzystaj z helpera baseUrl():

<a href="<?= $this->baseUrl('users/index/login') ?>">Zaloguj</a>

A tak w ogóle, jak radzi Krzysztof, lepiej zainteresuj się Symfony.
Mirosław Ziobro

Mirosław Ziobro Specjalista
informatyk, UX
Experience Designer,
Grafik Ko...

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

baseurl() też nie działa :(. Czemu nalegasz na Symfony 2? Jest łatwiejsze na początek ?Ten post został edytowany przez Autora dnia 28.05.15 o godzinie 19:57
Andrzej Prażmo

Andrzej Prażmo programista .NET,
właściciel firmy SEE
Software

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Nie tyle łatwiejsze, co nowocześniejsze i bardziej zgodne z obecnie panującymi trendami. Jest Doctrine, jest Twig, jest pełna implementacja DI i do tego composer, który bardzo ułatwia korzystanie z wszelkich dodatków 3d party. Zend chyba powoli odchodzi do lamusa. Poza tym, Symfony ma większą społeczność i więcej ludzi będzie w stanie ci pomóc, choćby tutaj. Jedyna trudność, to przebrnięcie przez te wszystkie sprawy konfiguracyjne, które są dość skomplikowane jak na początek z uwagi na to, że dokumentacja całego tego frameworku jest bardzo prymitywna i czasami trzeba się sporo naszukać. Choć Zend wcale nie jest lepszy pod tym względem.
Maciej Filipiak

Maciej Filipiak właściciel, VizMedia

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Mirosław:

http://eduweb.pl/kursy/zend/zend-framework-podstawy.html

tu znajdziesz lekarstwo na bolączki ...
W parę godzin będziesz mistrzem Zenda

Sumfony ? niby dlaczego miał by być lepszy od ZF ? :)
Dla mnie prostszy, bardziej przystępny i uniwersalny jest Zend.

To dyskusja o wyższości świąt bożego narodzenia nad świętami wielkiej nocy.
Maciej Filipiak

Maciej Filipiak właściciel, VizMedia

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Andrzej P.:
Nie tyle łatwiejsze, co nowocześniejsze i bardziej zgodne z obecnie panującymi trendami. Jest Doctrine, jest Twig, jest pełna implementacja DI i do tego composer,

Ciekawe, bo w Zend też to wszystko jest ..

korzystanie z wszelkich dodatków 3d party. Zend chyba powoli odchodzi do lamusa.

Herezje opowiadasz.
Zend jest wspierany przez twórców PHP - prędzej Symfony odejdzie do lamusa niż Zend.
Poza tym, Symfony ... dokumentacja całego tego frameworku jest bardzo prymitywna i czasami trzeba się sporo naszukać. Choć Zend wcale nie jest lepszy pod tym względem.

polemizował bym ... dokumentacja ZF2 oparta jest na przykładzie użycia - wyłożona jak małemu dziecku w stylu "poczytaj mi mamo".
Nie mogę porównać z Symfony bo nie studiowałem - być może masz wyższe wymagania :)
Maciej Filipiak

Maciej Filipiak właściciel, VizMedia

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Mirosław Z.:
w kursie zwraca prawidłowe podstrony widoki u mnie zwraca
http://localhost/~zend_test/public/users/index/users/i... w przypadku widoku
view/users/index/register.phtml
http://localhost/~zend_test/public/users/index/users/i... w przypadku widoku
view/users/index/register.phtml

Jak masz skonfigurowanego apache ? .htaccess, czy base masz ustawione na ścieżkę z tyldą ?

Spróbuj skonfigurować VirtualHost oraz rozwijanie nazw w systemie (plik hosts) tak, żeby wskazywało na katalog public z prostszego URL'a bez żadnej tyldy.

konto usunięte

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Maciej F.:
Sumfony ? niby dlaczego miał by być lepszy od ZF ? :)
Dla mnie prostszy, bardziej przystępny i uniwersalny jest Zend.

To dyskusja o wyższości świąt bożego narodzenia nad świętami wielkiej nocy.

No nie wiem. Jedni będą zachwalać ZF, inni Symfony, inni jeszcze inne frameworki. A prawda jest taka, że jak np. robisz coś dla klienta który często nie zna się na tych technologiach to go nawet nie obchodzi w czym to jest napisane, bo projekt ma po prostu spełniać swoje założenia.

Co do tych frameworków, uchodzą za najwolniejsze, zaś za najszybszy (przynajmniej z tych które znam) uchodzi Phalcon, zresztą napisany jako rozszerzenie PHP. No są jeszcze inne np. Kohana (też w testach uchodzi za szybki). Chociaż z drugiej strony o wiele łatwiej (i szybciej) jest pisać przy użyciu czegoś co ma już w standardzie wiele gotowych klas do obsługi często powtarzających się funkcjonalności. Narazie jednak nie jestem przekonany ani do Zenda, ani do Symfony i nie przekonuje mnie także ich popularność.

Dla początkujących Zend jak i Symfony może być dość trudny do przyswojenia, w szczególności jak ktoś nie miał do czynienia z MVC. Są prostsze frameworki. A zresztą co do S2, to nawet sama struktura katalogów i plików jest dość skomplikowana.Ten post został edytowany przez Autora dnia 29.05.15 o godzinie 20:10
Mirosław Ziobro

Mirosław Ziobro Specjalista
informatyk, UX
Experience Designer,
Grafik Ko...

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

mój htaccess z public zenda 2

RewriteEngine On
# The following rule tells Apache that if the requested filename
# exists, simply serve it.
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
# The following rewrites all other queries to index.php. The
# condition ensures that if you are using Apache aliases to do
# mass virtual hosting, the base path will be prepended to
# allow proper resolution of the index.php file; it will work
# in non-aliased environments as well, providing a safe, one-size
# fits all solution.
RewriteCond %{REQUEST_URI}::$1 ^(/.+)(.+)::\2$
RewriteRule ^(.*) - [E=BASE:%1]
RewriteRule ^(.*)$ %{ENV:BASE}index.php [NC,L]

Coś tu widzisz Maciej złego co mogło by powodować problemy z routingiem?

właśnie z tego kursu się uczę Zenda 2
http://eduweb.pl/kursy/zend/zend-framework-podstawy.htmlTen post został edytowany przez Autora dnia 29.05.15 o godzinie 21:01
Maciej Filipiak

Maciej Filipiak właściciel, VizMedia

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

htaccess jest ok
zastanawiam się, dlaczego przekierowuje Cię na notację z tyldą
zaglądnął bym do konfiguracji VirtualHostu i pliku hosts w systemie operacyjnym

masz rootDirectory przekierowane na public ?
Andrzej Prażmo

Andrzej Prażmo programista .NET,
właściciel firmy SEE
Software

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Maciej F.:
Andrzej P.:
Nie tyle łatwiejsze, co nowocześniejsze i bardziej zgodne z obecnie panującymi trendami. Jest Doctrine, jest Twig, jest pełna implementacja DI i do tego composer,

Ciekawe, bo w Zend też to wszystko jest ..
Nie mam zamiaru z tym polemizować, bo Zenda "miałem w ręku" jakieś 5 lat temu. AFAIR, w tamtym czasie w oficjalnej dokumentacji nie było słowa o Doctrine. Zresztą, z tego co widzę, cały czas dokumentacja opisuje dostęp do DB za pomocą TableAdapterów, co jest dość archaicznym sposobem.
Mirosław Ziobro

Mirosław Ziobro Specjalista
informatyk, UX
Experience Designer,
Grafik Ko...

Temat: Zend Framework 2 potrzebuję pomocy w ogarnięciu.

Maciej F.:
htaccess jest ok
zastanawiam się, dlaczego przekierowuje Cię na notację z tyldą
zaglądnął bym do konfiguracji VirtualHostu i pliku hosts w systemie operacyjnym

masz rootDirectory przekierowane na public ?

Też myślałem że to jest coś na moim kompie localnym ale wrzuciłem to na hosting dokładną kopię i tam na hostingu jest to samo.

http://miroslawziobro.esy.es/zendframework2/public/use.... Dlatego też myślę że to jest coś z routingiem w Zendzie.

tak wygląda mój module.config.php a tam jest przecież routing w Zendzie.

<?php
return array(
'controllers' => array(
'invokables' => array(
'Users\Controller\Index' => 'Users\Controller\IndexController',
),
),
'router' => array(
'routes' => array(
'users' => array(
'type' => 'Literal',
'options' => array(
// Change this to something specific to your module
'route' => '/users',
'defaults' => array(
// Change this value to reflect the namespace in which
// the controllers for your module are found
'__NAMESPACE__' => 'Users\Controller',
'controller' => 'Index',
'action' => 'index',
),
),
'may_terminate' => true,
'child_routes' => array(
// This route is a sane default when developing a module;
// as you solidify the routes for your module, however,
// you may want to remove it and replace it with more
// specific routes.
'default' => array(
'type' => 'Segment',
'options' => array(
'route' => '/[:controller[/:action]]',
'constraints' => array(
'controller' => '[a-zA-Z][a-zA-Z0-9_-]*',
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
),
'defaults' => array(
),
),
),
),
),
),
),
'view_manager' => array(
'template_path_stack' => array(
'users' => __DIR__ . '/../view',

),
),
);
-----------------------------------------

Wygląda tak jak w kursie z eduweb.pl bo już kilka razy przeglądałem tą część kursu i w kursie jest ok a u mnie dodaje po users/index jeszcze raz users/index i dopiero potem nazwa widoku.



Wyślij zaproszenie do