use strict;
use diagnostics;
use CGI qw(:standard);
use CGI::Carp qw/fatalsToBrowser/;
use Win32::ODBC;
use lib '/perlcgi/settings';
require 'settings.pl'; # Included configuration file which contains global variables
my %labels = (
MA => 'Mortgage Advisers',
CA => 'Customer Advisers',
BM => 'Branch Management',
HO => 'Head Office',
Acc => 'Accord',
MSa => 'MCC Sales',
MSe => 'MCC Service',
);
$today = 'somedate'
my $cgi = CGI->new;
print $cgi->header('text/html');
my $dept = $cgi->param('department');
if (defined $dept) {
if (exists $labels{$dept}) {
# FIXME
# untaint $dept and put it into database
print
$cgi->start_html,
$cgi->p("$dept was received."),
$cgi->end_html;
} else {
print
$cgi->start_html,
$cgi->p("$dept was received, but is not a valid department name."),
$cgi->end_html;
};
} else {
print
$cgi->start_html,
$cgi->start_form(
-action => $cgi->script_name,
),
$cgi->popup_menu(
-name => 'department',
-values => [keys %labels],
-labels => \%labels,
),
$cgi->submit,
$cgi->end_form,
$cgi->end_html;
};
####
# $SqlStatement = "SELECT * FROM Pipeline WHERE Publish<='$today' AND Expiry>='$today' AND $dept='Must Read'";
####
if (!($db=new Win32::ODBC($DSN))) {
print "Error connecting to Database\n";
print "Error: " . Win32::ODBC::Error() . "\n";
}
$SqlStatement = "SELECT * FROM BulletinGroups";
if ($db->Sql($SqlStatement)) {
print "SQL failed.\n";
print "Error: " . $db->Error() . "\n";
} else {
while($db->FetchRow()) {
Do something here
}