Dynamické vkládání souborů a dat na straně serveru
Na Interval.cz kdysi dávno vyšel článek o použití directivy #include, která umožňuje skládání výsledného kódu z jednotlivých fragmentů. Dnes se dozvíte jak vkládat jednotlivé fragmenty HTML kódu dynamicky.
Pro lepší pochopení doporučujeme prostudovat předchozí článek.
|
Mnozí z vás se jistě hned zeptají: „proč tento kód nebude fungovat vždyť vypadá bezchyby ?“ Důvod je zcela prozaický. Server při analýze skriptu pozná, že kód obsahuje directivy #include a provede to, že nejprve „poskládá“ kód z jednotlivých fragmentů a teprve takto celistvý kód předá k provedení. Z toho vyplývá, že veškerá jména souborů pro includování je třeba znát již při psaní kódu.
Jak ale vyřešit potřebu dynamicky vkládat různé fragmenty kódu ? Pokud se bude jednat o „čistý“ HTML kód – tedy kód bez skriptů na straně serveru je tu možnost provádět dynamické vkládání textu pomocí Scripting.FileSystemObject.
|
Myslím si, že k tento kód není nutno již dále rozebírat jelikož se jedná o standardní práci s textovými soubory, která byla popisována v článku Práce se soubory pomocí ASP II.
Co si ale počít pokud chceme takto dynamicky vkládat fragmenty kódu, který obsahuje kód, který se má provést na straně serveru? Pokud váš web běží na IIS4 a nižším mám špatnou správu. Nejde to nijak a na následujících řádcích si jen můžete přečíst o tom co budete moci používat pokud váš web poběží na IIS5.
Na IIS5 je k dispozici ASP 3.0 jehož objekt server má metodu Execute. Při vyvolání této metody je pozastaveno zpracování stránky a řízení je předáno stránce, která je uvedena v parametru metody. Aktuální prostředí klienta (session apod.) je přístupné i ve druhé stránce. Po dokončen interpretace druhé stránky je řízení předáno zpět a vykonávání pokračuje na následujícím řádku za místem kde byla metoda Execute volána.
Pro úplnost ještě syntaxi
|
URL je adresa stránky, která se má vykonat. URL musí relativní vzhledem k ASP které volání provádí. Absolutní adresace není povolena.
Nakonec se vrátím k nesmyslnému kódu kterým jsem dnes vše začal a předvedu jak tento kód drobně upravit do funkčního tvaru. Úprava je jednoduchá stačí pouze místo directivy #include použít metodu Server.Execute.
|
Výše uvedený kód se Server.execute vám bude chodit pouze pokud provozujete web na IIS5. Pokud vám veb běží pod IIS4 ani se to nesnažte zkoušet.
V ASP 3.0 je spousta novinek, ktere usnadní práci a často umožní i to co dříve nebylo možné. ASP 3.0 je v Internet Information Serveru 5.0., který je distribuován jako součást Windows 2000. Bohužel IIS5 není k dispozici pro starší systémy.
Od dynamického inludování souborů je už jenom krůček k používání šablon nebo ke „cacheování“ stránek generovaných z databáze. Pokud bude zájem o články na téma šablony či „cacheování“ napište mi prosím do diskuze a nebo na můj email
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Regulace digitálních služeb: Co přináší nové nařízení DSA?
20. února 2024 -
Souboj na trhu s CPU pro servery: AMD vs. Intel
8. prosince 2023 -
Co je to VRAM a jak ji navýšit bez drahého upgradu?
20. srpna 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024
Nejnovější
-
Jak rozšířit úložiště Macu za pětinovou cenu?
16. prosince 2024 -
Nové trendy v doménách pro osobní projekty – DIY, LIVING a LIFESTYLE
9. prosince 2024 -
Jak chránit webové stránky před Web/AI Scrapingem
27. listopadu 2024 -
Jaký monitor je nejlepší k novému Macu Mini?
25. listopadu 2024
Porupka David
Zář 19, 2009 v 8:34Co to ma znamenat? Mislel sem, ze tu bude neco co mi pomuze dat si na stranku soubor ke stazeni!! Muzete to sem prosim pridat!! :(
Ondřej Kopp
Zář 19, 2009 v 16:36Článek má znamenat Dynamické vkládání souborů a dat na straně serveru. Pokud jste narozdíl od nás všech ostatních co myslíme prováděl činnost, kterou nazýváte „mislel“ vůbec se nedivím, že jste zde nenašel to co jste hledal. Pokud by jste totiž myslel tak požadovanou informaci určitě na Interval.cz (a nejen zde) najdete.