Posts Tagged ‘файл’

Пример загрузки файла в Perl

Суббота, Август 11th, 2012 Нет комментариев

Under : , , , ,

Этот пример показывает возможность загрузки файла через форму при помощи модуля CGI. Очень просто и красиво.

#!/usr/bin/perl -w $basedir = "/usr/home/kuku/site"; $donepage = "http://www.lala.ru/~kuku/site"; use CGI; $onnum = 1; while ($onnum != 11) {  my $req = new CGI;  my $file = $req->param("FILE$onnum");  if ($file ne "")  {      my $fileName = $file;      $fileName =~ s!^.*(\|/)!!;      $newmain = $fileName;      open (OUTFILE,">$basedir/$fileName");      print "$basedir/$fileName";      while (my $bytesread = read($file, my $buffer, 1024))      {          print OUTFILE $buffer;      }      close (OUTFILE);  }  $onnum++; } print "Content-type: text/htmln"; print "Location:$donepagenn";

(далее…)

Загрузка файла на PERL

Суббота, Август 11th, 2012 Нет комментариев

Under : , , , ,

#!/usr/bin/perl                              # используйте -T для CGI-скриптов $SIG{ALRM} = sub { die "$0 timed out" };     # эти 2 строки не работают под alarm 900;                                   # Windows, но они необязательны use strict;                                  # спасает от глупых ошибок use Fcntl;                                   # O_EXCL, O_CREAT и O_WRONLY use CGI       qw (:standard);                # читайте "perldoc CGI" use CGI::Carp qw (fatalsToBrowser);          # вывод ошибок к browser-у $CGI::POST_MAX = 131072;                     # максимальный ввод = 128 KB my $foto = param ('foto');                   # имя файла и одноврем. handle my $DIR  = '/home/alex/pics'                # не забудьте "chmod 777 pics" my $JS   = "                                   // JavaScript-функция для пред-                                               // варительной проверки формы function check (form) {    if (form.elements['foto'].value.length < 4)// foto должно быть заполнено    {        alert ('A gde zhe foto?');             // показать JavaScript-окошко        form.elements['foto'].select ();       // выделить текст в поле foto        form.elements['foto'].focus ();        // и прыгнуть туда курсором        return false;                          // false запретит browser-у    }                                          // отправлять данные к серверу    return true;                               // все OK - можно отправлять }"; print header (-type  => 'text/html; charset=koi8-r'),      start_html (-title  => 'МИСС ИHТЕРHЕТ',    # напечатать заголовок и $JS                  -script => $JS);           # regex внизу проверяет, есть ли .gif или .jp(e)g в конце и кладет имя # файла в $1 if ($foto !~ /([w-]+ . (?: gif | jpe?g ))$/ix) #только имя,путь выкидывается {    print h1 ('Отправьте нам фото!'),            #start_form работать не будет          start_multipart_form (-onsubmit => 'return check (this)'),          filefield (-name => 'foto'),          submit (-value => 'Go baby go!'),      # напечатать форму с кнопкой          end_form;                              # напечатать } # Этот скрипт никому не мешает вводить мусор (например xxxx.gif) в поле foto, # что приведет к созданию пустых файлов; если это Вас беспокоит, установите # новую версию CGI.pm и прочтите # http://stein.cshl.org/WWW/software/CGI/#upload elsif (not sysopen FILE, "$DIR/$1", O_EXCL | O_CREAT | O_WRONLY, 0444) {    print h1 ("Hе могу создать $DIR/$1: $!"); # ошибка или такой файл уже есть } # Портятся файлы при посылке? См. ниже! else                                           # все в порядке - файл создан {    binmode FILE;                              # включить binmode для Windows    print FILE while (<$foto>);                # и скопировать данные в файл    close FILE;    print h1 ('Сердечное Вам спасибо!');       # воспитывать как собак Павлова } print end_html;                                # напечатать ========================== Если закачка некоторых файлов происходит с глюками - видимо, файл перекодируется на лету русским апачем. Варианты решения: 1.запретите  все  перекодировки  для  скрипта,  который  разбирает FileUpload, например таким способом:    CharsetDisable On    и делайте перекодировку сами. 2.Используйте директиву CharsetRecodeMultipartForms, которая появилась в PL23, но  при  этом  вам  все равно  придется перекодировать вручную текстовые части запросов.  Для этого можно использовать Russian Apache API, доступное в других модулях или Russian Apache Perl API, доступное из mod_perl.

