• ベストアンサー

CGIプログラムを使った申し込みフォームをメールからHTML形式で表示したいです

CGIプログラムを使うことにより、WEB上から申し込みフォームを使って入力事項をメールに送信することができますが、一般のサンプルはテキスト形式です。 それをメールのHTML形式で表示させたいのですが、可能でしょうか? 作成してみたのですが、HTMLのタグがそのまま表示されてしまいました。 HTMLで表示するには何か指定をしなくてはいけないのしょうか?

  • CGI
  • 回答数3
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • NINJA104
  • ベストアンサー率43% (133/306)
回答No.3

補足で挙げられた行の他に、メールヘッダを生成する print OUT "From: (メールアドレス)\n"; print OUT "To: (メールアドレス)\n"; print OUT "Subject: (メールタイトル)\n"; 等を記述した行は見つかりませんか? その塊辺りに先述の print OUT "Content-type: text/plain; charset=\"ISO-2022-JP\"\n"; といった表記が有りましたら、これを もし有りましたら print OUT "Content-type: text/html; charset=\"ISO-2022-JP\"\n"; に置き換えます。

ponsuke777
質問者

お礼

できました!!ありがとうございます。 大変、助かりました!!

その他の回答 (2)

  • the845t
  • ベストアンサー率33% (246/743)
回答No.2

補足への回答。 それ以前にあるはずです。 そこにあるContent-typeとかはそのHTMLに対してのもの。 そうじゃなくて、ソレ以前にあるかと。

ponsuke777
質問者

お礼

なるほどーー。 そうゆうことですね。失礼しました。 サンプルを持ってきていたもので。。 解決しました!ありがとうございました!!

  • NINJA104
  • ベストアンサー率43% (133/306)
回答No.1

プログラム中の送信する為のメール文書を生成する辺りに > Content-type: text/plain; charset="ISO-2022-JP" といった表記が有りませんでしょうか? もし有りましたら > Content-type: text/html; charset="ISO-2022-JP" に変更してみてください。

ponsuke777
質問者

補足

print OUT "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN'>\n"; print OUT "<HTML><HEAD><META content='text/html; charset=iso-2022-jp' http-equiv=Content-Type><META content='MSHTML 5.00.2614.3500' name=GENERATOR></HEAD>\n"; print OUT "<body>\n"; print OUT "<DIV>DATE : $date_now</DIV>\n"; print OUT "<TABLE><TBODY>\n"; foreach (0..$count-1) { print OUT "<TR><TD>$DATA_N[($_)]</TD><TD>$DATA_V[($_)]</TD></TR>\n"; } print OUT "</TBODY></TABLE>\n"; print OUT "</body></html>\n"; print "Location: $location\n\n"; exit; } CGIプログラムはこんな感じです。 Content-type: text/html; charset="ISO-2022-JP にはなっているんですけど。。 プログラムの書き方が違うんでしょうか?

