![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 20.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
napisałem klasę do ładowania modeli, wywoływanie następuje w sposób np. nazwa.pl/article/showarticle/id, chciałbym się dowiedzieć w jaki sposób stosować polskie url'e np. nazwa.pl/artykul/id Zastanawiam się czy np:
Czy to ma jakiś sens, czy jakoś inaczej do tego podejść? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 859 Pomógł: 177 Dołączył: 29.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Mało się na tym znam, ja zrobiłem to tak: https://github.com/aras123/MiniFramework/bl...ork/Request.php
I później mogę w obie strony generować ten ładne url'e. czyli np: Wygeneruje mi to co zdeklarowałem w w config router. Tak ja to zrobiłem i może coś Ci się przyda. Pozdrawiam |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 3 Dołączył: 23.07.2009 Ostrzeżenie: (10%) ![]() ![]() |
Na youtube jest super tutorial MVC wpisz w wyszukiwarkę :"PHP: Create Your Own MVC"
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Na ile ten tutorial jest poprawny?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Na ile ten tutorial jest poprawny? Na jakieś 5% ... nazwy plików index i htaccess się zgadzają ;) Zabrakło tam sformułowania iż link http://domena/kontroler/metoda/wartość jest w celach szkoleniowych, nikt na środowisku produkcyjnym nie używa odpalania kontrolerów w takiej formie. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
ale czy czasem Symfony2 i ZF nie używają tego typu linków? Czy coś nie załapałem?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Tu nie chodzi o to, kto czego używa, tylko jak z tego korzystać. Nie raz spotyka się aplikacje, pisane przez ludzi którzy zaczynają. Uznali, że skoro S2, ZF czy inne FW używają tego typu routera, to jest to bezpieczne i poprawne, tym czasem to niekiedy luka bezpieczeństwa, ponieważ nie używają przy tym chociażby ACL czy sprawdzania danych.
Skoro przez http://domena/kontroler/metoda/wartość możesz odpalić dowolny kontroler i każdą metodę z wartością, to jest to tak samo głupie jak wczytywanie plików po nazwie przez GET, taki mechanizm dobry jest przy pisaniu aplikacji, to zwyczajnie wygodne dla programisty. Jestem zwolennikiem routera opartego o pregi, dzięki temu jeden (dowolny i nieszablonowy) link jest przypisany do jednego kontrolera, bez możliwości manipulacji. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Tak naprawdę routing kontroler/metoda to analogia do strukturalnej aplikacji i utworzenia pliku o nazwie kontroler.php i w nim ewentualnie jakiś switch/case.
Tu i tu plik może zostać bezpośrednio wywołany z dowolnymi argumentami i metody zabezpieczenia tego są takie same. Na korzyć MVC - jest możliwość zabezpieczenia tego w przejrzystszy sposób, można skorzystać z konstruktora (globalny ACL), można metody zrobić prywatnymi tym samym zablokować możliwość bezpośredniego wywołania i ogólnie obudować to obiektowo. Jeżeli wykonujemy jakieś operacje CRUD na obiektach z własnością to pierwszym krokiem powinno być sprawdzenie praw dostępu - ale tak jak wyżej - nie ma tu większej różnicy w podejściu MVC czy strukturalnym - logika jest taka sama. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 3 Dołączył: 14.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
OK, czyli logika MVC została zachowana. Ale jak zrobię routing podobnie, ale z lepszym zabezpieczeniem będzie dobrze czy raczej. Pomyśleć nad własnym rozwiązaniem, lub inną budową linków np. kontroler,metoda,id,jakis-tekst.html
Proszę się nie dziwić moimi pytaniami, ale chciałbym MVC ugryść trochę po od siebie a nie poprzez gotowy framework. |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
OK, czyli logika MVC została zachowana. Ale jak zrobię routing podobnie, ale z lepszym zabezpieczeniem będzie dobrze czy raczej. Pomyśleć nad własnym rozwiązaniem, lub inną budową linków np. kontroler,metoda,id,jakis-tekst.html Można i tak, ale po co Ci w linku w ogóle jakieś informacje o kontrolerze czy metodzie ? link: http://domena/pokazwpis/9331
edycja: I to zbuduje
Ten post edytował !*! 26.10.2013, 16:20:15 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 14:40 |