Источник:  internet-technologies.ru

Мощь Windows Vista. Сценарий второй

Вторник, Май 8th, 2012 Нет комментариев

Under : , , , ,

Мощь Windows Vista . Сценарий второй
Поднявшись в лифте на третий этаж, Николай прошел сквозь ряды рабочих мест к своему редакторскому кабинету. Здесь он разделся, умылся и налил уже вторую за начавшийся день чашку горячего кофе. Он сел за свой стол, на котором миленько пристроился десктопный набор с LCD монитором, но не включил последний. Коля наслаждался кофе, рассветом, только если на севере зимою бывают рассветы, каким-то гамом. Это уже другое ощущение, отличное от домашнего уюта, но не менее притягательное для него. Гам, движение, вектор. Все куда-то идут, что-то говорят, обсуждают, спорят, двигая тем самым общую машину, не давая остановиться невидимым шестеренкам. Допив кофе, Коля полез в карман и достал уже упомянутый нами USB брелок с биркой «A bit of my love». На этом небольшом носителе располагались несколько единиц и нулей, являвшихся ключом к рабочему компьютеру – в прямом смысле этого слова. Иначе этот ПК запустить было невозможно – зашифрованный ключ, один из самых надежных алгоритмов нашего времени, то, что открывало рабочий день, лежало на этом брелке. Иначе говоря, это был брелок BitLocker, который охранял информацию на редакторском компьютере денно и нощно. (далее…)

Чем Windows 7 упростила мне жизнь (спец.приз)

Вторник, Май 8th, 2012 Нет комментариев

Under : , , , ,

Не знаю, кто как, но я такое от начальника слышу не слишком часто. К счастью. «Часто — к счастью» — почти в рифму получается… Но суть не в этом. Тем более в тот момент — тогда мне уж точно не до стихов было.

Светлана была чудесным созданием: зеленоглазая длинноволосая блондинка, одаренная от природы во всех отношениях. И пусть злые языки частенько поговаривали, что тут дело вовсе не в милости Творца, и не обошлось без вмешательства пластического хирурга, но уж сомневаться в ее умственных способностях не решался никто — вся корреспонденция, информация о встречах, организация распорядка работы всего отдела — все и всегда было в идеальном порядке. Ей легко можно было бы бессрочно присвоить звание «секретарь года», если бы не одно «но»: Светочка была очень, невероятно, просто чудовищно груба! Ее изощренному хамству поражались даже бывшие школьные педагоги, повидавшие на своем веку всякое.
(далее…)

HTML-приложения: получение параметров командной строки

Воскресенье, Май 6th, 2012 Нет комментариев

Under : , , , ,

Перед вами, уважаемые читатели, очередная статья из цикла, посвящённого HTML-приложениям в Internet Explorer  (HTA). Она рассказывает, как в HTML-приложении получить параметры командной строки.

Параметры командной строки — исключительно мощная вещь. Во-первых, мы можем передавать приложению какие-либо значения уже при его запуске. Во-вторых, мы можем указать режим запуска приложения, скажем, заставить его сразу переключиться на нужное нам «окно». Часто это бывает полезно.

Поддержка параметров командной строки — один из признаков профессионально написанного приложения. Давайте же добавим эту функцию в наши HTML-приложения.
(далее…)

HTML-приложения: файловый ввод-вывод (ч.2)

Воскресенье, Май 6th, 2012 Нет комментариев

Under : , , , ,

