#!/usr/bin/perl
use DBI;
my $listname = shift;
my @fieldlist = qw/S_FName S_SName S_Address S_Postcode S_State S_Country S_Email S_Company/;
my $field = ();
foreach $field (grep(not_NA($listname,$_), @fieldlist)){
print "
".$field . " | ";
}
sub not_NA
{
my $listname = shift;
my $field = shift;
chomp $field,$listname;
my $mid = lookup_MID($listname);
my $db = "nMail";
my $sock = "/tmp/mysql.sock";
my $user = "user";
my $pass = 'password';
my $dsn = "DBI:mysql:$db;mysql_socket=$sock";
my $dbh = DBI->connect($dsn,$user,$pass);
my $sth = $dbh->prepare("SELECT $field from ML_Subscribers WHERE MID = $mid");
$sth->execute() || die "Error: Could not get mailing list data\n";
while (my @row = $sth->fetchrow_array) {
if($row ne 'NA'){
$sth->finish();
$dbh->disconnect();
return 1;
}
}
$dbh->disconnect();
return 0;
}
sub lookup_MID
{
my $listname = shift;
chomp $listname;
my $db = "nMail";
my $sock = "/tmp/mysql.sock";
my $user = "user";
my $pass = 'password';
my $dsn = "DBI:mysql:$db;mysql_socket=$sock";
my $mid = ();
my $dbh = DBI->connect($dsn,$user,$pass);
my $sth = $dbh->prepare("SELECT MID,Mname FROM ML_Lists");
$sth->execute() || die "Error: Could not get mailing list data\n";
while (my @row = $sth->fetchrow_array) {
chomp $row[0],$row[1];
if($row[1] eq $listname){
$mid = $row[0];
}
}
$dbh->disconnect();
if(!$mid){
return 0;
}
return $mid;
}