したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

プログラムスレッド

43女傑 ◆nDpXSJz8i.:2012/04/18(水) 14:43:34
#!/usr/local/bin/perl

$basedir = './data/';
$ip = $ENV{'REMOTE_ADDR'};
$ip =~ s/([\d\.]+)\.\d+/$1\.\*/;

if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); }
else { $buffer = $ENV{'QUERY_STRING'}; }

if ($buffer eq "") { &error; }
@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;
$FORM{$name} = $value;
}

$buffer = $ENV{'QUERY_STRING'};
$file = "./data/$buffer\.cgi";

if (!(-e $file)) { &error("存在しません"); }
elsif (-z $file) { &error("データ異常"); }

if (!open(IN,"$file")) { &error("ファイルが開けません"); }
@lines = <IN>;
close(IN);

print "Content-type: text/html\n\n";
print <<"EOF";
<html><head><title>ページ</title></head><BODY BGCOLOR=#FFFFFF>

<h2>$FORM{'sign'}</h2>
<font>
foreach (0..1) {

($name,$value) = split(/\:/,$lines[$_],2);
$value =~ s/</</g;
$value =~ s/>/>/g;
print "$name$value";
}
です。
</font><br>
</body></html>
EOF
exit;

sub error {

local (@msg) = @_;
local ($i);

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

print <<"EOF";
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML><HEAD>
<TITLE>不正な動作です</TITLE>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<meta name="robots" content="noindex,nofollow">
<meta name="googlebot" content="noindex,nofollow,noarchive">
<meta name="Berry" content="no">
</HEAD>
<BODY BGCOLOR=#FFFFFF>
<h1>$msg[0]</h1>
EOF
if ($msg[1] ne '') {

print "<ul>\n";
foreach $i (1 .. $#msg) { print "<li>$msg[$i]\n"; }
print "</ul>\n";
}

print <<"EOF";
<h3>[<A HREF=./>戻る</A>]</h3>
</body></html>
EOF
exit;

}


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板