logovanie chyb v php skriptoch
3 příspěvky
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
ahoj. povedzme, ze by mi nastala chyba v skripte aa nechcem ju vypisat na stranke, ale chcem ju ulozit do db, abo do suboru. ako to spravim? na sql som to spravil takto: if(mysql_error()!=""){ $ip=$_SERVER['REMOTE_ADDR']; $file=fopen("./log","a+"); $logmessage="$snick($ip)::".date("j. n. Y,G:i",time())."::\n".mysql_errno()."::".mysql_error()."::\n$variables\n"; fwrite($file,$logmessage); echo $logmessage; fclose($file); } ale jak to spravim n a chybu v php scripte? pls napiste niekto :)
-
Vetsina funkci neco vraci. Takze pokud nastane chyba, tak funkce nevraci nic, nebo -1(0). Tuto chybu lze vetsinou odchytit zapisem $er = neco(); if(!$er) { chyba; }, nebo zkracene if(!neco()) { chyba }. Aby se chyba nezobrazovala na strance, lze ji potlacit @ umistenou pred funkci. To jest if(!@neco()) { chyba }
-
<HTML>funkce pro zpracovani chyb: function myErrorHandler($errno, $errstr, $errfile, $errline) { $errortype = array ( E_ERROR => "Error", E_WARNING => "Warning", E_PARSE => "Parsing Error", E_NOTICE => "Notice", E_CORE_ERROR => "Core Error", E_CORE_WARNING => "Core Warning", E_COMPILE_ERROR => "Compile Error", E_COMPILE_WARNING => "Compile Warning", E_USER_ERROR => "User Error", E_USER_WARNING => "User Warning", E_USER_NOTICE => "User Notice", E_STRICT => "Runtime Notice" ); $errmes = "<b>".$errortype[$errno]."</b> [$errno] $errstr<br />\n"; $errmes .= " Error in line $errline of file $errfile"; if ($errno != E_NOTICE && $errno != E_COMPILE_WARNING && $errno != E_USER_NOTICE && $errno != E_STRICT) /* ULOZENI DO DB */ mysql_query("INSERT INTO log SET chyba='$errmes'"); } zachytavani chybovych hlaseni a predani funkci myErrorHandler(): <b>set_error_handler("myErrorHandler");</b></HTML>