新規記事投稿 フォロー記事投稿 記事のキャンセル
From: おとく <toku.FUKUOKA@gwb.kyushu.ntt.co.jp>
Subject: Re:皆さんありがとうございました(報告)
Date: 1997/05/11 04:45:21
Reference: mesh.program/00288

5月9日に、おとくさんは書きました。
にあさん、Toraさん、TADさん 皆さんありがとうございました。
------------------------------------------------------------
皆さんの意見を参孝にURLのデコーダソフトを見つけました。
私と同じように、HTML文でFORMを使ったURLデータを
デコードする方法が分からない方がいるかもしれないので、例文を載せて
おきます。
なお、私のマシンにはコンパイラがないため、例文はPerlを使用して
います、Perlのパスはマシンによって異なることがありますので
変更して下さい。

なお、取得したデータはファイルに収めたいのですが、Perl言語での
ファイル操作方法はまだ勉強していませんので、自分で調べてください。
(^^;;  知っている方がいたら教えて下さい。


------------- HTML文例 ------------------
<HTML>
 <HEAD>
 <TITLE>Tohoho's CGI test 3</TITLE>
 </HEAD>
 <BODY>
 <FORM METHOD=GET ACTION="/cgi-bin/decode.cgi">
     入力:<INPUT TYPE=text NAME="CGI_SAMPLE_MSG">
     <P>
     <INPUT TYPE=submit VALUE="  実行  ">
     <INPUT TYPE=reset  VALUE="  取消  ">
 </FORM>
 </BODY>
 </HTML>
------------ decode.cgi文例 ----------------
#!/home1/ns-home/install/perl

 print "Content-type: text/html\n\n";
 print "<HTML>";
 print "<BODY>";
     if ($ENV{'REQUEST_METHOD'} eq "POST") {
         read(STDIN, $query_string, $ENV{'CONTENT_LENGTH'});
     } else {
         $query_string = $ENV{'QUERY_STRING'};
     }

     @a = split(/&/, $query_string);

     foreach $a (@a) {
         ($name, $value) = split(/=/, $a);
         $value =~ tr/+/ /;
         $value =~ s/%([0-9a-fA-F][0-9a-fA-F])/pack("C",hex($1))/eg;
         printf("%s = %s\n", $name, $value);
     }
 print "</BODY>";
 print "</HTML>";