Создание серверных приложений на языке PERL

ремонт стиральных машин ардо wellservice.ru

Пример 2.


Рассмотрим пример открытия и чтения каталога и вывод списка файлов,содержащихся в нем.Начало скрипта можно взять из предыдущего примера.Предположим,что пользователь,зарегистрированный на веб-сервере,хочет войти в свой домашний каталог.

#!/usr/local/bin/perl #Объявляем глобальные переменные.

$request=$ENV{'REQUEST_METHOD'}; $content=$ENV{'CONTENT_LENGTH'}; $basedir="http://www.mydomain.com/~"; $file="login.txt"; $url="http://www.mydomain.com"; $dir="f:/home/"; $cgi="f:/usr/local/apache/cgi-bin";

#Подпрограммы для декодирования данных из формы.

sub urldecode { local($val)=@_; $val=~ s/\+/ /g; $val=~ s/%[0-9a-hA-H] {2}/pack('C',hex($1))/ge; return $val; }

sub strhtml { local($val)=@_; $val=~s//>/g; $val=~s/(http:\/\/\+S)/<A href="$1">$1<\/A>/g; return $val; } ######################################################################

if ($request eq 'GET') { $query=$ENV{'QUERY_STRING'}; } else { sysread(STDIN,$query,$content); }

#Генерируем форму,если никакие данные не введены. print "Content-type:text/html\n\n"; print <<HTML_gen; <HTML><BODY bgcolor="e6e8fa">

HTML_gen

if ($query eq '') { print "Content-type:text/html\n\n"; print <<HTML; <HTML><HEAD>

</HEAD><BODY bgcolor="e6e8fa">

<FORM ACTION="../cgi-bin/fileman.cgi" name="form1" METHOD="POST">

<h2 align=center><font color="ff0000">System login.</font></h2>

<p><center>Please,enter your login name and password: <p><TABLE BGCOLOR="cccccc">

<tr><td colspan=2 align=center bgcolor="99cccc"><b><font color="ff0000">

I am registered user</font></b>

<TR><TD><p><b>Login:</b><TD><INPUT TYPE="text" NAME="login" SIZE="20">

<TR><TD><p><b>Password:</b><TD><INPUT TYPE="password" NAME="pass" SIZE="20">




Начало  Назад  Вперед