Autor Zpráva
tomas121212
Profil *
*Notice*: Undefined variable: section in /home/virtual_web/******.cz/public_html/www/index.php* on line *63*

Jak bych to mohl opravit? Musím použít funkci GET?
tomas121212
Profil *
díky :)
Nox
Profil
tomas121212
Není to chyba, jen upozornění, který říká, že nebyla definovaná proměnná, což může ale nemusí být podstatný, záleží na okolnostech, můžeš využít funkci isset
kletely
Profil
tomas121212
Alebo daj
@$_GET['section'];
Nox
Profil
Anebo použij na začátek skriptu funkci http://cz.php.net/manual/en/function.error-reporting.php
Jan Tvrdík
Profil
tomas121212
Doporučuji ti přečíst http://blog.php-group.cz/2008/02/07/narazim-na-error_reporting-notice/ + komentáře
Zastávám názor, že chyby typu Notice by se nikdy neměli přehlížet, protože často může jít o nejkritičnější chyby.
lordfrikk
Profil
Zastávám názor, že chyby typu Notice by se nikdy neměli přehlížet, protože často může jít o nejkritičnější chyby.
Taky tak... myslím, že dobrý programátor by je opravdu přehlížet neměl.
tomas121212
Profil *
Děkuji za názory :) Co bych teda měl použít?
@$_GET
$_GET
isset



Díky :)
bukaj
Profil
tomas121212
Co bych teda měl použít?
$_GET
Tady zákleží na kontextu, v jakém chyba nastala. Pokud by se opravdu mělo jednat o přístup k proměnné, která je z požadavku uživatele, ale je k ní přistupováno jako ke globální kvůli zapnuté direktivě register_globals, rozhodně používat superglobální pole typu $_GET, $_POST aj.

@$_GET
isset

Doporučuji testovat pomocí isset(), tlumící operátor (zavináč - @) je zlo. A používal bych ho opravdu jen tehdy, je-li to opodstatněné, za což se mi přístup k neinicializované proměnné nezdá.
tomas121212
Profil *
Proč při použití $section = $_GET['section']; mi to dává hlášku
Notice: Undefined index: section in /home/virtual_web/vsenajednommiste.cz/public_html/www/index.php on line 26


Je tam už jenom jedna chybová hláška - původně jich tam bylo hodně... :)
Davex
Profil
tomas121212
Proč při použití $section = $_GET['section']; mi to dává hlášku
Viz. Nox #3. Nejdříve si otestuj, zda je proměnná nastavena pomocí
if (isset($_GET['section']))
...
tomas121212
Profil *
Mám tedy použít
$section = isset($_GET['section']) ? $_GET['section'] : NULL;

? :)
tomas121212
Profil *
Ne :)

Toto by už mělo být dobře, že jo?

$section = isset($_GET['section']);

Dííky :)
tomas121212
Profil *
Tak jsem teď zjistil, že pokud tam mám oba kódy zároveň, tak to správně funguje
$section = isset($_GET['section']);
$section = isset($_GET['section']) ? $_GET['section'] : NULL;


Jak to mám dát do jednoho kódu? Díky :)
tomas121212
Profil *
Nemohl by pls někdo poradit??

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: