#!/usr/bin/perl -w use strict; use CGI; use DBI; use CGI::Carp qw(fatalsToBrowser); my $upload_dir = "/home/local/upload"; my $query = new CGI; my $filename = $query->param("filename"); my $to = $query->param("to"); my $from = $query->param("from"); my $expire = $query->param("expire"); my $comments = $query->param("comments"); my $uldate = time; my $expdate; if ($expire !~m/^(1|2|3|4|5|6|7|8|9|10|11|12|13|14)$/) { print "Content-type: text/html\n\nDon't tamper with me!"; die; } if ($expire eq 1) {$expdate = $uldate + 86400;} if ($expire eq 2) {$expdate = $uldate + 172800;} if ($expire eq 3) {$expdate = $uldate + 259200;} $filename =~ s/.*[\/\\](.*)/$1/; ##Start database connections############################### my $database = "databox"; my $db_server = "localhost"; my $user = "user"; my $password = "pass"; ##Connect to database, insert statement, & disconnect ##### my $sth; my $dbh = DBI->connect("DBI:mysql:$database:$db_server",$user,$password); my $statement = "INSERT INTO databox (filename,data_to,data_from,comments,uldate,expdate) VALUES (?,?,?,?,?,?)"; $sth = $dbh->prepare($statement) or die "Couldn't prepare the query: ".$DBI::errstr; my $rv = $sth->execute($filename,$to,$from,$comments,$uldate,$expdate) or die "Couldn't execute query: ".$DBI::errstr; $sth->finish; $dbh->disconnect; ########################################################### my $upload_filehandle = $query->upload("filename"); open UPLOADFILE, ">$upload_dir/$uldate"; binmode UPLOADFILE; while ( <$upload_filehandle> ) { print UPLOADFILE; } close UPLOADFILE; #### my $upload_filehandle = $query->upload("filename"); open UPLOADFILE, ">$upload_dir/$uldate"; binmode UPLOADFILE; while ( <$upload_filehandle> ) { print UPLOADFILE; } #### my $upload_filehandle = $query->upload("filename"); open UPLOADFILE, ">$upload_dir/$uldate"; binmode UPLOADFILE; my $x = deflateInit() or die "Cannot create a deflation stream\n" ; my ($output, $status) ; while ( <$upload_filehandle> ) { ($output, $status) = $x->deflate($upload_filehandle) ; $status == Z_OK or die "deflation failed\n" ; print UPLOADFILE; }