Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MVC]Problem z dodaniem zmiennej w skrypcie
Forum PHP.pl > Forum > PHP > Object-oriented programming
Szymciosek
Witam,
znalazłem gotowy skrypt http://www.markisgood.com/blog/php/create-...p-mvc-framework ale nie wiem jak tu dodać zmienną parametr żeby link wyglądał np tak:
Kod
www.xx.pl/controller/action/param


Samym problemem nie jest dodanie parametru do kontrolera innego niż IndexController, wtedy po prostu mogę w linku przesłać sobie parametr, ale problem zaczyna się, gdy ładowany jest podstawowy kontroler czyli IndexController, wtedy nie mogę przesłać parametru w formie np
Kod
www.xx.pl/action/param
- controller tutaj jest podstawowy czyli index
lub

Kod
www.xx.pl/Index/action/param

lub

Kod
www.xx.pl/index/action/param


Proszę o pomoc, może chodzi o jakieś inne ustawienie w htaccess lub w samym php.
Z góry dziękuję
irmidjusz
Ten gość się na tym zna i z pewnością odpowie na Twoje pytania: Mark Randall. Pisz do niego śmiało smile.gif
Szymciosek
Napisałem do niego wczoraj wieczorem, ale zero odzewu, a chciałbym wiedzieć jak się do tego zabrać, więc proszę o czyjąś podpowiedź tutaj.
CuteOne
Mówiąc szczerze lepiej postaw stronę na Zendzie/Symfony. Ten "Lightweight PHP MVC Framework" to lekki żart smile.gif Dzisiaj masz problem z routerem, jutro będziesz miał problem z przekazywaniem zmiennych pluginów do widoku itp. itd.

Innymi słowy... szkoda na niego czasu
skowron-line
@CuteOne ma racje takie rzeczy nie mają przyszłości zazwyczaj tylko autor używa tego rozwiązania. Jeżeli chcesz coś prostego i lekkiego to ze swojej strony moge polecić
kohana lub fuelPHP (to taki lekki FW).
Szymciosek
Mi bardziej chodziło w tym przypadku o pojęcie samego wzorca MVC, brałem się za Kohana, ale słabo jest opisana, zend/symfony to mega fw, które pod moją prostą stronę na pewno się nie nadadzą.
Dlatego znalazłem jakiś taki mały (wydaje się prosty) przykład, który prawie spełniał moje oczekiwania prócz właśnie tego IndexController

Więc chyba lepiej zacząć od czegoś prostego niż brać się od razu za wielkie fw ?
CuteOne
Cytat
zend/symfony to mega fw, które pod moją prostą stronę na pewno się nie nadadzą.

I tu leży twój błąd smile.gif kobyły typu Zend czy Symfony są równie dobre dla małych stronek jak i dla dużych portali. Przy małych stronkach nie ma sensu pisać wszystkiego na nowo gdy ktoś zrobił to za nas, przy dużych portalach lepiej jest skorzystać z elementów pisanych kilka lat przez naprawdę łebskich gości niż cudować po swojemu. Dodatkowym atutem FW jest przenośność - dzisiaj napiszesz pod nim stronę "modne zegarki" a za rok, możesz z tej samej stronki stworzyć coś zupełnie innego bo szkielet aplikacji masz już gotowy

edit:
Oczywiście w celach dydaktycznych, możesz się bawić tym lekkim FW a odp. na Twoje pytanie zobacz sobie do pliku Router.php w jaki sposób odbierany jest request i co należy w nim zmienić (np. dodając pętlę od drugiego wiersza $split)
Spawnm
Szkielet mvc a nie fw.

__autoload? smile.gif

  1. foreach ($this->vars as $key => $value)
  2. {
  3. $$key = $value;
  4. }

zmień na:
  1. extract($this -> _vars);


exit(0); w autoload i template, nawet nie dał przechwytywania błędów smile.gif

Olewa standardy + masa źle napisanego kodu.
Poszukaj czegoś lepszego.

