Главная страница


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : Alan Long                            2:5030/1082.72 01 Nov 2002  07:58:10
 To : Denis Knyazev
 Subject : Ещё раз MIME::Tools
 -------------------------------------------------------------------------------- 
 
 * Originally from Denis Knyazev (2:50/551.38) to All.
 
  DK>         Как я понял ЦГИшный param мне возвращает дескриптор,       
  DK> если тип инпута был файл. Как работать с текстовыми
  DK>         файлами вроде понятно. А бинарники ? Как-то можно
  DK>         определить тип переданного в скрипт файла чтобы потом      
  DK>   корректно его прицепить к письму ?
 
 Дык в примере по CGI есть пример как определяется Content-Type того что нам
 отправил пользователь. смотри в сторону uploadInfo.
 
 Вот кусок моего модуля занимающегося примерно этим.
 - --
 package My::Module;
 ...
 sub save_file {
    my   $self = shift;
    my   $data = shift;
    my   $type = shift || 'application/octet-stream'; # тип по-умолчанию.
 }
 ...
 sub upload {
    my   $self  = shift;    # Ссылка на класс 
    my   $q     = shift;    # CGI.pm object
    my   $param = shift;    # имя <input type="file" name="..." ...>
    my   $rc;
 
    if( defined $param and $q ) {
       my $info = $q->uploadInfo( $q->param( $param ) );
       my $in = $q->upload( $param );
 
       $rc = $self->save_file( $in, $info->{'Content-Type'} )
          if( defined $in );
    }
    return $rc;
 }
 ...
 - --
 Hу а в save_file сохраняешь полученный файл с указанным типом.
 
 P.S.
    Использование: (для интересущихся как это может работать без use CGI ;-)
 
 use strict;
 use My::Module;
 use CGI;
 
 $filename = My::Module->upload( CGI->new, 'file_upload_field' );
 
  DK>                                                 WBR, Denis.
 
 -- 
 With best,
      Ъ-·    Ъ
      Е-ЧLaі\і <alan@x-rays.eu.org>
 
 --- timEd/386 1.10+
  * Origin: X - Rays Station (2:5030/1082.72)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Ещё раз MIME::Tools   Denis Knyazev   31 Oct 2002 22:42:53 
 Ещё раз MIME::Tools   Alan Long   01 Nov 2002 07:58:10 
Архивное /ru.cgi.perl/4581dc1fa642.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional