
このURLを参考に、フォームの確認ページをつくっているのですが、URLがデコードできません。
何度やってもエラーばかりで…Pealって難しいですね(PHPのほうが簡単)。
どうすればいいですか?
http://www.aimix.jp/cgi/syohofrmgetvw.html
No.2ベストアンサー
- 回答日時:
PHPでもデコードが必要だとは思いますけどね。
モジュールを使わずに自前で実装すれば、どの言語でも難しくなります。
一番簡単なのはCGIモジュールを使った方法です。
サンプルを載せておきますので、参考にしてみてください(動作確認済)。
--- form.html ---
<form action="test.cgi">
<input type="text" name="message" />
<input type="submit" "実行" />
</form>
--- test.cgi ---
#!/usr/bin/perl
use strict;
use CGI;
my $cgi = CGI->new;
my $message = $cgi->param('message');
print "Content-type: text/html\n\n";
print <<__HTML__
<html>
<body>
<h1>MESSAGE: $message</h1>
</body>
</html>
__HTML__
No.3
- 回答日時:
>URLがデコードできません。
の意味がわかりません。
QUERY_STRINGSで受け取ったURLエンコードされた文字列を出コードできないという意味ですか?
$enCodedQUERY_STRING =~ tr/+/ /;
$enCodedQUERY_STRING =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
No.1
- 回答日時:
PealがPerlの間違いだとして(もし、Pealと言う言語の話だったら、話が違うかもしれません)
まずは、そのエラーの内容を確認するのが最初です。
それがわからなければ、何を直せばよいか判断できません。
表示が出ないようなら、2行目に
use CGI::Carp qw(fatalsToBrowser);
とでも入れてください。
エラー内容がブラウザに表示されるはずです。
他にありがちなものでは1行目の
> #!/usr/local/bin/perl
が使っている環境とあってない、というのがあります。
# 2回も「Peal」と書いてることからすると、もしかしたらここもpealになってたりして。
また、ファイルの実行権が無いのかもしれません。
ついでに。
そのサイトを斜め読みしましたが、書き方が若干古いです。
最近では、 use strict して、変数は my を付けて有効範囲を限定するのが主流です(特に規模が大きなスクリプトでは)
また、CGIモジュールを使えば、Perlでもフォームとのデータのやりとりが簡単にできます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
apacheでPerl CGIが作動せず、5...
-
CGIの中で出力するテキスト内容...
-
DBを10件毎に表示ページング...
-
週2回のペースって だいたい何...
-
毎○曜日って、使いますか?
-
エクセルで相対パスの書き方を...
-
月の第一週とは
-
VBA。複数のChangeイベントをま...
-
毎週同じ曜日にラブホに行くと...
-
エクセルで毎月第2週日の水曜日...
-
アンケートなどの1日1回の投...
-
外部データをhtml上で表示させ...
-
メールの受信日時に曜日を表示...
-
土曜日の26時って何曜日の何時...
-
HTTP 200 OKの後のリダイレクト?
-
[Excel] ある日の曜日が当月の"...
-
社外からのアクセスかどうか判...
-
曜日と曜の使い分けがわかりま...
-
Excelで第一〇曜日を求める方法...
-
日本語問題 昨日は何曜日ですか...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
apacheでPerl CGIが作動せず、5...
-
apacheで403を404のように見せる
-
.cgiをhtmlに乗せる方法を教え...
-
CGIで出力するhtmlの<!DOCTYPE ...
-
CGIを使って、ホームページの画...
-
CGIの中で出力するテキスト内容...
-
ユーザーエージェントによって...
-
z.htmlが呼ばれる度にz.plを実...
-
Apacheを入れたのにローカルでC...
-
CGI を HIML に組み込む方法
-
An HTTPdでPerlを動かす
-
他のページを見ましたが「Prema...
-
月の第一週とは
-
エクセルで相対パスの書き方を...
-
エクセルで毎月第2週日の水曜日...
-
毎○曜日って、使いますか?
-
週2回のペースって だいたい何...
-
DBを10件毎に表示ページング...
-
VBA。複数のChangeイベントをま...
-
[Excel] ある日の曜日が当月の"...
おすすめ情報