関連するQ&A

  • CGIプログラムを使った申し込みフォームをHTML形式のメールで送りました。ソースを開くと文字化けしてしまいます。

    CGIプログラムを使うことにより、WEB上から申し込みフォームを使って入力事項をHTML形式によりメールしました。しかし、ソースを開いてみると文字化けしています。 CGIプログラムは、Shift JIS で保存したものを送信しているのですが。。 どうすれば、文字化けしない、きれいなソースが見れるようにできるでしょうか?

    • ベストアンサー
    • CGI
  • CGIプログラムを使った申し込みフォームに番号を振りたい

    CGIプログラムを使うことにより、WEB上から申し込みフォームを使って入力事項をメールに送信することができますが、このメールに番号をつけたいです。 送信した順に、届いたメールに番号がついているようにすることは可能でしょうか? どうか良い案を教えて下さい。

    • 締切済み
    • CGI
  • メールフォームのCGIプログラムがうまく動作しなくなりました。

    氏名や住所・質問項目を入力しWebフォームから送信して、メールで受信するようなメールフォームページを作っていますが、 メールフォームの項目をテキスト形式(自由記述形式)からプルダウン選択式に変更したところ、メールフォームが正常に動作しなくなりました。 フォームは、以下のように変更しました。 <textarea name="内容"> 自由記述欄  ↓ <select name="course"> 選択式 メールフォームの項目(html)を変更した場合、 それに対応したCGIプログラムも修正する必要があるのでしょうか。 Htmlのメール項目が、どこのCGIに関連しているのかが いまいちわかりません。 素人のため、アバウトな表現になってしまい 申し訳ありませんが、とても困っていますので 教えて頂ければと思います。

    • 締切済み
    • CSS
  • メールフォームのCGIプログラムの動作について

    自分のホームページを制作しています。 氏名や住所・質問項目を入力しWebフォームから送信して、メールで受信するようなメールフォームページを作っていますが、 メールフォームの項目をテキスト形式(自由記述形式)からプルダウン選択式に変更したところ、メールフォームが正常に動作しなくなりました。 メールフォームの項目(html)を変更した場合、 それに対応したCGIプログラムも修正する必要があるのでしょうか。 素人のため、アバウトな表現になってしまい 申し訳ありませんが、とても困っていますので 教えて頂ければと思います。

  • CGIプログラムを使った申し込みフォームでメーラーに送信し、HTML形式で表示していますが文字化けしてしまいます。。

    Perlで書いたCGIプログラムを使って、申し込みフォームを作成し、送信先をOutlookExpressのメーラーにしてHTML形式で表示しています。 サーバーはLINUX、メールを見ているPCはWindows98SEです。 しかし、なぜか申請書という文字が瑞ソ書というふうに文字化けしてしまいます。 他の字は大丈夫のようなんですが。。どうしたら良いでしょうか? もちろん、print OUT "Content-type: text/html; charset=\"ISO-2022-JP\"\n"; の指定はしています。

    • ベストアンサー
    • CGI
  • CGIでのHTMLとプログラムコードの分離について

    CGIでのHTMLとプログラムコードの分離について CGIプログラミングのフレームワーク的なアイデアについてご教示願いたいです。 CGIを記述する場合、その多くは下記のようなスタイルになるのではないかと思います。 1.formタグのactionからcgiを呼び出す     ↓ 2.cgiの中で計算やsendmail等の処理を実行     ↓ 3.結果をブラウザ上に表示するためprint等を利用してhtmlタグを表示 この手法を用いると、手順2のところでHTML部分とプログラムコード部分が混合してしまい、見栄え(html部分)を変更しようと考えた時、HTML部分の記述があるcgiプログラムを編集し、該当する部分のタグを表示させているであろうprint文の表示内容を変更する必要があります。 見栄えのhtml部分とCGIのコードを完全に分離することは出来ないのでしょうか??? 上記手順の「1」に関してはhtmlファイルを編集する事だけで、cgiファイルを編集する必要はありません。 手順「3」もリダイレクトを利用すれば可能だと思います。 問題は、手順「2」の部分です。 この部分の見栄え部分を変えようとすると、どうしてもcgiプログラムを開いて編集する必要に迫られてしまいます。 下記の例のような処理(見栄え用のhtmlファイルを読み込む方法)は出来ないものでしょうか? <例:アンケートフォーム> 1.アンケートフォーム(html)のformタグにあるactionからcgiを呼び出す     ↓ 2.cgiでformタグ内のテキストエリアやラジオボタン等の情報を収集     ↓ 3.収集結果を表示させるための「hantei.html」を読み込む     ↓ 4.読み込んだ「hantei.html」の中に収集結果を埋め込んで表示     ↓ 5.問題なければアンケート結果をsendmail等でメール送信   問題あれば手順1のアンケートフォーム(html)へ戻る     ↓ 6.無事にメール送信出来れば、有難うございましたページ(html)へリダイレクト 上記手順の3と4が実現できれば、見栄えを変えたい時はhtmlファイルを編集すればよく、cgiプログラムを触る必要がなくなるのではないかと思います。 私が考えている事について、「自分はこうしている」とか「そうではなくてこうすれば良いよ」などなどありましたら、是非ご教示願いたいです。

    • ベストアンサー
    • Ruby
  • CGIを使わないフォームメール

    CGI使用不可のWebサーバーにフォームメールを作成しました。HTMLで <FORM ACTION="mailto:送信先メールアドレス" METHOD="POST"> としたものです。 これを使うと 1.送信ボタンを押したら、「このフォームを送信すると、電子メールアドレスが受信者に公開され、フォームのデータが暗号化されずに送信されます。この送信は続行することもできますが、取り消すこともできます。」という非常に物騒なメッセージがでる。 2.受信した時の件名が「Microsoft Internet Explorer から投稿されたフォーム」となり件名を指定できない。 3.受信データがPOSTDATA.ATTという添付ファイルになり、内容がエンコードされたバイトコードでデコードしないと内容が読めない。 CGIを使ってSendmailで送信させればいいじゃないの・・・と思うでしょうが、ISPがCGI使用不可なのです。HTMLフォームで先の1~3が改善される方法はないでしょうか。

  • CGI以外のフォームHTMLについて教えて!

    CGI以外での簡単フォームを希望しています。 下記の記事ではIEにしか認識しないと記されています。 大方のブラウザに摘要するHTMLはないのでしょうか? 宜しくお願い致します。 <form action="mailto:自分のメールアドレス" enctype="text/plain" method="post"> フォームの最初にメールアドレスを指定します。メールでフォーム内の情報を受け取ります。これに関しては「デコードについて」を見てください。 (一番簡単な方法ですが、 mailto をサポートしている Webブラウザは今のところ Microsoft Internet Explorer のみです。それ以外のブラウザでは、送信されない、メーラーが立ち上がる可能性があります。また、Windows XP環境で送信ボタンを押すとメールソフトの「メールの作成」が開いてしまいます。メールソフトを利用しますので、送信者である自分のアドレスが相手に分かります。) 上記フォームサンプルの「action="mailto:aaa @ bbb.ne.jp"」のように自分のメールアドレスを指定した場合、メールで届けられる見本は 「IE から投稿されたフォームのSample」です。

  • CGIを使わず、HTMLだけで作るメールフォーム

    パソコン経験ゼロの友人が、『若いから』というだけの理由で会社のホームページを作らされており、私がいつもアドバイスしているのですが、ちょっと分からない事が出てきました。 ホームページ上で、なんだか抽選でプレゼントをするような企画をやるらしいのですが、CGIを使うのはサーバ管理者に「やめてくれ」と言われたそうなんです。で、たしかHTMLだけでもメールフォームのような物が作れたはずなのですが、私の知識不足でイマイチ分かりません。検索してみても、どうしてもCGIの物ばかりがでてしまいます。作り方でも参考になるページでも結構ですので、どなたか教えてください。 ちなみに形式は、ごくごくありきたりのフォームで、 ・希望のプレゼントのチェックボックス ・氏名のテキストエリア ・氏名フリガナのテキストエリア ・郵便番号のテキストエリア ・都道府県のポップアップ ・住所のテキストエリア ・電話番号のテキストエリア ・メールアドレスのテキストエリア ・生年月日のテキストエリア ・性別のチェックボックス ・コメントのテキストエリア という感じです。これを、メールにして会社の特定アドレスに送りたいのです。はっきり言って、本当にHTMLで作れるのかもよく分かってません。どなたか助けてください!

    • ベストアンサー
    • HTML
  • メールフォームCGIを探しています。

    メールフォームCGIを探しています。 送信先が複数指定できる投稿フォームはありますか? フォームに希望送信先のチェックボックスを置き、記入者が任意の送信先を選ぶことができればbestです。 フォームのHTMLと宛先の追加で可能なのでしょうか? フリー、シェアを含めていろいろ探しているのですがよいものが見つかりません。 お教えいただければ幸いです。 よろしくお願いいたします。

    • ベストアンサー
    • CGI

専門家に質問してみよう