in reply to Global symbol "$dbh" requires explicit package name
As mentioned in other replies on here, from the program listing, it appears that $dbh and $sth should be declared with my, similar to what is being used for other variables in your program. $sth, because it is first used in an eval block, should be first declared outside the block with my $sth;.
The eval for $sth = $dbh->prepare($SQL); may be overkill for error checking, normally for preparing statements I use code like my $sth = $dbh->prepare($SQL) or die "..."; depending on program requirements. Changing that can also allow you to declare the variable with "my" and assign it in one statement. Also, I noticed that the prepare statement is being checked for errors, but not execute.
Thanks,
techy
When art critics get together they talk about Form and Structure and Meaning. When artists get together they talk about where you can buy cheap turpentine. -- Pablo Picasso
|
|---|