Forum Webscript.Ru

Программирование => Perl => Тема начата: pirojok от 09 Марта 2005, 13:41:58

Название: Почему не работает скрипт для аплода картинки???
Отправлено: pirojok от 09 Марта 2005, 13:41:58
#!/usr/bin/perl
use CGI;
$query = new CGI;
# Код для формы
print $query->header;
print $query->start_multipart_form(-method=>\'get\', -action=>\'upl.pl\');
print $query->filefield(-name=>\'uploaded_file\');
print $query->submit(\'button_name\',\'value\');

if ($query->param(\'uploaded_file\') ne \'\'){&insert_image;}
sub insert_image
{
print "Сработало!!!";
$filename = $query->param(\'uploaded_file\');
@fname = split(/\\\\/,$filename);
$kk = @fname;
$filename = $fname[$kk-1];
chop($filename);
$fh = $query->upload(\'uploaded_file\');
open (F,">$filename") || die "Ошибка при открытии $filename";
binmode(F);
while (<$fh>)
{
print F $_;
}
close(F);
}
Название: Почему не работает скрипт для аплода картинки???
Отправлено: pirojok от 10 Марта 2005, 16:35:30
А вот так работает!!!:))))
#!/usr/bin/perl
use CGI;
$query = new CGI;
# Код для формы
print $query->header;
print $query->start_multipart_form(-method=>\'post\', -action=>\'upl.pl\');
print $query->filefield(-name=>\'uploaded_file\');
print $query->submit(\'button_name\',\'value\');

if ($query->param(\'uploaded_file\') ne \'\'){&insert_image;}
sub insert_image
{
print "Сработало!!!";
$filename = $query->param(\'uploaded_file\');
@fname = split(/\\\\/,$filename);
$kk = @fname;
$filename = $fname[$kk-1];
chomp($filename);
#$filename=~s/\\w+//;
#$filename=~s/([^\\/\\\\]+)$//;
#$filename=$1;
#$foto = $query->upload($filename);
$foto = $query->upload(\'uploaded_file\');
open (F,">1/$filename") || die "Ошибка при открытии $filename";
 binmode F;                              # включить binmode для Windows
 print F while (<$foto>);                # и скопировать данные в файл
 close F;
 print $filename;
}