#!/usr/bin/perl -w use strict; use CGI; use CGI::Carp('fatalsToBrowser'); use DBI; my $home = $ENV{HOME}; my $q = new CGI; # get rows to delete my @deletes = $q->param('delete_this_row'); # print a header using CGI.pm print $q->header(); # connect to database, only need to do once (fill in values) my $dbh = DBI->connect($data_source, $username, $auth, \%attr) or error("Can't connect to database!"); # prepare and cache SQL - we use a placeholder ? ALWAYS USE ? placeholders! my $SQL="DELETE FROM timeclock WHERE oid = ?"; my $sth = $dbh->prepare_cached($SQL) or error("Could not prepare $SQL"); # do the deletions my $results; foreach my $delete(@deletes) { $sth->execute($delete) or error("Could not execute $detete"); $results .= "
  • Deleted $delete
  • \n"; } # commit the changes $dbh->commit or do {$dbh->rollback; error("Could not commit changes")}; $dbh->disconnect or error("Disconnect error"); sub error { my $error = shift; print "

    Database error!

    \n" print "

    $error " . $DBI::errstr; exit; } ################ BEGIN PRINT RESULTS SUBROUTINE sub print_results{ print <Delete Entry

    Delete Results


    Home |Clock In | Search
    HTML } # End of print_results subroutine