【HTML】メーラーを起動して質問内容を送信する方法

このQ&Aのポイント
  • HTML言語を使用して、質問内容をメーラーを起動せずに送信する方法をご紹介します。
  • 集計先のアドレスを公開し、質問事項の回答をHTML言語のみで集めることが可能です。
  • この方法をさくらサーバーで実現することができます。
回答を見る
  • ベストアンサー

【HTML】質問内容をメーラーを起動して送信させる方法

まず、質問を記入させるページへユーザーを誘導し。 質問事項を記入していだたきます。 すべてを記入し終えて「送信」ボタンを押すと 質問事項の回答が集計先に届くという仕組みにしたいです。 理想はメーラーが起動せず集計先に届くのが良いのですが。 cgiという難しい知識が必要と聞きました。 集計先のアドレスは公開されてもかまわないのでHTML言語のみで上記の実現は可能でしょうか?(そうするとメーラー起動し質問内容が本文に記載された状態にまで持っていくことの実現となります) このページをさくらサーバーというところでお借りしたページで行おうとしています。 アドバイス宜しくお願いいたしますm(_ _)m 何か不足な情報がありましたらご指摘ください。

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

  • ベストアンサー
回答No.5

<修正> 修正には index.htm phpmailw.php の2つを修正することになります 入力する時の画面は index.htm を修正します 位置や文字の大きさ 色や背景 画像など 好きなように レイアウトを変えてかまいません 入力項目は だいたい希望にあわせているので HTMLが分かれば 修正できると思います  FORMタグの中に全部入れて NAMEだけ重複しないようにしてください 宛先だけ 不要なので 削除してください 宛先は PHPで指定します phpmailw.php の修正が必要です メモ帳のようなテキストエディタで修正できます メモ帳ではできないので ソフトを用意します http://www.vector.co.jp/soft/win95/writing/se104390.html インストールして 起動して phpmailw.phpを開いて下さい $myTO = $_POST["myTO"]; これが宛先の設定部分です $myTO = "test@test.co.jp"; のように変えて 受け取る宛先のメールを指定してください 修正したら 保存してください これで index.htmで宛先を指定しなくても 決めた宛先に届くようになりました XAMPPで確認してください http://localhost/PHPmailW/index.htm 宛先を記入せずに 同じようにメールを受信できたらOKです

yasu0215
質問者

補足

ご回答ありがとうございます。 こちらの編集も大枠は終了し、細部修正段階となりました。 あとは、サーバーで実際に運用しで問題なければ! という段階です。 こちらも後日回答いたします。 宜しくお願いいたします

その他の回答 (5)

回答No.6

これまではsendmail機能が使えるサーバが必要でしたが 別なものも用意できるので 設置できない時は連絡ください 機能や画面はそのままでYahooフリーメールなどで受信できます

yasu0215
質問者

補足

今までのテストで成功したファイルでサーバにアップして動作確認してみたところ。 送信ボタンを押すと送信することなく下記のメッセージが表示されました。 Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, support@sakura.ad.jp and inform them of the time the error occurred, and anything you might have done that may have caused the error. More information about this error may be available in the server error log. -------------------------------------------------------------------------------- Apache/1.3.39 Server at tokyobraorche.sakura.ne.jp Port 80 階層は以下となります。index.htmlのアンカーを叩いてformフォルダのindex.htmを開く 流れです。 index.html ┗■form  ┣hozon.txt  ┣index.htm  ┗phpmailw.php 可能であればサクラサーバ上でこの機能を実現したいのですが。。 不可能なのでしょうか・・?

回答No.4

<メール> http://www.vector.co.jp/soft/win95/net/se240895.html http://readygo.s8.xrea.com/php/php_ls01.php メールサーバ Melon をインストールして php.ini と melon.ini を編集してください どこにあるかわからないときは ファイル名で検索してください 説明の通り修正が終わったら Apache XAMPP を停止して再起動してください Melonは起動していたら再起動してください <テスト> http://localhost/PHPmailW/index.htm これを開いて 記入してから 送信 してみてください メールアドレスは 実際に相手のところに届くので 最初は 自分のアドレス にしておいて下さい 届いたらOKです http://localhost/PHPmailW/hozon.txt も確認してください メールが不調でも 記録に残るように txtにも保存するようにしています <実際> ここまでがテストで あとは サーバにアップして 確認することになりますが サーバの機能や 設置の方法は サーバごとにいろいろなので 方法は決まっていません まず PHPが使えること メールが使えること がサーバの条件になります アップロードの方法は 通常はFTPが使えるところでないと PHPをアップすることができません それぞれのサーバの設置方法に従って 正しく設置してください XAMPPで動くなら ちゃんと動くことは確認できているので 他でできないのは 何かの原因があります 別の方法なら動くかもしれません 別のサーバなら動くかもしれません 正しい方法で設置してください

