Autor | Zpráva | ||
---|---|---|---|
Anonymní Profil * |
#1 · Zasláno: 31. 8. 2006, 08:14:46
Ahoj, prosím o radu, co s následujícím problémem:
tady je kousek webové stránky: </head> <body> <?php include ("./hlavicka.php");?> <hr> <?php include(ZobrazMenu());?> <hr> <?php include(ZobrazFormular());?> a před ní je tenhle kód: /////////////////////////////////////// // pokud je přihlášen uživatel, zobrazí menu, pokud není přihlášen, zobrazí přihl.formulář function ZobrazMenu(){ if($_SESSION["jmeno"]=="nepřihlášen"){ $zobrazMenu = "prihl_form.php"; } else { $zobrazMenu = "menu.php"; } return $zobrazMenu; } /////////////////////////////////////// //zobrazí v závislosti na "rozcestniku" buď přímo výsledek nebo další form na zadání parametrů function ZobrazFormular(){ switch ($_SESSION["rozcestnik"]){ case "Zobrazit vše":{ $navrat = "zobrazit_vse.php"; break; } case "Najít kontakt":{ $navrat = "najit_kontakt.php"; break; } case "Upravit kontakt":{ $navrat = "upravit_kontakt.php"; break; } case "Smazat kontakt":{ $navrat = "smazat_kontakt.php"; break; } case "Přidat kontakt":{ $navrat = "pridat_kontakt.php"; break; } } return $navrat; } /////////////////////////////////////// a hlásí mi to tuhle chybku: Warning: include() [function.include]: Failed opening '' for inclusion (include_path='.') in /DISK3/WWW/modrydrak.com/www/pokus/index.php on line 106 předem díky, pokud se v tom někdo vyzná .... |
||
Anonymní Profil * |
#2 · Zasláno: 31. 8. 2006, 08:25:15
... jo, to jsem ještě já :), zapomněl jsem napsat, že na localhostu mi to funguje a na pipni mi to nefunguje: skoukněte zde...
|
||
Anonymní Profil * |
#3 · Zasláno: 31. 8. 2006, 08:25:56
...jo, přihlašovací jméno je "karel" :D
|
||
havs Profil |
#4 · Zasláno: 31. 8. 2006, 08:56:34
ten switch by asi měl mít pod posledním case nějaký default - výchozí stránku, nebo nějaký text:
switch ($_SESSION["rozcestnik"]){ // ...... default: $navrat = "uvod.php"; break; } |
||
Karaya1 Profil * |
#5 · Zasláno: 31. 8. 2006, 09:24:00
Ještě by se hodilo říct, který řádek je číslo 106...
Už tak od pohledu se mi ale vůbec nelíbí include(ZobrazMenu()); a include(ZobrazFormular());. Aneb co nám říká manuál? »The include() statement includes and evaluates the specified file.« Z toho nám plyne, že dávat jako parametr fce include() funkci je nesmysl. |
||
Anonymní Profil * |
#6 · Zasláno: 31. 8. 2006, 11:13:53
to: havs
no, já myslím, že tam default být nemusí. to: Karaya1 jak říkám, na localhostu mi to funguje, výstup z té fce na např. řetězec "menu.php"... no dalo by se to udělat třeba takhle: <?php $neco = ZobrazMenu(); include("$neco");?> takhle by to bylo OK? |
||
Anonymní Profil * |
#7 · Zasláno: 31. 8. 2006, 16:32:09
to havs
částečná omluva: pro funkčnost té samotné funce default větev být nemusí, pro funkčnost mého skriptu ano. Totiž v případě, že ještě nebyla naplněna proměnná $rozcestnik, vracela fce prázdný řetězec a vce include() se snažila načíst soubot '' (prázdný řetězec) :D to Karaya1: include (ZobrazFormular()) bez problémů funguje. jinak děkuji všem, K. |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0