WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:perlによる検索機能

0:[投稿] 片山 涼子 [MAIL] [URL] [2005/05/03 16:09 ][環境:winxp unix]

Perl初心者です。学びながらHPに検索機能をつけようと頑張っていますが、ここ数日この問題で悩んでいます。
スクリプトは以下のようなものをcgiに書いています。
$form{'search'}の部分で値が入っていないようでいつも「失敗」と表示されてしまいます。どなたか間違いの部分をご指摘お願いします。
以下スクリプトです。
#!/usr/bin/perl

use DBI;

&Decodata;
print "Content-type: text/html\; charset=shift_jis\n\n";
print <<"__HTML__";
<html><head><title>test</title></head>
<body>
<form method= "post" action="kensaku3.cgi">
商品検索<input type="text" name="search" size="30">
<input type="submit" value="検索"></form>
__HTML__

if($form{'search'}){&SearchMySQL;}
else
{
print "失敗";
}
print<<"__HTMLEND__";
</table>
</body></html>
__HTMLEND__
exit;

sub SearchMySQL{DB検索部分(略)
}

sub Decodata{
       
            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;
        $FORM{$name} = $value;
        }
       }

sub Error {
print "<P>$_[0]";
}


1:[回答] AC1号 [2005/05/03 18:19 ]

>if($form{'search'}){&SearchMySQL;}
>$FORM{$name} = $value;
perlは大文字小文字を区別します。


2:[回答] 通りがかり。 [2005/05/03 23:30 ]

http://oshiete1.goo.ne.jp/kotaeru.php3?q=1364870

マルチかよ。
Etherskyさんも的確なアドバイスしてるのに、完全無視。
この質問者さん、最悪ですよ。


3:[完了] 片山 涼子 [MAIL] [URL] [2005/05/03 23:41 ]

AC1号様
どうもありがとうございました!
まったく恥ずかしいミスでしたがあきれずにご指摘くださり本当に助かりました。
これで少し休めます。。


4:[完了] 片山 涼子 [MAIL] [2005/05/04 00:11 ]

私の質問の仕方で閲覧者の方に不快感を与えてしまったようで反省しています。
無視していたというわけではなく、きちんと回答者の方にはお礼と回答を投稿していたつもりだったのですが初めて使ったので表示されていませんでした。
いずれにせよ、皆様申し訳ありませんでした。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World