yasu0215
質問者

補足

遅れてしまい申し訳ありません。。 <メール><テスト> まで正常に完了いたしました! <実際>に関してはまた後日行い回答いたします。 一点気になったのですが。 送信される内容を下記の様にしたいのですが可能でしょうか? 名前を例にすると ・現在の送信内容 山田太郎 ・理想とする送信内容 名前 山田太郎 HTMLも勉強中なので詳しくはいえないのですが inputに name="名前" と記載しているので、 このnameという部分を入力内容の前に。。 というようなイメージなのですが・・ 質問の趣旨とは少々外れてしまいそうですが、 宜しくお願いいたします。

回答No.3

<テスト> まずはXAMPPでテストします http://localhost/ これは表示されたでしょうか http://localhost/xampp/phpinfo.php これも見れましたか XAMPPを起動して Apacheを起動してから確認してください <ページを表示するとき>  test.htmを表示する時は 公開フォルダに置きます Cドライブにインストールしたら C:\xampp\htdocs\ という場所があります 他の場所でも \xampp\htdocs\ という場所を探してください ここが公開フォルダになります 表示する時は C:\xampp\htdocs\test.htm に置いて http://localhost/test.htm これを開きます フォルダがあるときは testフォルダ の中の 001.jpg を表示する時は C:\xampp\htdocs\test\001.jpg に置いて http://localhost/test/001.jpg これを開きます 「C:\xampp\htdocs\」と「http://localhost/」は同じということです これより下は フォルダ名 ファイル名 になります 正しい場所に置いて 正しいURLで開くと 見ることができます <メール> フォルダPHPmailWの中にある index.htm phpmailw.php hozon.txt 3つを使います フォルダごと 公開フォルダに移動して C:\xampp\htdocs\PHPmailW\ に置いて  C:\xampp\htdocs\PHPmailW\index.htm を開きます http://localhost/PHPmailW/index.htm これを開いてください 表示されたらOKです 表示されなかったら 置いている場所 と URLを確認してください XAMPPとApacheの起動も確認してください <メール> メールを送るには準備が必要です まだメールを送ることはできません

yasu0215
質問者

補足

ご回答ありがとうございます。 ここまで問題なく完了しました!

noname#79209
noname#79209
回答No.2

> アドレスは公開されてもかまわないので といわれていますが、メールアドレスをホームページ上へ裸のまま書くと、 メールアドレスを収集するロボットに補足されて、スパムが届くようになります。 不特定のアドレスからの質問を受け付けるのであれば、スパムをフィルタリングするのが非常に面倒になるでしょう。 本当はCGIを使ったフォームメールを使った方がよいのですが、少なくともメールアドレスをエンティティ化することを強くお勧めします。 http://hp.vector.co.jp/authors/VA022023/javascript/make_html_entity-ja.htm http://ab.jpn.ph/soft/html_rand.html ご参考まで...

yasu0215
質問者

お礼

回答ありがとうございます。 なるほど、確かにスパムが届く原因になりそうですね。。 こちらは前向きに検討してみます。 ちなみにcgiはむずかしいのでしょうか? 実はサンプルを貼り付けてやってみたのですが、うまくいかずにHTML記述のみでできるかどうかを質問させていただいたのですが・・

  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.1

単純にメーラーを起動するだけなら"mailto" のアンカーで実現可能ですが、本文内に質問事項を記入するなどを考えるのであれば、cgiを使って、フォームから直接メールを送るようにする方がずっと簡単・確実だと思います。 # mailto だと環境依存な点も出てきますので

yasu0215
質問者

お礼

回答ありがとうございます。 環境依存ですか! そうなると、HTML記述のみだとまずそうですね。 やはりcgiですか。。。

