ik ben bezig met een debug scriptje en daar heb ik mijn eigen error handler
link (let op, IE only)
het werkt allemaal fijn, de foutmeldingen komen mooi in de log, mysql foutmeldingen in het (hier niet zichtbare) mysql tab en ik wil dus de postgres fouten in de postgres tab.
echter er gaat blijkbaar iets mis met de error handler omdat de pg_query fout zowel in de 'normale' log venster komt als in mijn postgres tab. ik wil de foutmelding dus onderdrukken omdat ik deze zelf wil afhandelen.
PHP versie is 4.2.2, Postgres versie is 7.2.2
relevante code:
sample.php
phpdebug.php
link (let op, IE only)
het werkt allemaal fijn, de foutmeldingen komen mooi in de log, mysql foutmeldingen in het (hier niet zichtbare) mysql tab en ik wil dus de postgres fouten in de postgres tab.
echter er gaat blijkbaar iets mis met de error handler omdat de pg_query fout zowel in de 'normale' log venster komt als in mijn postgres tab. ik wil de foutmelding dus onderdrukken omdat ik deze zelf wil afhandelen.
PHP versie is 4.2.2, Postgres versie is 7.2.2
relevante code:
sample.php
PHP:
1
2
3
4
| include("phpdebug.php"); $debug = new phpdebug(); $result = $debug->query("SELECT * FROM klant WHERE foo='bar'",__LINE__,"postgres"); echo $debug->printout(get_defined_vars()); |
phpdebug.php
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| function phpdebug() { error_reporting(E_ALL); function phpdebug_dummy($type,$msg,$file,$line) { // dlog is mijn interne log functie phpdebug::dlog($type,$msg . " in " . $file . " on line " . $line); } set_error_handler("phpdebug_dummy"); } function query($query,$line = 0,$db_type = "mysql") { $oldlevel = error_reporting(0); $resource = @pg_query($query); error_reporting($oldlevel); if(!$resource) { // genereer foutmelding in de postgres tab } // etc... } |
[ Voor 9% gewijzigd door angl2k op 23-10-2003 22:21 ]