5. Проверка существования файла
Часто бывает нужно проверить, существует ли на диске файл с указанным путём, перед его открытием или созданием. Для этого мы можем использовать метод FileExists объекта FileSystemObject. В качестве единственного параметра он принимает путь к файлу в виде строки и возвращает true, если файл с этим путём существует, и false в противном случае.

Код:
var sFilePath = «c:\\Work\\testfile.txt»; (далее…)

WPF: Создание контролов, стили которых зависят от системной темы

Воскресенье, Май 6th, 2012 Нет комментариев

Under : , , , , ,

Внешний вид – важная составляющая при создании интерфейса. Причем, неплохо бы внести разнообразие в него. И вот тут приходится очень кстати замеччательная возможность приложений – использование тем. Сделать свои контролы зависимыми от системной темы очень просто. Все что вам нужно, это папка themes, в которую вы будуте помещать файлы содержащие стили. Имя файла темы должно выглядеть так:

#006 Работа с изображениями / Стили в WPF

Воскресенье, Май 6th, 2012 Нет комментариев

Under : , , , ,

На примере предыдущего материала мы выяснили, что создание графики в WPF  действительно реализовано просто. Однако, сложно представить работу с графикой без возможности использовать готовые изображения, подготовенные в других графических редакторах в форматах bmp, jpg, png, gif. Кстати, в дальнейших CTP мы получим «безграничную поддержку» нового формата Windows Media Photo.

Последний июньский CTP принес целый комплекс неожиданных проблем, связанных с работой с готовыми растрами. Многодневные обсуждения на форумах MSDN  наконец выявили проблему неправильных компиляций и всевозможных ошибок, вроде не совпадения версий библиотеки PresentationCore.dll и других.
(далее…)

#024 – Знакомство с WPF/E

Воскресенье, Май 6th, 2012 Нет комментариев

Under : , , , ,

Не так давно произошел долгожданный релиз набора библиотек Microsoft .NET  3.0 и, возможно, появилась возможность вникнуть более подробно в привнесенные этим набором новшества. Возможно, но не тут- то было. Microsoft в серьез взялась за популяризациюWindows Presentation Foundation  – и вот, с пылу с жару, новый (или не совсем новый) продукт WPF-E. E – это от английского “everywhere” – тобишь WPF  везде. Отбросим мысли о том, что софтверный гигант решил таким образом всего лишь задавить (или все-таки слегка потеснить?) Flash и подумаем о том, что же означает это «везде». А означает это следующее – разработчики веб-сайтов смогут не только создавать стандартные, «тяжелые» XBAP-приложения (для работы с которыми уж очень нужен IE…) но и «легкие», основанные на XAML страницы. И при чем тут «везде»? А при том, что вместе с технологией WPF-E, компания выпустила несколько плагинов (объемом всего-то в один мегабайт), при помощи которых просмотр WPF-E контента в IE, Firefox и даже на компьютерах Apple Macintosh и даже на мобильных устройствах яйца выеденного стоить не будет. Поистине сильно желание Microsoft сразиться с Flash и, надо заметить, некоторые энтузиасты уже сделали абсолютно идентичные проекты на Flash и WPF-E и последний ничуть не уступает первому. Мало того, есть масса способов объединить обе технологии в рамках одного web-сайта, и не только объединить, но даже заставить взаимодействовать. Действительно, огромное поле для творчества. (далее…)

HTML-приложения: работа с файлами, папками и дисками (ч.1)

Суббота, Май 5th, 2012 Нет комментариев

Under : , , , ,

В предыдущей статье цикла, посвящённого HTML-приложениям Internet Explorer  (HTA), мы рассматривали возможности файлового ввода-вывода и учились читать текстовую информацию из файлов и записывать её в них. Теперь мы можем наделить HTML-приложения возможностью работы с документами, хранящимися в файлах.

Однако возможности WSH по работе с файлами этим не исчерпываются. Различные объекты, реализуемые этой программой, позволяют нам также: (далее…)