|
|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Artem Chuprina 2:5020/400 26 Jul 2002 11:22:31 To : Alexander Lunkov Subject : Re: upload -------------------------------------------------------------------------------- Здравствуй, Alexander Lunkov. AL> Есть скрипт закачки файлов на сервер. В opera (6.01) всё ок, а в ie5 AL> файлы создаются, но в них ничего не пишется. Ещё и в cgi-bin создаются AL> файлы вида CGItemp28963 в которых содержится содержимое передаваемых AL> файлов. Файлы заполняются и в opera и в ie. В чём я крив? AL> use CGI qw/:standart/; AL> use CGI::Carp qw(fatalsToBrowser); AL> use locale; AL> use strict; AL> print "Content-type: text/html\n\n"; AL> $CGI::POST_MAX=1024*1024; AL> my $c = new CGI; AL> my $path = '../tmp/'; AL> my $file = $c->param('file'); AL> $file =~ s!^.*(\\|\/)!!; AL> print "$path$file"; AL> binmode STDIN; AL> open (FH,">$path$file"); AL> binmode FH; AL> while (my $bytesread = read($file, my $buffer, 1024)) { AL> print FH $buffer; AL> } AL> close FH; AL> зыж Opera и ie по разному передают содержимое <input type=file>. Прихоть AL> программистов? Да. Имеют в принципе право. Есть подозрение, что после операции s с $file оно не изменяется в опере, но изменяется в IE. А поскольку после изменения грязный хак с чтением из $file работать не будет, оно и не работает. Кошерный способ заключается в использовании метода upload, менее кошерный - изменять не $file, а его копию. -- Artem Chuprina Communiware.net RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/358.49, ICQ: 13038757 --- ifmail v.2.15dev5 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/1445490af6d0a.html, оценка из 5, голосов 10
|