#File Name: FTPMBMB.pl #Author : Kumar Arjunan #Nick : amyarjun #E-Mail: amyarjun@yahoo.com #!/usr/bin/perl -- use Mysql; use Getopt::Std; use Net::FTP; use Time::localtime; require 'perlLib/perlFunc.pl'; $| = 1; sub now { $tm = localtime; ($smin, $shour, $sday, $smon, $syear) = ($tm->min, $tm->hour, +$tm->mday, $tm->mon, $tm->year); $f = sprintf ("%02d-%02d-%04d", $smon+1, $sday, $syear+1900, + $shour, $smin); return $f; } $g = &now; $db = &condb(); $filename = 'MBMBAduan'.$g; $filename1 = 'MBMBCadangan'.$g; $masa = &gettime(); @msArray = split(" ",$masa); $msTime = $msArray[1]; @tmArray = split(":",$msTime); $counter = $tmArray[0]; @dateArray = split("-",$msArray[0]); $date = $dateArray[1]; $mon = $dateArray[0]; $year = $dateArray[2]; $masa = &gettime(); @msArray = split(" ",$masa); $msTime = $msArray[1]; @tmArray = split(":",$msTime); $date_out = $year.$mon.$date; # CONSTRUCT THE FIRST FILE - READ DATA FROM DATABASE AND CREATE A CSV +FILE open(mbmb, "> $filename") or die "couldn't open $filename\n"; $sql_query = "SELECT mobile,complaint,posteddate FROM spp_mbmb_com +plaints WHERE posteddate LIKE '$date_out%'"; $sth = $db->query($sql_query); my @array_ref; while (@array_ref = $sth->fetchrow() ) { foreach my $col ( @array_ref ) { print mbmb '' . $col . ', '; } print mbmb "\n"; } close(mbmb); system "chown devftp:devftp $filename"; # CONSTRUCT THE SECOND FILE - READ DATA FROM DATABASE AND CREATE A CSV + FILE open(mbmb, "> $filename1") or die "couldn't open $filename1\n"; $sql_query1 = "SELECT mobile,suggestion,posteddate FROM spp_mbmb_s +uggestions WHERE posteddate LIKE '$date_out%' "; $sth1 = $db->query($sql_query1); my @array_ref1; while (@array_ref1 = $sth1->fetchrow() ) { foreach my $col1 ( @array_ref1 ) { print mbmb1 '' . $col1 . ', '; } print mbmb1 "\n"; } close(mbmb1); system "chown devftp:devftp $filename1"; # FTP ACCOUNT THAT WE GOING TO SEND $switch = '-p'; $user = 'XXXX'; $password = 'XXXX'; $server = 'XXX.XXX.XXX.XXX'; $path = '/home/notes/data/PSAdata'; # CONSTRUCT FTP PARAMETER $readftp = ftpO($switch, $user, $password, $server, $filename, $pa +th); $readftp = ftpO($switch, $user, $password, $server, $filename1, $p +ath); # THIS CODE SEND OUT FTP - I GOT FROM A POSTED CODE - I CANT REMEMBERT + WHERE sub ftpO($switch, $user, $password, $server, $filename, $path){ $ftp = Net::FTP->new($server); # contact server if ($ftp == NULL) { print "Could not connect to server.\n"; exit(9); } print "Connected to $server\n"; if ($ftp->login($user, $password)){ if ($ftp->cwd($path)){ if ($switch eq "-p"){ if ($ftp->put($filename)){ $ftp->quit(); print "Uploaded the file, $filename\n"; } else{ print "Could not put file, $filename\n"; exit(4); } } else{ print "Invalid switch: $switch.\n"; exit(5); } } else{ print "Could not change directory to $path\n"; exit(6); } } else{ print "Could not login with user, $user and password, $passw +ord.\n"; exit(7); } }#print "Process Completed\n"; exit; ---------------------------------------------------------------------- +-------------- #File Name: perlFunc.pl #Author : Kumar Arjunan #Nick : amyarjun #E-Mail: amyarjun@yahoo.com # SOME FUNCTION USING IN ALL CODING - SOME TIME USED - SOME TIME DIREC +T CODE sub gettime{ $tm = localtime; ($smin, $shour, $sday, $smon, $syear) = ($tm->min, $tm->hour, +$tm->mday, $tm->mon, $tm->year); $f = sprintf ("%02d-%02d-%04d %02d:%02d", $smon+1, $sday, $sy +ear+1900, $shour, $smin); return $f; } sub condb{ $hostdb ="xxx.xxx.xxx.xxx"; $database = "XXXXXXX"; $userdb ="XXXX"; $passworddb ="XXXX"; $db = Mysql->connect($hostdb, $databasedb, $userdb, $passwordd +b); $db->selectdb($database); return $db; } sub daemonize{ my($filename)=@_; #chdir '../' or die "Can't chdir to /: $!"; open STDIN, ">>perlog/$filename" or die "Can't read perlog/$filena +me: $!"; open STDOUT, ">>perlog/$filename" or die "Can't write to perlog/$f +ilename: $!"; open STDERR, ">>perlog/$filename" or die "Can't write to perlog/$f +ilename: $!"; defined(my $pid = fork) or die "Can't fork: $!"; exit if $pid; setsid or die "Can't start a new session: $!"; umask 0; } 1;
In reply to FTPMBMB.PL by amyarjun
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |