Autor | Zpráva | ||
---|---|---|---|
Senky Profil |
#1 · Zasláno: 21. 5. 2010, 22:48:48
Zdravím,
dosť dlho hľadám po nete nad nejakým riešením, no zatiaľ som neobjavil ani jeden. Mám skript, ktorého template (teda html časť) vkladám až na konci skriptu cez include(). Pred tým do premennej (alebo teda poľa) $template definujem všetko čo sa dá, aby som mal v template súbore čo najmenej php-čka. Ako vravím, na koniec skriptu pridám include "template_subor.php"; A očakával som, že to normálne pôjde, avšak premenné sa do includovaného súboru nepresunuli. Proste to odignorovali. Mám zapnuté regiter_globals v php a skúšal som jedinú rozumnú radu, ktorú som našiel na nete - dať do skriptu aj template súboru na začiatok global $template; avšak nezabralo to. Mohol by mi niekto s týmto problémom pomôcť? Ďakujem... |
||
WertriK Profil |
#2 · Zasláno: 21. 5. 2010, 22:51:21
Senky:
Vadilo by hodně kdybys obsah template_subor.php zaobalil jako funkci, naicludoval ji třeba na začátku a potom s parametrem $template zavolal? |
||
Majkl578 Profil |
#3 · Zasláno: 21. 5. 2010, 22:52:35 · Upravil/a: Majkl578
Nevím co ti na tom nefunguje. Definovaná proměnná je následně dostupná i ve scriptu, který se includuje.
Použití register_globals a global důrazně nedoporučuji. |
||
Alphard Profil |
#4 · Zasláno: 21. 5. 2010, 22:52:58
global má smysl ve funkcích.
Přenos proměnných do includovaných částí scriptu funguje, chyba bude jinde. [#2] To nějak pomůže? |
||
Senky Profil |
#5 · Zasláno: 21. 5. 2010, 22:58:08
No, vlastne ani nie, ale tak mám tam zvlášť header a footer, a celkovo template je dosť zložité, tak som to nechcel miešať so skriptom. Taktiež som skúsil relatívnu cestu k súboru, teda cez /home/www/..., ale stále to nefungovalo. No a neviem či ste to pochodili správne, ak urobím niečo takéto:
$premenna = 'a'; include 'a.php'; echo $premenna; pricom obsah a.php je: $premenna = 'b'; tak to ide, avsak ak to vymenim, teda najprv definujem premenne a potom ich chcem zobrazit cez include subor, takto: $premenna = 'a'; include 'a.php'; a obsah a.php: echo $premenna; tak vysledok bude prazdna strana, to neviem preco sa deje. Nenastavuje sa to niekde v php.ini, aby sa to prenasalo alebo nieco? |
||
mattyZEM Profil |
#6 · Zasláno: 21. 5. 2010, 23:50:22
Pokud je proměnná nad includovaným souborem tak se musí zobrazit, chyba je jinde.
|
||
Senky Profil |
#7 · Zasláno: 22. 5. 2010, 12:44:34
Už to mááám. Dakujem všetkým za pomoc. Chyba bola primitívna, až sa za ňu hanbím - v template súbore som nedal echo funckiu, proste som tam vypísal názov premennej, ale nedal som pred ňu echo...
|
||
Časová prodleva: 14 let
|
0