Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: budowa serwisu internetowego
Forum PHP.pl > Forum > PHP
Kurdt
szukam w sieci jakie są główne sposoby budowy dynamicznego serwisu internetowego. interesuje mnie zasadnicza sprawa. jak przekazywać dane nawigacyjne do skryptu? to znaczy jaka akcja ma być wykonana (rejestracja, wyświetlenie tematu, edycja danych, itp.) i z jakimi parametrami (np. id artykułu).

oczywiście najbardziej oczywisty sposób to na przykład taki: index.php?action=display&id=143

ale widać w sieci, że istnieje wiele portali opartych na innej technice, na przykład: domena.pl/sklep,pl.htm

zna ktoś dobre miejsce w sieci, gdzie można znaleźć przegląd różnych rozwiązań?
necromantiq
obczaj sobie aplikacje budowane na podstawie struktury MVC ( Model View Controller)

PHP Basic MVC Framework

filmik ten ma kilka części i łatwo wprowadza w strukturę MVC, filmiki niestety po ang ;/
pozdro smile.gif
CuteOne
Jeżeli uznasz, że MVC to dla Ciebie za wysokie progi zacznij od podstaw:
mod_rewrite - tu masz jasno opisane co i jak smile.gif
ayeo
Idea jest taka:

nazwa_serwisu/nazwa_modułu/nazwa_akcji/parametr_1/parametr_2.html
example.pl/user/edit_acount/2.html (2 - id usera)

Jedna zasada w mod_rewrite przepisuje wszytsko na index.php?user&edit_account&2. Index odpala Router (coś co zadecyduje jakiej klasy powinien być moduł (kontroler konkretnie)). Wie też jaką akcję ma wywołać na tym obiekcie. Zna parametry. Moduł jest klasą (tutaj dosłownie pojemnikiem na funkcje). Akcja jest metodą modułu/kontrolera. Może (ale nie musi) przyjmować parametry. Moduł powinien dziedziczyć po jakimś abstrakcyjnym rodzicu (żeby było spójne API, helpery ($this->getUser()), ustawianie szablonów $this->setTemplate('index.tpl'); <- taki niby widok itd).

Idea jest prosta i szybko ogarniesz. wink.gif To czego szukasz nazywa się Router lub Dispatcher. Jest sporo materiałów.
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.