Re: Perl code Solved - renaming a file for upload
Got it worked out - thanks - it was in another part of the code -
$CGI::POST_MAX = 1024 * 2;
Get_Names();
sub Get_Names{
my $counter=0;
my $full_name;
my $file_name;
foreach $full_name (@File_Names){
my $rec={};
if ($full_name ne ""){
$file_name = Get_File_Name($full_name);
$file_name = "$p$file_name"; <-------------- Added this line and it
works now
$rec->{file_name} = $file_name;
$rec->{full_name} = $full_name;
$rec->{description} = $Descriptions[$counter];
push @File_Array, $rec;
Store_File($full_name, $file_name);
}
$counter++;
}
}
Greg Meckes wrote:
> You certainly could use rename. You would have to use it after because the file would have to > exist first to be able to rename it. > > Greg > --- Douglas Brantz <brantzdr@appstate.edu> wrote: > > >> Should I use the rename function before the file is uploaded or after? - >> I'm not sure if I can change the name of the file before its uploaded - >> it seems I might have to change it on the server after the upload? >> Modified script below - >> >> Thanks in advance - >> >> >> >> Douglas Brantz wrote: >> >>> That didn't seem to work - still uploads file with original name. In >>> the example I upload 1 file and form# 405 is added to the beginning of >>> the file name for Mysql - >>> below the list you see the File that is getting uploaded. >>> >>> current: 405File1faapage.pdf >>> proposed: >>> syll1: >>> syll2: >>> csheet: >>> psheet: >>> >>> File being uploaded: File1faapage.pdf >>> >>> --------------------------------------------------------------------------------------- >>> >>> >>> Greg Meckes wrote: >>> >>>> Couldn't you just say?: >>>> >>>> open (STORAGE, ">$dir/$p$file_name") >>>> >>>> >>>> >>>> --- Douglas Brantz <brantzdr@appstate.edu> wrote: >>>> >>>> >>>> >>>>> I need to upload a file to the server and I have that working, but I >>>>> want to add the form# to the front of the file: >>>>> I can do this to the filename stored in Mysql but how do I change >>>>> the name of the file being uploaded to the server? >>>>> - >>>>> The variable for form number is $p >>>>> >>>>> I thought I could do this somewhere in this part of the code? >>>>> >>>>> sub Get_File_Name{ >>>>> if ($ENV{HTTP_USER_AGENT}=~/win/i){ >>>>> fileparse_set_fstype("MSDOS"); >>>>> } >>>>> elsif($ENV{HTTP_USER_AGENT}=~/mac/i){ >>>>> fileparse_set_fstype("MacOS"); >>>>> } >>>>> my $full_name = shift; >>>>> $full_name = basename($full_name); >>>>> >>>>> $full_name = "$p$full_name"; ##>> Added this so I can get the file >>>>> name with form# for Mysql >>>>> $full_name =~ s!\s!\_!g; >>>>> return($full_name); >>>>> } >>>>> sub Store_File{ >>>>> my $file_handle = shift; >>>>> my $file_name = shift; >>>>> my $data; >>>>> #my $mime = uploadInfo($File_handle)->{'Content-Type'}; >>>>> open (STORAGE, ">$dir/$file_name") ## Tried >>>>> "..>$dir/$p$file_name"); but it didnt' work. >>>>> or die "Error: $!\n"; >>>>> #if($mime !~ /text/){ >>>>> binmode ($file_handle); >>>>> binmode (STORAGE); >>>>> #} >>>>> while( read($file_handle, $data, 1024) ){ >>>>> print STORAGE $data; >>>>> } >>>>> close STORAGE; >>>>> } >>>>> >>>>> -- >>>>> Douglas Brantz >>>>> Computer consultant >>>>> College of Fine & Applied Arts >>>>> Appalachian State University >>>>> Boone, NC 28608 >>>>> >>>>> 828-262-6549 office >>>>> 828-262-6312 - fax >>>>> >>>>> >>>>> -- >>>>> MySQL Perl Mailing List >>>>> For list archives: http://lists.mysql.com/perl >>>>> To unsubscribe: >>>>> http://lists.mysql.com/perl?unsub=gregmeckes@yahoo.com >>>>> >>>>> >>>>> >>>>> >>>> >>>> >> -- >> Douglas Brantz >> Computer consultant >> College of Fine & Applied Arts >> Appalachian State University >> Boone, NC 28608 >> >> 828-262-6549 office >> 828-262-6312 - fax >> >> >> -- >> MySQL Perl Mailing List >> For list archives: http://lists.mysql.com/perl >> To unsubscribe: http://lists.mysql.com/perl?unsub=gregmeckes@yahoo.com >> >> >> > > >
--
Douglas Brantz
Computer consultant
College of Fine & Applied Arts
Appalachian State University
Boone, NC 28608
828-262-6549 – office
828-262-6312 - fax
--
MySQL Perl Mailing List
For list archives:
http://lists.mysql.com/perl
To unsubscribe:
http://lists.mysql.com/perl?unsub=lists@pantek.com
Received on Fri Sep 28 16:24:39 2007
This archive was generated by hypermail 2.1.8
: Sun Oct 07 2007 - 10:15:37 EDT
|