NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Podstránky

V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Martin Štěpánek :17.4.2016 21:44

Ahoj,
používám normální skládání stránek jako je v tutoriálu tady na ITnetworku. Na začátku indexu, do kterého se vkládají mám klasickou funkci nactiTridu() pro načtení potřebných tříd. Toto funguje.
Jenže teď jsem začal dělat, že ten, kdo má podporu js, vkládají se mu podstránky ajaxem.
Tady přichází problém. Ve chvíli, kdy vložím podstránku ajaxem, napíše mi to, že jsem neimportoval potřebné třídy. Samozřejmě se nabízí možnost, že bych v každé podstránce všechny potřebné třídy vkládal, jenže to by bylo vcelku "náročné" a nepřijde mi to jako nejlepší možnost. Nevíte někdo, jak to udělat jinak?
Předem moc děkuji za pomoc.
M.

Odpovědět
17.4.2016 21:44
Všechno jde naprogramovat, chce to jen čas a chuť...
Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovídá na Martin Štěpánek
Jindřich Máca:18.4.2016 13:46

Ahoj, z dotazu jsem pochopil problém, ale asi úplně nechápu fungování stránky, nejspíš kvůli špatnému užití pojmů. Každopádně se pokusím odpověď, jak nejlépe svedu.

  • Pro načítání tříd v PHP se standardně nepoužívá volání funkce, ale tzv. autoloader - http://www.itnetwork.cz/…er-kontroler (možná jsi to tak myslel, ale špatně jsi se vyjádřil)
  • Dále jsem úplně nepochopil to "vkládání podstránky", ale AJAXem může vkládat co chceš, kam chceš, takže se v tom nebudu šťourat. Každopádně problém vidím v tom zjišťování podpory JS na straně serveru. I když jsou nějaké způsoby, jak to napsat, rozhodně to není 100% a dal bych si na to velký pozor.
  • No a teď k tomu problému. Mám totiž trochu dojem, že úplně nevíš, jak funguje ten AJAX požadavek. Při něm se totiž na straně serveru musí sestavit příslušná část aplikace se všemi jejími třídami. Takže pokud sis to nešťastně rozdělil do nezávislých souborů, musíš opravdu v každém z nich načítat všechny třídy, které tam používáš.

Závěr tedy je, že pokud to načítání chceš udělat nějak centralizovaně, pečlivě nastuduj ten odkaz o autoloaderu a související články, kde se píše i o routování apod. ;)

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
18.4.2016 13:46
Avatar
Martin Štěpánek :18.4.2016 14:43
  • no já přes autoloader volám funkci :-)
  • já to nezjišťuji na straně serveru, ale prostě je to udělané, tak že pokud je js vypnutý, tak to funguje normálně
  • já vím jen jsem se chtěl ujistit, jestli to nějak nejde :-)

Ale už jsem si s tím poradil - přes ajax vkládám soubor, ve kterém je autoloader a teprve v něm requiruji třídy :)

Nahoru Odpovědět
18.4.2016 14:43
Všechno jde naprogramovat, chce to jen čas a chuť...
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.