Autor | Zpráva | ||
---|---|---|---|
Freedas Profil |
#1 · Zasláno: 15. 4. 2005, 19:29:01
Nevíte, co by mohlo být za problém k této hlášce?
Notice: Undefined variable: clanek in D:\WebServer\www.janik-motorsport.com\janik\home.php on line 17 na strance www.janik-motorsport.com/janik. Diky |
||
Marty Profil |
#2 · Zasláno: 15. 4. 2005, 19:32:01
Tipuju to na nepovolenou hodnotu, možná nedefinovanou proměnou.
Zkopíruj sem kousek zdrojáku okolo problémového místa, pak budeme moudřejší. |
||
FantomX1 Profil |
#3 · Zasláno: 15. 4. 2005, 20:16:07
Ja osobne si myslim ze davas vypisat nejaku premennu ktora nie je definovana. Napriklad mas nastavenu premennu $sub=10 a das omylom vypisat echo $sup; potom prave mozno preto ti to nejde, lebo mas chybu v mene premennej, ale je to len domienka. Mozno by sme ti vedeli pomoct viac keby si sem dal kusok skriptu. Samozrejme ten bezpecny.
|
||
Freedas Profil |
#4 · Zasláno: 16. 4. 2005, 08:52:32
<? include("conndb.php"); ?> |
||
Freedas Profil |
#5 · Zasláno: 16. 4. 2005, 08:53:11
prave na jinych strankach mi to chodi, to je to.
|
||
FantomX1 Profil |
#6 · Zasláno: 16. 4. 2005, 12:00:35
Tuto podmienku zmen
if ($page==""): $page="home"; endif; Myslim si ze preto ti to nemusi ist, pretoze ti tam nastava iny stav a nie stav ze $page=="". Stav $page=="" nastava len vtedy ked premenna $page ma hodnotu ale prazdneho retazca. Ale vtedy ma tiez urcitu premennu. Lenze ked ty zavolas skrip 1. krat, premenna $page este ani o sebe nevie ze existuje. A preto sa nevykona if ($page=="") pretoze $page sa vtedy v skutocnosti rovna $page==null-cize absolutne nicomu. Ja viem ze je to mozno na prve pocutie neuveritelne, ale aj prazdy retazec je urcita hodnota. Preto pouzi namiesto svojej tuto podmienku if (!is_set($page)): $page="home"; endif; Teda ak premenna $page este nema ziadnu hodnotu, cize nie je zinicializovana (to znamena ze uzivatel prave prisiel na hlavnu stranku a neklikol este na ziadny link), tak v tom pripade nadobudne hodnotu "home". |
||
Freedas Profil |
#7 · Zasláno: 16. 4. 2005, 14:08:12
to FantomX1: A nic
<? include("conndb.php"); ?> Fatal error: Call to undefined function: is_set() in D:\WebServer\www.janik-motorsport.com\janik\index.php on line 5 |
||
Marty Profil |
#8 · Zasláno: 16. 4. 2005, 14:15:39
Nepíše se ta funkce náhodou isset() ? Tedy pokud myslíš tu na zjištění deklarace proměnné.
Nebo to zkus obzávorkovat: if (!(is_set($page))): |
||
Dero Profil |
#9 · Zasláno: 16. 4. 2005, 15:58:38
isset() je správně
|
||
FantomX1 Profil |
#10 · Zasláno: 16. 4. 2005, 19:48:54
Ano, mas pravdu. Urobil som tam mensiu ale za to fatalnu chybu, neskor som si to uvedomil ale ponahlal som sa hrat futbal a mal som aj inu pracu.
Toto je vec, ktoru si dost casto mylim, pretoze podobne testovacie funkcie sa vacsinou vsetky pisu s podtrzitkom ako is_dir alebo is_int. Tak prepac a daj prosim vediet ci ti to uz ide. |
||
krteczek Profil |
#11 · Zasláno: 16. 4. 2005, 20:13:44 · Upravil/a: krteczek
opět tu bude problém ve vyžších verzích php, bude vám to stále otvírat "home" protože jsou implicitně zakázané globální proměnne. Musíš upravit ten skript nějak takhle:
samozrejmě pokud předáváš proměnné pomocí getu tak jsou v $_GET nebo bo mužeš použít pole $_REQUEST kde jsou uložene všechny proměnné krteczek |
||
DoubleThink Profil * |
#12 · Zasláno: 16. 4. 2005, 22:24:57
Nevidím důvod to řešit - je to notice (upozornění) nikoliv chyba. Jenom si vypni v php.ini zobrazování upozornění.
|
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0