現在cgiでメールフォームを作成しています。
sendmail使用、ファイルのエンコーディングはShift_JIS、改行コードLF
htmlのフォームから情報を入力し、
perlで入力内容の確認、
cgiでメール送信までは実行できました。
他の項目(件名やメールアドレスなど)はメール内容に反映されているのですが、
本文のみ空白となってしまいます。
本文に関わるコードは下記になります。
use CGI;
$cgi = new CGI();
$maintxt = $cgi->param('maintxt');
$cgi->charset('Shift_JIS');
$maintxt = $cgi->escapeHTML($maintxt);
&jcode::convert(\$maintxt,'jis');
print MAIL "Content-Type: text/plain; charset=ISO-2022-JP\n";
print MAIL "Content-Transfer-Encoding: 7bit\n";
print MAIL "$maintxt\n";
cgiは勉強中なもので、解決方法がお分かりの方がいらっしゃいましたら、
教えていただければ幸いです。
No.1ベストアンサー
- 回答日時:
おそらく、ヘッダーと本文の区切りの空行が出力されていないからでしょう。
「print MAIL "$maintxt\n";」の行の前に「print MAIL "\n";」を追加すればよいかと。
ちなみに、提示されているロジックより前の方で
open (MAIL, "| sendmailのパスとオプション") ・・・
とやっていると思いますが、デバグ時には一時的に
open (MAIL, "> デバグ用のファイル") ・・・
の様にしてファイルに出力してやると確認が楽です。
この回答への補足
check_inquiry.plで内容確認を通さずにsendmail.cgiにactionのパスを指定すると解決しました。
plの方は後々調整したいと思います。
ご回答ありがとうございます。非常に助かりました。
print MAIL "\n";
print MAIL "本文テスト";
と記述することで本文の出力が確認できました。
デバグ時には、教えていただいたことを参考にテストしていきたいと思います。
※
print MAIL "本文テスト"を print MAIL "$maintxt\n";とすると内容は出力されませんでした。
plでの入力内容確認画面では$maintxtをフォームから読み込めているのですが、sendmail.cgiの方では呼び出せていないのでしょうか…
もし原因がお分かりでしたらご回答いただければ幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- CGI CGIで出力するhtmlの<!DOCTYPE html>等のタグは要りますか? 2 2023/02/05 21:26
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- CGI CGIが読み書きするデータファイルのパーミッションはさくらのインターネットでは何にするべき? 1 2023/05/02 16:44
- ホームページ作成・プログラミング CGIが実行可能なHP領域又はレンタルサーバーでおすすめの所を教えてください 現在ホームページ領域の 1 2023/01/01 11:47
- CGI サイト訪問者の情報を取得したい 1 2023/02/21 11:03
- Perl perlの構文でカンマの意味が分からない 2 2022/10/30 01:53
- CGI (フリーの)ツリー掲示版CGI、昔は多用させてもらいましたが・・今セキュリティ上どうでしょう? 2 2023/06/25 07:18
- CGI htmlからcgiを自動的に起動させたい 1 2023/02/21 19:39
- PHP Content-Typeが機能していない? 2 2022/07/17 11:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CGIでソースがそのままでてしま...
-
CGIが実行されずにダウンロード...
-
Linuxで拡張子は必要か
-
EXCELファイルに誰がアクセスし...
-
《エクセルVBA》「他の人が該当...
-
FTPにて553エラー
-
特定のCGIだけ、作動するかわり...
-
ユーザの所属するグループを取...
-
URLに~/cgi-bin/~を隠す方法
-
VBAでサーバーにアクセスするに...
-
「からし」と「マスタード」の...
-
CGIの設置が分かりません・・・
-
FFFTPでアップロードできない?
-
PerlでFindFirst/FindNext
-
Image::Magickの呼び出し
-
mathtexの導入方法について。
-
Javascript から CGI の呼び出し
-
safariでcgiが表示されず cgi...
-
vbでFTPサーバーに対して、サー...
-
ネットワーク上の共有フォルダ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CGIでソースがそのままでてしま...
-
FC2レンタルサーバーライトでの...
-
.cgi拡張子のままCGIファイルを...
-
XサーバーでCGIを使うには??
-
Linuxで拡張子は必要か
-
htmlに外部のcgiを読み込む
-
CGIが実行されずにダウンロード...
-
2apesの掲示板。
-
cgiのファイルが消せません
-
ブラウザ上でファイルをアップ...
-
UTF-8で書いたperlのパスが正し...
-
hp 送信する情報を・・・
-
BBS掲示板でのhtmlとcgiの関係...
-
注文フォームの確認画面を直したい
-
cgiファイルを直接は見れなくす...
-
phpの中で外部のcgiを実行させ...
-
URLがhttp://~.cgiとなってい...
-
フレームページでSSIを使ってア...
-
CGIだけで動作するフリーの日記...
-
ホームページ制作王2002のカウ...
おすすめ情報