To handle sql syntax errors (including, the query, the Line number of the 
code and possibly the file name) I came up with this...

define(LN,__LINE__);

$query="bogus query to cause error";
$rslt=mysql_query($query) or query_error(LN,$query);  (*)
this one works fine but I have to pass __LINE__ (LN) as an argument... and 
I don't like that...
(*)

function query_error($line,$query="unspecified)
{
         $errstr="<font face=verdana size=2 color=ff0000><b>SQL Error</b>: 
'$query' failed at line $line<br>\n";
         $errstr.=mysql_errno()." : ".mysql_error()."</font>";
         die($errstr);
}

or

$rslt=mysql_query($query) or user_error(mysql_error()." at 
'$query'",E_USER_ERROR);
works fine too, gives me the filename, the line and handles the error more 
PHP-likely... but still it's a huge function call to EVERY single query...

I want to write at least code as possible and get the error, the query, the 
line number and (possibly) the filename..

isn't there anyway I could build a mask for a function or something like 
that to pass __LINE__ as an argument always.. I don't know... any ideas?

____________________________
. Christian Dechery (lemming)
. http://www.tanamesa.com.br
. Gaita-L Owner / Web Developer

Reply via email to