#!/usr/bin/perl use Net::Ftp; use Tk; my $top = new MainWindow; my $l_ftpsite = $top->Label(-text=>"Site")->pack; my $entry_ftpsite = $top->Entry(-textvariable=>\$ftpsite)->pack; my $l_username = $top->Label(-text=>"Username")->pack; my $entry_username = $top->Entry(-textvariable=>\$username)->pack; my $l_password = $top->Label(-text=>"Password")->pack; my $entry_password = $top->Entry(-textvariable=>\$password)->pack; my $l_directory = $top->Label(-text=>"Directory")->pack; my $entry_directory = $top->Entry(-textvariable=>\$directory)->pack; my $browse = $top->Button ( -text=>"Browse..", -command=> sub{ my $filename = $top->getOpenFile(); ftp_me($username,$password,$ftpsite,$directory,$filename); } )->pack(); MainLoop; sub ftp_me{ my ($username,$password,$ftpsite,$directory,$filename) = @_; $ftp = Net::FTP->new($ftpsite, Debug => 0); $ftp->login($username,$password); if (defined $directory) { $ftp->cwd(q|$directory|); } $ftp->put($filename); $ftp->quit; }