Autor Zpráva
Tomsaer
Profil
Zdravím,

mám pár dotazů.

Mám úvodní stránku rozdělenou pomoci DIVů na více části, a přes příkaz INCLUDE (PHP) vkládím obsah. Nic zvláštního v levém menu mám odkazy a v pravo se mi objevuje obsah.

1, Musí být úvdoní stránka (index) s příponou .php, abych mohl použít v odkazech příkaz INCLUDE?
2, Spolupracuje PHP s HTML tagy? Tz. bere je na vědomí?

Děkuji za odpověď. S pozdravem Tomáš Sládek
Honza Hučín
Profil
1. Ano. Aby byla stránka ještě před odesláním prohnána preprocesorem, musí se rozpoznat, že se to má udělat, což se pozná podle přípony. Ledaže by byl server nějak nestandardně nastavený.

2. PHP nemá s HTML tagy co do činění. PHP rozumí příkazům ve svém jazyce a HTML naopak generuje (jako text stránky, který se pošle prohlížeči). Na stránce .php se ovšem mohou kombinovat příkazy v jazyce PHP a HTML tagy, a to tak, že část stránky, kterou má zpracovat PHP, se uvede v <? ?> Co je mimo to, je preprocesorem ignorováno a předáno na výstup tak, jak je.

Tedy například:
<body>
<p>Dnes je <? echo $den ?>.</p>
</body>

PHP si všímne jen příkazu echo $den (vypíše v daném místě hodnotu proměnné $den), ostatní předá tak, jak je.
Tomsaer
Profil
1. Ano. Aby byla stránka ještě před odesláním prohnána preprocesorem, musí se rozpoznat, že se to má udělat, což se pozná podle přípony. Ledaže by byl server nějak nestandardně nastavený.

2. PHP nemá s HTML tagy co do činění. PHP rozumí příkazům ve svém jazyce a HTML naopak generuje (jako text stránky, který se pošle prohlížeči). Na stránce .php se ovšem mohou kombinovat příkazy v jazyce PHP a HTML tagy, a to tak, že část stránky, kterou má zpracovat PHP, se uvede v <? ?> Co je mimo to, je preprocesorem ignorováno a předáno na výstup tak, jak je.

Tedy například:
<body>
<p>Dnes je <? echo $den ?>.</p>
</body>

PHP si všímne jen příkazu echo $den (vypíše v daném místě hodnotu proměnné $den), ostatní předá tak, jak je.


Pokud jsem to teda dobře pochopil, musím svou úvodní stránku dát jako index.php a v ní ale můžu mít standartní hlavičku(meta tagy, atd...) + obsah.

Potom teda ještě jedna věc. Když pomoci příkazu Include vkládám nějakou další stránku, tak ta již meta tagy obsahovat nemusí? I když vkládám např. obsah.html?
Spikee
Profil
Meta tagy tam už nemusia byť.
Honza Hučín
Profil
Ano, pochopil jsi to správně. Dokonce můžeš mít index.php v čistém HTML a bude to fungovat, protože preprocesor to jen předá ze vstupu na výstup.
Includem se dá vkládat jak PHP, tak i čisté HTML (a samozřejmě jejich směs). Na názvu už nezáleží. Takže kdybys vkládal znovu <body>, je to špatně. Ale můžeš mít třeba jednu meta hlavičku v index.php a jinou ve vkládaném souboru.
Leo
Profil
Mam pocit, ze si include pletete s ramy nebo iframe, ale to je neco uplne jinyho. Pres include muzete vlozit jakoukoliv cast kodu, at uz PHP nebo ciste (X)HTML, a celek se jako jedna stranka posle do prohlizece. Leo
Anonymní
Profil *
Ahoj,

zajímal by mne opačný postup, mám stránku nastylovanou, mám nějaké menu a pomocí hypertextového odkazu chci vložit kus kódu php (třeba čistě jen textu) do předem "oídečkovaného"divu.

Jak volat stránku php s parametrem?



<A href="index.php?(teď nevím co dál)">Vlož kus textu do divu na levé straně stránky</A>






Díky
Leo
Profil
To nejde, cilem odkazu muze byt jen okno, ramec (frame) nebo iframe, Leo
Anonymní
Profil *
Měl jsem na mysli "fígle", které Yuhu popisuje:

Konkrétní umístění menu na stránce potom zařídí CSS styly, nejlépe přes id menicko pomocí float (vzhled není předmětem tohoto textu).

Přitom předpokládám tři věci:

na serveru mi musí běžet PHP
každá obsahová stránka musí končit příponou .php (která bude pak i v URL adrese)
soubor sloupecek.php leží v tomtéž adresáři jako obsahová stránka (tentýž adresář je symbolizován zápisem ./). Pokud neleží, tak je potřeba cestu přepsat.
Tento příklad, jak jsem jej naznačil, má sloužit pouze pro ilustraci postupu. V praxi se používá různých dalších fíglů. Například se menu většinou nevkládá php značkou do všech obsahových stránek, ale naopak se všechny obsahové stránky vkládají (includují) do jednoho souboru, který se volá parametrem (např. adresa pak vypadá: index.php?stranka=kontakt). To už přesahuje záměr této stránky.
Leo
Profil
Mate porad gulas v tom, co se kde a v jakym poradi provadi - PHP bezi na serveru, kde vytvori html stranku a tu posle do prohlizece. Takze odkaz do divu neresi, ale muze resit odkaz na skript, ktery ten div vytvori. Leo
Anonymní
Profil *
Jo, dík dělal jsem delší dobu ve VB a tak mi nějak pořád chybí procedury volané událostími ovládači, Innertext apod. Nějak zapomínám, že je třeba mít pokaždé 2 stránky.
Yuhů
Profil
jsme mimo téma, takže je mi líto, zavírám.

Ale věřte nevěřte, toto je naprosto nejčastější dotaz, co mi chodí. Možná je to v součtu polovina všech dotazů. Jak udělat odkaz, který míří do buňky tabulky. Jak mám dostatečně jasně vysvětlit, že to nejde udělat?
Toto téma je uzamčeno. Odpověď nelze zaslat.