- ベストアンサー
HTMLからCGIへデータを引き継ぎ
HTMLでメールフォームを作りCGI(Perl)で次のプログラムを作りました。 #!/usr/local/bin/perl print "Content-type: text/html\n\n"; print "$mail\n"; print "$namae\n"; print "$naiyou\n"; 動作確認のためプログラムは少しにしました。何も表示されません。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Perlは汎用のプログラミング言語で、CGIに特化したものではありません。 そのため、PHPのように「フォームで入力された情報が勝手に変数に入る」ということはありません。 明示的に情報を取り込む必要があります。 ・自前でデータ取り込みプログラムを作る ・CGIモジュール等の既存の物を使う よほど古いPerlとかで無い限り、CGIモジュールを使うのがよいでしょう。 「CGI.pm」で検索すれば、解説サイトが見つかります。
その他の回答 (1)
- ORUKA1951
- ベストアンサー率45% (5062/11036)
$mail,$namae、$naiyou には何か入ってるのですか?? Content-type: text/html なら、その後にHTMLが送られてこないとならない。 HTMLは、最低限<body></body>で囲まれた内容がないとならない。 #!/usr/local/bin/perl $mail='ここはタイトル'; $namae = '<dl>\n<dt>名前が入る</dt>'; $naiyou = '<dd>ここには本文</dd>\n</dl>'; print "Content-type: text/html\n\n"; print "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">\n"; print "<html lang=\"ja\">\n"; print "<head>\n"; print "<meta http-equiv=\"content-type\" content=\"text/html; charset=Shift_JIS\">\n"; print "<title>$mail</title>\n</head>\n"; print "<body>\n"; print "<h1>$mail</h1>\n"; print "$namae\n"; print "$naiyou\n"; print "</body>\n</html>\n"; __END__ とか・・
補足
データ読み込みの方法が知りたい。
お礼
参考になりました。