レポ
クラウドで
伸びる人沈む人

連絡特定商取引将来設計運営方針&メルマガSEの彼女は?
成功レポート集 Fedora9インストール! EclipseでJava Oracleバックアップのアーキテクチャ ゼロからHPでCGI 便利ネット知識
無料レポ&講習 IT業界の実態 linux処方箋 Java処方箋 Oracle処方箋 Perl処方箋
Perlのプログラムを実行するときのGETとPOST

<IT技術の処方箋:Perlのプログラムを実行するときのGETとPOST>



WEB上で、Perlのプログラムを実行するときの
パラメータは、GET,POSTとCookieがあります。

実は、この2つのパラメータは、
取得順位があります。Cookieを先に取得しないと
うまくいかないサーバーが存在することが確認されています。

●以下のサンプルのように、make_in(Get,Postの取得)より
Cookieを先にソースに書きましょう。

サンプル
#!/usr/bin/perl

&GetCookie; #make_inより、GetCookieを先に
&make_in;

sub GetCookie {
local(*COOKIE) = @_;
local($name, $value);
foreach (split(/; */, $ENV{'HTTP_COOKIE'})) {
($name, $value) = split(/=/);
$value =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack("C", hex($1))/eg;
$COOKIE{$name} = $value;
}
}

sub make_in{
if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); }
else { $buffer = $ENV{'QUERY_STRING'}; }
@pairs = split(/&/,$buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
&jcode'convert(*value,'sjis');
$in{$name} = $value;
}
}


クラウドで伸びる人沈む人 ||Copyright © 2005-2020 SearchMan,All Rights Reserved.