Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 3. diel - Smerovač (router)

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
arnost99
Člen
Avatar
Odpovedá na David Hartinger
arnost99:22.1.2017 11:42

Díky, ten si klidně taky projdu, ale v této chvíli bych raději ocenil konkrétní radu a ne odkaz na zdroj :-) .Díky

Avatar
DREAMDEV
Člen
Avatar
DREAMDEV:13.3.2017 13:39

zdravim trochu som vylepsil tento MVC system ale mam tam jednu taku zahadu. Spravil som si funkciu na zasielanie emailov ak nahodov nastane na webe nejaka chyba. Obcas mi pride mail ktory hlasi ze v routri vo funkcii parseURL je chyba:

Error message: Undefined index: path
Error location: Router.php Ln: 43

coz mi pride ako keby $_SERVER['REQU­EST_URI'] nebolo nastavene moze sa stat ze by to nejako spustali roboti a preto REQUEST_URI nie je nastavene? alebo ako sa moze stat ze REQUEST_URI nie je nastavene?

Avatar
Daniel Horák:2.6.2017 5:56

Parádní tutoriál, díky!

Avatar
Jan Bartík
Člen
Avatar
Jan Bartík:12.8.2017 10:33

Mazec seriál na pochopení OOP v praxi . Aspoň teda doufám že tomu začínám rozumět :) . Vše funguje, tk doufám že to tak pujde i dál ...

Avatar
Radovan Škvor:24.10.2017 12:40

Ahoj, chci se zeptat z jakého důvodu je u metody zpracuj parametr pole?

Avatar
Lukáš Hornych
Tvůrce
Avatar
Odpovedá na Radovan Škvor
Lukáš Hornych:24.10.2017 13:56

Když v URL adrese budeš mít víc parametrů, tak se ti všechny naskládají do toho pole a ty pak s tím můžeš pracovat dál:

adresa.cz/parameter1/parameter2/parameter3/...
$parametry[0] = "parameter1";
$parametry[1] = "parameter2";
$parametry[2] = "parameter3";
...
Avatar
Odpovedá na Lukáš Hornych
Radovan Škvor:24.10.2017 14:44

To přeci není pravda, pole v parametru metody zpracuj neobsahuje nic jiného než URL adresu.

$smerovac = new SmerovacKontroler();
$smerovac->zpracuj(array($_SERVER['REQUEST_URI']));

je to takhle

$parametry[0] = "adresa.cz/parameter1/parameter2/parameter3/...";

teprve až metoda parsujURL rozdělí URL adresu na nazev kontroleru a parametry.

Pokud bych to udělala takto

$smerovac = new SmerovacKontroler();
$smerovac->zpracuj($_SERVER['REQUEST_URI']);

tak by v routeru stačilo toto a nemusel bych předávat URL adresu zbytečně přes pole

public function zpracuj($url)
{
        $naparsovanaURL = $this->parsujURL($url);

napadlo mě ještě že se budou předávat ještě nějaké další parametry které neobsahuje URL adresa ale to jsem si v článcích zadarmo nevšiml.

Avatar
Lukáš Hornych
Tvůrce
Avatar
Odpovedá na Radovan Škvor
Lukáš Hornych:24.10.2017 14:56

To bys sice mohl posílat jako string, ale musel bys to v každém dalším kontroleru zbytečně pořád dokola parsovat. Nemyslíš, že je proto lepší to předat jako pole jen tomu prvnímu, který si to naparsuje a pošle to ostatním kontrolerům jako pole parametrů a ty pak s těmi parametry můžeš pohodlně pracovat jako s polem? ;-)

Avatar
Odpovedá na Lukáš Hornych
Radovan Škvor:24.10.2017 15:19

Teď tě vůbec nechápu.
Pokud budu metodě zpracuj předávat adresu stringem v poli nebo pouze stringem není v tom přeci rozdíl, aplikace bude fungovat pořád stejně.

Avatar
Lukáš Hornych
Tvůrce
Avatar
Odpovedá na Radovan Škvor
Lukáš Hornych:24.10.2017 15:33

No tak přece když budeš předávat adresu stringem, tak v každém novém kontroleru si ji budeš muset rozkouskovat na jednotlivé parametry. Kdežto takhle ti to udělá ten první router a potom se o to už nemusíš starat.

Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 109.