Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.10;
Скачать: CL | DM;

Вниз

Как обработать post?   Найти похожие ветки 

 
Феликс ©   (2003-01-23 13:28) [0]

Метод get, я обрабатываю так:
#!/usr/bin/perl

print "Content-type: text/html\n\n";

local $buffer="";
local $name="";
local $value="";
local $FORM="";

local $buffer = $ENV{QUERY_STRING};

#разбираем форму

local @pairs = split(/&/, $buffer);

foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ tr/+/ /;
$FORM{$name} = $value;
};


$parametr=$FORM{"parametr"};
и.т.д

НО возникла необходимость обробатывать метод POST? Как такое сделать? Соответсвенно нужен исходник.


 
sunwheel ©   (2003-01-23 15:16) [1]

#!/usr/local/bin/perl

print "Content-Type: text/html\n\n";

if($ENV{"REQUEST_METHOD"} eq "GET"){
$query=$ENV{"QUERY_STRING"};
}
elsif($ENV{"REQUEST_METHOD"} eq "POST"){
sysread(STDIN,$query,$ENV{"CONTENT_LENGTH"});
}

@formfields=split(/&/,$query);

foreach(@formfields){
if(/^news_count=(.*)/){$news_count=urldecode($1);}
if(/^lang=(.*)/){$lang=urldecode($1);}
}

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



Страницы: 1 вся ветка

Текущий архив: 2003.02.10;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.017 c
4-29163
vidiv
2002-12-27 11:50
2003.02.10
ПРОГРАМЕРЫ, как в TShellListView сделать фоновый рисунок?


1-28909
Unvisible
2003-01-31 08:42
2003.02.10
Определение RGB кода в Delphi


1-28889
dtm
2003-01-30 13:16
2003.02.10
Обрамление наскольких ячеек в MS Excel при позднем связывании.


3-28643
Andrey
2003-01-23 12:33
2003.02.10
Организация журнал


4-29149
Vladimir_Shk
2002-12-26 11:37
2003.02.10
Закрытие окна