Btw. framework definiuje strukturę aplikacji oraz ogólny mechanizm jej działania, a także dostarcza zestaw komponentów i bibliotek ogólnego przeznaczenia do wykonywania określonych zadań. Ten szkielet mvc tego nie zapewnia.
Szymciosek
To może od siebie coś polecisz co ma w sobie router z przyjaznymi linkami, nie ma problemu z indexControllerem i jest oczywiście ładnie zrobione ? Ja już się przeszukałem trochę i jakoś sam już nie wiem...
CuteOne
Symfony/Symfony 2
Szymciosek
Jakoś nie mogę się przekonać do czegoś większego na razie i chciałbym zostać przy czymś mniejszym.

Może kilka pytań:
1) Czy lepiej stopniowo poznawać php czy lepiej skok do dużego fw i budowa prostej strony ?
2) Zend czy Symfony ? Które lepiej opisane ? Chociaż to pytanie to pewnie temat rzeka, bo każdy lubi coś innego...
3) Symfony czy Symfony2 ?
4) Jakieś tutoriale dla mega początkujących z symfony (najlepiej po polsku) ?
CuteOne
1. Jak ci wygodnie.. ale IMO szybciej się nauczysz pisząc niż czytając o tym jak coś można napisać
2. Symfony bez dwóch zdań
3. Zacznij od 1 jest lepiej opisana a na necie jest masa tutków
4. to od czego wszyscy zaczynają naukę Jobeet
Szymciosek
"3. Zacznij od 1 jest lepiej opisana a na necie jest masa tutków"

Jak się ma jedynka do dwójki ? Nie ma dużo zmian przez co z jedynki zapamiętam pewne rzeczy, a w dwójce będą one już zupełnie inne ?

Co sądzicie o porównaniu zend / symfony ? Zend widziałem urywkami gdzieś i wydaje mi się mega trudny, zaś znajomy znowu twierdzi, że symfony nadaje się do zastosowań biznesowych, a zend do wszystkiego...
Crozin
Cytat
Jak się ma jedynka do dwójki ? Nie ma dużo zmian przez co z jedynki zapamiętam pewne rzeczy, a w dwójce będą one już zupełnie inne ?
To są dwa zupełnie inne projekty, nie mające ze sobą kompletnie nic wspólnego. Nauka Symfony 1.4 jest w tej chwili kompletnie bezcelowa, jeżeli nie musisz utrzymywać projektów już bazujących na tym frameworku.
Cytat
Co sądzicie o porównaniu zend / symfony ? Zend widziałem urywkami gdzieś i wydaje mi się mega trudny, zaś znajomy znowu twierdzi, że symfony nadaje się do zastosowań biznesowych, a zend do wszystkiego...
Oba frameworki, zarówno w pierwszej jak i drugiej wersji nadają się do wszystkiego.
ZF2 to dopiero beta, ale jeżeli zdecydowałbyś się na ten właśnie framework nic nie stoi na przeszkodzie byś już teraz zaczął go poznawać - beta5 to może nie wersja RC, ale wątpię by jakieś większe zmiany miały się pojawić w finalnej wersji.
greycoffey
Jak Crozin wspomniał, nie ma sensu zaczynać od Symfony1. Od kilku tygodni poznaje Symfony2, dokumentacja jest bardzo dobra (zawsze pozostaje to forum oraz stackoverflow.com), jest to mój pierwszy framework. Polskie źródła do nauki Symfony2? Raczej nie ma zbyt wiele, podobno za niedługo ma wyjść książka Włodzimierza Gajdy, ale przy podstawowej znajomości angielskiego poradzisz sobie, zresztą jak myślisz bardziej poważnie o szeroko pojętej informatyce, jest to podstawa.
Szymciosek
Co Cię przekonało do Symfony i czemu nie Zend ?
greycoffey
To, że nowe Symfony2 jest już gotowe, a Zend2 jest ciągle w budowie, po prostu nie chcę się uczyć dwóch różnych wersji frameworka. Jak przeczytałem o Dependency Injection w Zendzie2, to tylko zaciemnił mi się obraz, przez dokumentację Symfony2 według mnie łatwiej da się przebrnąć i coś zrozumieć.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.