oh and one thing don't ever do anything in DBI or in programming in general without error checking...
ie DBI->connect should be DBI->connect or die "$DBI::errstr" and the same with prepare and execute.. perldoc DBI for details On Monday, October 22, 2001, at 06:58 PM, Terrence Brannon wrote: > try this: > > my %select = > ( > no_contractor => 'select blah1, blah2 from contractors where > (username = ?) and > (password = ?)', > with_contactor => 'select blah1, blah2 from ap_contractors where > (id = ?)' > ); > my $dbh = DBI->connect("DBI:mysql:$database:$hostname", $user, > $datpassword); > my $sth; > unless ($contractor_id) { > $sth = $dbh->prepare($select{with_contractor}); > $sth->execute($username,$password); > } else { > $dbh->prepare($select{no_contractor}); > $sth->execute($contractor_id) > } > > > On Monday, October 22, 2001, at 06:36 PM, Greg Thompson wrote: >> >> I know this is probably simple, but I do not know why it does not >> perform >> the selection based on my if statements. I've tried selecting stuff >> using >> other if statements, and they did not work either. But once I take >> away the > > you need to examine your data with a microscope and that microscope is > Data::Dumper.. get it from http://kobesearch.cpan.org > > > >> if/else statement, it works fine, but then the problem remains that I >> need > > if/else is often best cast with hashes, as shown above... and later > with object-oriented dispatch, but that is 6 months down the road :)