Co se děje? Najednou mi mé bezchybné PHP skripty bez jediné úpravy začaly házet nejrůznější vypečené error hlášky. Vadí mi především jedna - u proměnných, který neinicializuju, ale rovnou je někde použiju (třeba v podmínce...) mi to hlásí "undefined variable"! Proč to?
no tady se vubec dejou veci...:)
hod na zacatek skriptu funkci
error_reporting(E_ERROR|E_PARSE);
No to by me taky zajimalo jak to ze to halsi ty chybky???
Jo jinak diky bohdanovi to sice nehlasi chybky ale co kdyz to ani nefacha spravne???
no to mas jednoduchy.. je nekolik typu chyb, z nihz jenom nekery zastavi beh skriptu (napr E_ERROR nebo E_PARSE)..
ty dalsi (napr E_WARNING nebo E_NOTICE) jenom informuji o necem co asi neni uplne v poradku (nedefinovany promeny, neuspesny spojeni smysql servrem apod.)
no a tou funkci e_reporting() si muzes nastavit jaky z tech chyb se ti maj vypisovat.. to znamena ze fakt ze ti to predtim zadny chyby nahlasilo neznamena zetam zadny nebyly, nybrz ze bylo potlaceny jejich zobrazovani.
kazdopadne vypnout na zacatku vypisovani chyb a pak delat s klidnym svedomim prasarny typu nedefinovani promenech (casto aniz by sis to uvedomil) nepatri k tem nejlepsim programovacim technikam:)
kdyz uz fakt potrebujes neco nechat neosetreny tak muzes pred tu operaci/funkci vrazit operator @, kterej potlacuje chybovy hlasky v ramci teto funkce/operace
takze napr
while(neco...)
$promena.='cokoli'
by spravne melo bejt
var $promena;
while(neco...)
$promena.='cokoli'
nebo treba
$promena='';
while(neco...)
$promena.='cokoli'
ale de to udelat taky
while(neco...)
@$promena.='cokoli'
no anebo muzes vypnout chybovy hlaseni u nekritickych chyb explicitne pro celej skript, ale nedelal bych to, pripravis se o dost praktickou pomucku pri ladeni..
myslim ze je to naprosto nevycerpatelny tema takze radsi skoncim
jo vlastne jsem ti neodpovedel - rekl bych(nevim) ze proste byla nastavena jina vychozi hodnota pro error_reporting.
Tak už je to zase vpořádku. Ale díky za ten tip s error_reporting, je užitečný to vědět. Ještě že se WZ občas chová divně, já se díky tomu docela vzdělám :-)