in reply to ODD: Perl started complaining about just everything

It looks like you're using DBI and CGI. If so, then apart from watching for mismatched quotes, as others have pointed out, you should probably reduce the amount of quoting overall (and increase the safety/reliability of the script) by using "?" placeholders in the query strings, and passing the variables as parameters when you execute:
my $query3 = "insert into details (rec_id,descr,cover) VALUES (?,?,?);"; my $sth3 = $dbh->prepare( $query3 ); $sth3->execute( $db_rec_id, $descr, $namecover );