Autor | Zpráva | ||
---|---|---|---|
M4M Profil * |
#1 · Zasláno: 3. 3. 2012, 20:01:14
Ahoj. Po zavolání funkce dostanu místo html kódu jen výsledek ve tvaru 1, nic víc :-( Co dělám špatně? Děkuji
[pre] Mám funkci v php function ukaz(){ return include_once('data.php'); } includovany soubor data.php $page = false; $page .= '<h1>Nadpis</h1>'; $page .= '<p>Lorem ipsum dolor sit amet consectetuer mollis odio aliquam Mauris platea. Fusce justo condimentum ipsum Duis sem pretium dis lorem id Quisque.</p>'; $page .= '<p>Vestibulum In id natoque volutpat urna ullamcorper justo Vestibulum est vel.</p>'; zavolam funkci ukaz(); // Výsledek je 1 [pre] |
||
Radek9 Profil |
#2 · Zasláno: 3. 3. 2012, 20:14:04
M4M:
1) V souboru ukládaš do proměnné $page, se kterou potom nic neděláš. 2) Pokud soubor existuje, include vždy vrací 1. function ukaz(){ include_once "data.php"; return $page; } |
||
M4M Profil * |
#3 · Zasláno: 3. 3. 2012, 20:18:17
Radek9:
Právě, že bych tu prom. $page potřeboval vypsat až na tom místě odkud volám tu funkci, echo ukaz(); |
||
Radek9 Profil |
#4 · Zasláno: 3. 3. 2012, 20:23:06
M4M:
Přesně to se udělá… Vyzkoušel jsi vůbec ten kód? |
||
M4M Profil * |
#5 · Zasláno: 3. 3. 2012, 20:29:13
Radek9:
Ano, sorry měl jsem tam global $page; Díky moc, myslel jsem, že existuje nějaký lepší způsob... BTW, když použiji tuhle funkci a v includovanem souboru budu mít data.php tohle $page .= '<h1>Nadpis</h1>'; $page .= '<p>Lorem ipsum dolor sit amet consectetuer mollis odio aliquam Mauris platea. Fusce justo condimentum ipsum Duis sem pretium dis lorem id Quisque.</p>'; $page .= '<p>Vestibulum In id natoque volutpat urna ullamcorper justo Vestibulum est vel.</p>'; a zavolam funkci, před kterou nadefinuji tu prom. $page, php na mě řve, že:Notice: Undefined variable: page in... Ale proč? Vždyť existuje/je nainicializovaná (to je strašné slovo) :D Děkuji $page = false; echo ukaz(); |
||
Tori Profil |
#6 · Zasláno: 3. 3. 2012, 21:11:23
M4M:
„php na mě řve, že:Notice: Undefined variable: page“ Includujete skript uvnitř funkce, všechny proměnné v něm použité jsou tedy lokální (to jste se zřejmě pokoušel vyřešit tim global). Buď můžete definovat proměnnou uvnitř funkce (= před include, a místo false použít prázdný řetězec), nebo místo echo ukaz() prostě použít $page = ""; include 'data.php'; „nainicializovaná (to je strašné slovo)“ To věru je. "inicializovaná" by bohatě stačilo, "definovaná" se (vzhledem k "undefined variable") dá také použít. |
||
Časová prodleva: 13 let
|
0