関連するQ&A

  • HTMLでメーラーの起動&メール送付

    HTMLの勉強をしている中で、 リンクを使わずに、メーラーの起動をさせることは実現できますでしょうか。 また、メーラー起動後に、メール送付も自動的に行えますでしょうか。 ○イメージ Webブラウザにて、A画面からB画面へと遷移します。 B画面遷移後、クライアントPCにインストールされているメーラー(Beckyやoutlook expressなど)が 起動して、メール送付が行われます。 (B画面へ遷移したら、自動的にメーラーが起動し、メール送付が行われるイメージです。) リンクを使わずにメーラーを起動する方法に関して情報がなく、 実現できるかについて教えていただきたく掲示致しました。 以上、よろしくお願いいたします。

  • Shell関数でメーラー起動して自動送信

    またまた質問させていただきます。VBAのShell関数で メーラーを起動するまではわかりますが、そのあと送信先、件名、本文を EXCELのセルから自動的にコピーし送信まで終える というのはどうやるんでしょうか? VBAの本にはそこまで載ってないような気がするんですが・・・

  • メルアドを一元管理できて、クリック→メーラー起動で複数人に送信する方法‥。

    分かりづらいタイトルで申し訳ありません‥。 現在30人程度のグループでメールのやり取りを頻繁に行うのですが、HTMLなどでアドレス一覧を作り、オンラインで使用することで、変更や追加があってもすぐに皆にわかるようにしています。もちろんクリック一発でメーラーが起動→送信もできます。 今回お聞きしたいのは、そのメルアド郡の横にチェックボックスをつけ、チェックを入れたアドレスが、一度にメーラーの送信先アドレス欄に入るようにしたいのです‥。 そういうことができるCGIなどがあれば教え頂けますでしょうか。。 宜しくお願いします!

  • クリックするとメーラーが起動し、タイトル等が入るシステムについて

    http://www.ubiquitous-p.com/HAKEN/index.html このページの「登録メール」をクリックすると、メーラーが起動する だけでなく、タイトルと本文が自動的に挿入されます。 素人目でソースを見た感じでは、タグだけでできているようですが、 試しにタイトルだけ出るようにしてみたら、うまくいきませんでした。 理由あってCGI等は使用できません。 届いたメールのタイトルを見て、どのページを見てきた人からの メールなのかを判別する必要があり、上記のような方法を検討中ですが、 この方法は簡単にできるのでしょうか? また、他に良い方法はありますでしょうか? 本文は入らなくても構いません。 アドバイス、よろしくお願いいたします。

  • HTML作成 メーラー起動設定

    お世話になります。 ホームページを作成する際、リンクに「mail to」でアドレスを指定するとメーラーが起動するようにできますが、実際に起動しない場合があります。 調べてみた結果、どうもインターネットオプションの設定やメーラー次第らしいのですが、これってページを作成する段階である程度回避することはできないのでしょうか? 会社でホームページを作成した際、校正の際に何人かから「メーラーが起動しない」と言われました。 ユーザー側の設定次第の問題ではあるのですが、閲覧者にとっては不親切なのではないかと思い、なんとかならないかと質問させていただきました。 どうしようもないのならこのままで行きますが、何か方法があれば教えてください。 よろしくお願いします。

    • ベストアンサー
    • HTML
  • HPでメーラーを立ち上げずに送信する方法

    HPでメーラーを立ち上げずに送信する方法 HPにメールコンテンツを取り付けたのですが、送信テストをするたびにメーラーが 立ち上がってしまいます。 それも、記入した本文が反映されず、メーラーが表示されるまでに 「アドレスが受信者に公開され、フォームのデータが暗号化されずに送信されます。送信は続行も出来ますが取り消すことも出来ます」というメッセージが表示され、OKをクリックすると 別窓で空白のページが表示され、その上にメーラーを立ち上げるかどうかのメッセージが表示されます。 許可するをクリックすると空白のページだったものがインターネットに接続出来なかったときのページに変わり、その上にメーラーが表示されます。 そのメーラーには私のメールアドレスと、指定したsubjectは反映されていますが やはり本文が反映されていません。 他のサイトでコメントをしたときはメーラーは開かず、そのまますんなりコメント出来たのですが、 どのようにしたらメーラーを開かずに送信出来るようになるのでしょうか? 以下のソースをbodyタグの中に入れています。 <FORM ACTION="mailto:(この部分にアドレスを入れています)?Subject=(subject名)" METHOD="post" ENCTYPE="text/plain"> <div align="center"> <table border="0"><tr> <TD ALIGN="right" WIDTH="223"> <table border="0"> <tr><td>Name</td> <td><input type="text"size="25" name="名前"></td></tr> <tr><td>Mail</td> <td><input type="text"size="25" name="Eメール"></td></tr> <tr><td>HomeURL</td> <td><input type="text"size="25" name="URL"></td></tr> <tr><td>Mssage</td> <td><TEXTAREA NAME="メッセージ" COLS="23" ROWS="5"></TEXTAREA></td></tr></table> <BR> <INPUT TYPE="submit" NAME="submit" VALUE="Go!"> <input type="reset"value="Reset"> </FORM> 何か記載漏れがありましたらお手数ですがご指摘下さい。 どなたかご指南をお願い致します!

  • mailtoのメーラー起動型で、Subjectに日本語を入れるとメーラー起動後に文字化け。どうやったら治るでしょうか?

    HTMLのソース制作で、mailtoのメーラー起動型の問い合わせをつくらなければなりません。 ところが、以下のようにSubjectに日本語を入れてブラウザでHTMLを表示させて、このmailtoの電子メールリンクをクリックすると、メーラーが起動してメール作成画面に自動的に送信先とSubjectにHTMLで記述した情報が掲載されますよね。 mailto:info@mydomain.com?Subject=お問い合わせ(from ポップ素顔.jp) このSubjectの日本語の部分が何故か文字化けしてしまいます。 OutlookExpress、その他のメーラーでもそうなりました。 全部のメーラーには無理な理由が仮にあれば仕方ないですが、少なくともOutlookExpressでは化けないようにしたいです。 サイトが沢山あるので、どのサイトからの問い合わせなのか掴む必要があるし、サイトが日本語ドメインなので日本語のままでメーラーのメール作成画面のSubjectにできうる限り表示させたいのです。 どうやったら治るでしょうか?

    • ベストアンサー
    • HTML
  • Perlを使ったCGIでHTMLメールの送信

    Perlを使ったCGIからHTMLメールの送信がしたいです。 そして、そのメール本文に、Formタグのボタンを付けて、そこからCGIのページを開きたいです。 メール送信はできていて、受信した時にHTML形式のメールになっているのですが、FormのボタンからさらにCGIを開こうとすると、ページは開いても、Body部分は空の状態のページが開きます。 そのFormの部分は、HTMLのページ上に設置するとそこからは希望通りのページの表示をしてくれます。 メール本文中にFormタグを設置してもうまく動かないのでしょうか。 CGIのメール送信部分は以下です。 my $mailtext =<<"MAILTO_TEXT"; To: aaa@bb.co.jp Cc: From: aaa@bb.co.jp Subject: テストです Content-Transer-Encording: 7bit Content-Type: text/html; charset=ISO-2022-JP テストです。<Br><BR> 下のボタンを押してご確認ください。<br><br> <form name="mst" method="post" action="aaaaaa.cgi" enctype="multipart/form-data"> <input name="submit" type="submit" value="詳細"></form> MAILTO_TEXT open(MAIL,"| $sendmail -f $mailto -t") ; print MAIL $mailtext; close (MAIL); おかしい部分、足りない部分などありましたら教えて下さい。 どうぞよろしくお願いいたします。

  • CGIで得た内容をHTMlページに代入

    たびたびの質問で恐縮です。 HTMLページにラジオボタンを設置し、 これを選んだらこの答え、これを選んだらこの答え、 と、ページを移動させるようCGIを記述しました。 いくつもの質問に回答した結果、 最終ページにひとことコメントを入れたいです。 たとえば Q2でA、Q5でCを選んだ場合は 最終ページで”よくできました”などです。 それを、CGIで表示するのではなく、 HTMLページに代入して表示させたいです。 私のイメージでは、 if ($q1 eq "A" && $q5 eq "C") $ans eq "よくできました"; などと、CGIなどで変数を設定して それをHTMLに埋め込むようなコードを記述すればいいのではないかとか考えて 色々やってみたのですがうまくいきません。 ほかのサイト等色々見ていると、以下のような感じで代入できそうな気がしています。 <p>!ans!</p> どのようにしたらいいのでしょうか? 参考サイト等ありましたら教えてください!

    • ベストアンサー
    • CGI
  • HTML内の入力フォームからのメール送信(NN6)が出来ない?

    お世話になっております、また詰まってしまいました。今回の不具合も過去ログを探して見たのですが見つからなかったので質問します。>html、NN6 (今まででこの不具合に関する質問が無いのが不思議デス。) HTML上で入力フォームで「送信ボタン」を押すと指定されたアドレスに入力された内容を送るページを作りました。 IEとNN4.7では正常に動作してます。が、NN6.2で「送信ボタン」を押すと設定したメーラーが立ち上がってしまい(しかも入力した内容は無視された白紙の新規メールです)、送ることができません。 もし、「NN6はこういう仕様」ということであれば諦めます。そうなるとcgiか、javascript&?subjectなどでなんとか作成してみます。それか、「NN6を使用の方はこちらをコピー&ペーストしてメーラーソフトからお送りください」と表記するしかないですね。 もし同じ不具合に困った方が、いらっしゃいますか?分かる方、教えていただけたら嬉しいです。