1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
# ----------------------------------------------------------------------- # hier werden die aufgetretenen Fehler geloggt # somit hat der Admin über alle auftretenden Fehler eine Übersicht # ----------------------------------------------------------------------- sub failLog{ my $failtext = shift; my ($file, $line, $sub) = ( caller(1) )[1,2,3]; open STDERR, ">>db_error.log" or die "db_error.log: $!"; print STDERR scalar localtime(time())." -- ".$failtext." -- File:".$file." Line:".$line." $sub\n"; close (STDERR); } # ----------------------------------------------------------------------- # Übergebenes Statement wird ausgeführt / Kein Rückgabewert # ----------------------------------------------------------------------- sub do{ my ($statement, @param) = @_; my $sth = $dbh->prepare($statement); $sth->execute(@param) or die failLog( $dbh->errstr ); }
WebDB::do("INSERT INTO table (col1, col2) VALUES ( ?, ? )", $col1, $col2);
WebDB::do("INSERT INTO table (col1, col2) VALUES ( '".$col1."', '".$col2."' )");
1 2 3 4 5 6 7 8
BEGIN{ *toedi = sub{ local $, = "\n"; print "Content-Type: text/plain; Charset=UTF-8\n\n", "Fehler-Report", @_; }; $SIG{__WARN__} = *toedi; $SIG{__DIE__} = *toedi; }
1 2 3 4 5 6
eval{ # hier setzt Du Deinen ganzen Code rein print "Content-Type: text/plain; Charset=UTF-8\n\nAlles Gut gegangen"; } or print "Content-Type: text/plain; Charset=UTF-8\n\n$@";