Autor Zpráva
gardener
Profil
Zdravim,

Chtel bych se zeptat, jak se daji u WAMPSERVERU vypnout notice hlasky, resp. jaka polozka v nastaveni k tomu slouzi?

Ve spouste drive napsanych skriptu se nyni totiz setkavam s touto hlaskou:
Notice: Constant SQL_HOST already defined in C:\Data\Programing\PHP\www\Aplications\seznam\db_connect.php on line 5

Diky za kazdou radu.
bohyn
Profil
gardener
Notice maji svuj vyznam, definujes jiz drive definovanou konstantu, neni lepsi odstranit pricinu, nez jen potacit chybovou hlasku?
gardener
Profil
To asi ano, ale stejne mi prijde, ze vetsina hostingu ma notice vypnuty.Nehlede na to, kdyz jsem mel XAMPP tak vse jelo vzdy bez potizi a treba s IMAP_fcemi nebyly problemy.

Jenze po prechodu na WAMP se napriklad sript s IMAP spusti a nic na vystup nevypise, pritom ten samy skript na pocitaci vedle bezi bez problemu, tak mi pak prijde otazka, jestli ma vybec smysl mit notice zapnuty?
AM_
Profil
gardener
Hostingy by správně měly mít vypnuté kompletně všechny chybové hlášky, protože ty mohou potenciálnímu útočníkovi poskytnout pro něj užitečné informace (př. složka, kde se web nachází, charakter chyby ho může přivést blíže ke vnitřní stavbě programu a odhadnutí bezpečnostních nedostatků).
Na localhostu bys ale měl mít zapnuté všechny chyby (při profi programování i E_STRICT) a programovat tak, aby ti skript žádné neházel.
AM_
Profil
Jo, pokud se ptáš na smysl: někdy se jedná o "nedůležité" chyby (třeba čtení nepředaného GET parametru), ale to se dá (a má) ošetřit přes isset, často ti notice odhalí zdroj problému, což je větší přínos, než "nevýhoda" nutnosti napsat o isset víc.
Proč programovat čistě? pokud používáš doporučené a dokumentované postupy, máš velkou záruku, že kód poběží nezávisle na konfiguraci serveru, verzi PHP a má šanci být spustitelný i na budoucích verzích PHP. Nikde ale není dáno, že v příští verzi se nynější notice nebudou ošetřovat jinak.
Yur4Y
Profil
Pokiaľ chcete potlačovať tieto chybové hlášky (pričom by ste naozaj mali radšej odstrániť príčinu), otvorte php.ini. Je to súbor s konfiguráciou PHP. Pohľadajte:
error_reporting
Zrejme bude celý riadok vyzerať
error_reporting = E_ALL
Riadkov, kde je error_reporting, bude viac, pre vás je dôležitý ten, ktorý nezačína bodkočiarkou ("středník"). Zmeňte tento riadok na
error_reporting = E_ALL & ~E_NOTICE
Potom reštartujte server.

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: