• ベストアンサー

HTMLでメールフォーム

HTMLで簡単なメールフォームを作ろうとしているのですがプロバイダのメールサーバー(?SMTP?)を指定するようなのですがこれを設定するにはプロバイダに対してなにか申し込みなど必要なのでしょうか? 単純なHTMLしか知らない無知な状態でもしかしたら変な質問かもしれませんがご存じの方いましたらよろしくお願いいたします。

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

  • ベストアンサー
  • const
  • ベストアンサー率66% (12/18)
回答No.3

sendmailはWebからはアクセスできません。 CGIから間接的に呼びだす必要があるのでその場合HTMLは <form method="post" action="CGIのパス">... となり、CGIスクリプトの所定位置にsendmailのパスを書き込みます。 ちなみにメールフォームのレンタルを行っているところがあります。 「無料メールフォーム」等のキーワードで検索するといくつかhitするので、それらを利用するのも一の手です。

その他の回答 (3)

  • rightegg
  • ベストアンサー率41% (1357/3236)
回答No.4

こんにちは。 ちょっと詳しき書きます。 前回「メールアドレスを入れたら動作する」と書いたのは、正確には、formタグのactionに、「mailto:受信者のアドレス」と書くという意味です。 これは誰にでも出来るものなので、動作しない、という事態がちょっと考えにくい。 デメリットを要約すると、 http://www.tohoho-web.com/wwwmail1.htm という事です。 これを理想的な形で解決出来ているのであれば逆にその方法をお教え頂きたいくらいです。 どちらにせよ、あまり一般的な方法だとは思えませんので、どういう方法で実現しようとしているか補足願えますか?

  • capuchin
  • ベストアンサー率46% (13/28)
回答No.2

メールフォームを利用するためにプロバイダに対しての申し込みが別途必要というのは通常無いかと思います。 レンタルサーバなどならともかく、通常の個人向けのプロバイダが提供するホームページスペースであれば、メールフォームは使用可能か不可かという記載がどこかにあると思いますし、cgi使用不可であれば、専用のフォーム画面などが提供されている事が多いと思います。 先に回答された方の記載にもありましたが、やはりsendmailというコマンドがお使いのプロバイダで使えるかがポイントだと思います。 こいつが使えれば、 <FORM METHOD="POST" ACTION="sendmailプログラムの格納場所"> という、簡単な1行及び、残りの入力Formタグの記載で全て解決です。

  • rightegg
  • ベストアンサー率41% (1357/3236)
回答No.1

こんにちは。 単純に送信先アドレス(受け取りたいアドレス)を入れても動作しますが、文字化けの可能性があるので、大抵の場合はcgi経由にします。 cgiを使う場合の問題はあなたの使っているプロバイダ(というかホスティング業者)がcgiを許可しているか、そしてsendmailが使えるか、ですね。

milk_and_honey
質問者

お礼

早速ありがとうございました。 文字化けに対しての対策は色々なページを参考にさせていただいてなんとかなりそうなのでHTMLでやりたいと思っています。 一応アドレスで指定してみたのですがまったく動作しなかったのでメールサーバーを指定するしかなさそうなんです。

関連するQ&A