Lennard schreef:Ja, mysql_query() icm mysql_error().
[COLOR= #0000BB]<?php[/COLOR]
[COLOR= #007700]new[/COLOR] mysql
[COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$verbinding[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$host[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$user[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$pass[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$db[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]verbinding [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_connect"]mysql_connect[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$host[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$user[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$pass[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700](![/COLOR][URL="http://www.php.net/is_resource"]is_resource[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]verbinding[COLOR= #007700]))
{[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]error[COLOR= #007700]();
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL]
[COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/mysql_select_db"]mysql_select_db[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$db[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]verbinding[COLOR= #007700]);
}
}[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] query[COLOR= #007700]([/COLOR][COLOR= #0000BB]$query[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$res[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$query[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]verbinding[COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700](![/COLOR][URL="http://www.php.net/is_resource"]is_resource[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$res[/COLOR][COLOR= #007700]))
{[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]error[COLOR= #007700]();
}
}[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] error[COLOR= #007700]()
{[/COLOR]
[URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]Fout <strong>[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_error"]mysql_error[/URL][COLOR= #007700]().[/COLOR][COLOR= #DD0000]</strong> (#[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_errno"]mysql_errno[/URL][COLOR= #007700]().[/COLOR][COLOR= #DD0000])[/COLOR][COLOR= #007700];
}
}[/COLOR]
?>
Je kunt alleen geen regelnummertje en bestand achterhalen waar de fout vandaan kwam, omdat de fout altijd uit je mysql class komt (dus __FILE__ geeft de locatie van je class aan, en __LINE__ het regelnummer van je mysql_query()).
Ik heb in mijn error handler wel bij mysql fouten de bestandsnaam:
$_SERVER[REQUEST_URI]
Werkt dmv een functie:
mysql_query($query) or die(report_mysql(hier zet ik een functieomschrijving neer zodat ie snel terug is te vinden en waar die voor dient));
Als er dan een fout is kan ik alleen regelnummer niet zien.