• 締切済み

メールフォーム設置の件で

html5upというサイト(https://html5up.net/)のDimensionというテンプレを使用しているのですが、メールフォームをうまく動作させる事が出来ません。テンプレだけでは動作しないようですが、どのようなものを設置すれば、よろしいでしょうか? ご教授、お願いいたします。 http://studio-key.com/tips/jquery-mailform-01 ここのjQueryを設置し、確認画面まではいけたのですが、送信までいたらず。sendmail.phpの箇所がわかりません。

  • Java
  • 回答数3
  • ありがとう数3

みんなの回答

  • t_ohta
  • ベストアンサー率38% (5080/13275)
回答No.3

>と記載しても動作しないようです。 PHP側でPOSTデータを受け取る $_POST["mail"] とか $_POST["body"] と言った箇所で、フォームの name と配列の添字が違うからとかじゃないですかね。

osat99
質問者

お礼

うーん、postとフォームのnameを揃えてみましたが、ダメです! 難しいなぁ。

  • t_ohta
  • ベストアンサー率38% (5080/13275)
回答No.2

> http://studio-key.com/tips/jquery-mailform-02 こちらのメール送信処理というのが、よくわからず、、、phpで調べてはみたのですが、動作しなかったので、質問させていただいた次第です。 そのページに書かれている送信処理はブラウザサイドの処理だけです。 Ajax を使ってサーバサイドの「sendmail.php」というプログラムにフォームのデータを POST しています。 この時点で、サーバサイドに「sendmail.php」が無ければ動作しません。 説明に書かれている通り「sendmail.php」は仮のもので、ご自身でフォームから受け取ったデータをメールに加工して送信するプログラムを用意しなければいけません。 「sendmail.php」に相当するプログラムは検索するとフリーのモノがいろいろ見付かるので、ご自身が利用しているサーバで動作可能なモノを選んでください。 サーバによって利用できるプログラミング言語の種類に制限がある時もあるので、PHPにこだわらず環境に合わせたモノを用意しましょう。 ISPのホームページスペースを利用している場合、ISPでメール送信用のCGIを用意してくれている場合があるので確認しましょう。

osat99
質問者

お礼

お礼遅くなりました!どうもありがとうございます! sendmal.php、いいのを見つけまして(http://sasuke.main.jp/phpmaikinput.html)、これ単体では動作して、メールも届くのですが、 朝投稿させていただいた(http://studio-key.com/tips/jquery-mailform-01)のjqueryと絡めて、 /* * 送信ボタンを押したとき */ $(document).on('click','#send',function(){ var data = form.serialize(); //フォームの内容を全て取得する $.ajax({ type: "POST", url: "sendmail.php", data: data, async: false, //同期通信に }).done(function(){ form.html('<div class="text-success">メールを送信しました</div>'); }).fail(function(){ form.html('<div class="text-danger">エラーが発生しました</div>'); }); }); と記載しても動作しないようです。 難しいですね。

  • t_ohta
  • ベストアンサー率38% (5080/13275)
回答No.1

html5up のテンプレも jQuery のサンプルも、ブラウザサイドしか用意されていませんので、別途サーバサイドで動作するメール送信用のプログラムが必要です。 「PHP メール送信」とか「Perl メール送信」とかで検索するとサンプルが出てきますので、お使いのサーバにあわせてPHPで行うのかPerlで行うのか、JavaだったりRubyだったり、使えるプログラミング言語を確認して探してみるといいでしょう。

osat99
質問者

お礼

早々のご回答、ありがとうございます!! 質問にも書いたのですが、http://studio-key.com/tips/jquery-mailform-01 ここのjquery.validationEngineを使用し、確認画面まではいけました。その後、http://studio-key.com/tips/jquery-mailform-02 こちらのメール送信処理というのが、よくわからず、、、phpで調べてはみたのですが、動作しなかったので、質問させていただいた次第です。

関連するQ&A

  • このサイトのメールフォームってちゃんとPHPのプログラムは動いているの

    このサイトのメールフォームってちゃんとPHPのプログラムは動いているのですか? http://www.keitai-site.net/php/mailform_php/なのですが、タイトルの通り、このサイトのメールフォームってちゃんとPHPのプログラムが動いているのでしょうか?どなたか設置した方いらっしゃったら教えてもらえますか?私は設置して、試しにメールフォームに全部記入して送信ボタンを押したら、ちゃんと「送信されました」と表示されるのにも関わらず、メールが来てないのです。管理者用のメールアドレスを記入したにも関わらずです。パーミッションの設定に問題があるのでしょうか?

    • ベストアンサー
    • PHP
  • メールフォームCGIの設置について

    下記のサイトのメールフォームCGIをさくらインターネットのサーバーで設置したいのですが、うまく作動せず送信できません。 前にロリポップサーバーで設置したところ、作動し送信も問題なくおこなえたのですが、パーミッションやそれぞれのファイルの中身までロリポップで設置したものとまったく同じファイル・条件でさくらインターネットのサーバーに設置したのですが「500 Internal Server Error」がでてしまい、送信できません。 CGIの提供先は下記になります。 http://pgd.jp/cgiscript.html さくらインターネットのパスなどは下記の通りです。 Perl:5.8.x perl:/usr/bin/perl sendmail:/usr/sbin/sendmai CGIの動作環境は下記の通りです。 Perl5 # /usr/sbin/sendmail が使えること # モジュール HTML::Template, Jcode が動作すること 色々試してはみたのですが、CGIやPerlの知識はほとんどありませんので結局何をやってもだめでした。 パーミッションの設定やファイルのアップロードは間違いなくできております。 よろしくお願い致します。

    • ベストアンサー
    • CGI
  • PHPを使ったフォームメールが文字化けしてしまう

    PHP初心者ですが、設置が簡単ということで、メールフォーム(埋め込み型)を使おうとしているのですが、その部分だけ文字化けしてしまいます。 http://aichan.mbsrv.net/ai/mailform/ メールフォーム配布サイト(こちらで配布されているものを使用しています) http://www.keitai-site.net/php/mailform_php/ 解決しようといろいろ調べたところ、文字コードをPHPファイルに記述すればよい、ということがよく書かれていました。しかしその方法が自分にとって、どうすればよいのかがわからず、こちらで質問させていただいています。 どのようにすればよいでしょうか?アドバイスいただけますでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • phpメールフォームが転送されません

    phpのメールフォームからのメールを受け取れない。OSはXP。ザンプ使用。送信しました画面は正常に動作しますが、受信ボックスに転送されません。php.iniは書き替えましたが、C;¥~xampp~sendmailの書き替えが済んでいません。よければ書き替え方をご教授下さい。よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • Postfixでメールフォーム・・・・

    Vine Linux3.2でサーバーを動かしているのですが、先日CGIのメールフォームを設置できればいいなぁ~と思い、早速インターネットでいろいろと調べたところ、Vine Linux3.2に標準でインストールされているPostfixでもメールフォームができるというとでさっそく試してみました。 まず、KENT-WEBのホームページ( http://www.kent-web.com/ )にあるCGIスクリプト「PostMail」をダウンロードしてsendmailへのパスを/usr/bin/sendmail.postfixに変更し、サーバーにアップして実行してみたのですが、「メール送信失敗」と出ます。 Checkモードで確認してみると メールソフトパス:NG → /usr/bin/sendmail.postfix となっています。 どうすればPostfixでもメールが送信できるようになるでしょうか? アドバイスよろしくお願いします。

  • PHPメールフォームの設定

    コアサーバーに、PHPのメールフォームのインストールをしようとしていますが、 うまくいきません。 どなたか、ご教授頂ければ幸いです。 インストールしようとした、PHPメールフォームは、下記の2つです。 1.ES-FORM 2.Mailform+ Version1.24 (携帯対応埋め込み型PHPメールフォームスクリプト) どちらもサーバーに設置して、アクセスなどをしますが、 フォームがキチンを表示されません。 どちらも、.htaccessを設置したりして、試行錯誤していますが、うまく動きません。 ES-FORMは、フォームがうまく表示できないので、 サーバーの説明によるエラー対策を http://www.coreserver.jp/help/index.php/phperror/ を試みましたが、うまくいきません。 Mailform+ Version1.24 は、パスの設定がうまくいかないようです。 Warning: include() [function.include]: Unable to access /virtual/ken/public_html/■■■■.■■■■/mail/mfp/config.inc.php in /virtual/■■■■/public_html/■■■■/mail/index.php on line 5 などのエラーがでます。 いま、完全にはまってしまい、暗中模索になってしまいました。 恐縮ですが、素人ゆえ、わかりやすく解説、設定方法など ご教授頂ければ幸いです。 以上、よろしくお願いいたします。

    • 締切済み
    • PHP
  • active desktopに設置するフォーム

    activedesctop用にメモ程度のフォームをPHPで作成したのですが、送信を押すとIEが起動してきてしまいます。リンクの動作は問題ありません。 フォームのactionは"./"にしてあります。 送信フォームで新しいウィンドウの起動はactive desktopの仕様なのでしょうか? HTMLはGUIで作成してしまうため、よく理解して下りませんでした>< ご存知の方がいらっしゃいましたらお教え願えればと思います。

  • メールフォーム内容のチェック方法を教えて下さい。

    下記のサイトのフォームを使用しようと思っています。 http://www.keitai-site.net/php/mailform_php/ ●メールアドレス項目にて「正しいメールアドレスが入力されたかのチェック」 ●ID項目を設置し「半角英数字での入力しているかのチェック」を付けたいと思っています。 どのように書いたら良いか教えて下さい。 どうぞ宜しくお願いいたします。

    • 締切済み
    • PHP
  • xamppとsendmail設定とmailについて

    どなたか、下記の内容で解決に導いてくれる方、居られたらと思い 質問させて頂きました。 xampp1.7.1をインストール osはwindowsxpです。 設置した、cgiやphpからのメールについてなんですが、 php.iniの [mail function] ; For Win32 only. ; http://php.net/smtp ;SMTP = localhost ←コメントアウトする ; http://php.net/smtp-port ;smtp_port = 25 ←コメントアウトする sendmail_path = "\"\xampplite\sendmail\sendmail.exe\" -t" のsendmailのパスのコメントアウトだけをはずしました、 それと sendmail.iniの [sendmail] セクション smtp_server= プロバイダのSMTPサーバ名 smtp_port=587 smtp_ssl=auto default_domain= プロバイダのメールドメイン auth_username= プロバイダのメールアカウント auth_password= 上記メールアカウントのメールパスワード force_sender= 上記アカウントのメールアドレス hostname= test 上記を設定 MarcuryMailでは ・Marcury Coreモジュール DDNSでの設定ドメインを設定。例abc.net ・MarcuryS SMTP abc.netの追加とポート587、smtp-authの設定 ・MarcuryP POP  ユーザーの追加 (例 test@abc.net test2@abc.net ) ・MarcuryC SMTP relaying client プロバイダのsmtpホスト、ポート、smtp認証の設定 の3つのプロトコルモジュールを設定 それから、apacheのルートディレクトリにテストで、  (ServerName abc.net:80)を設定しています。 cgiとphpの各メールフォームを設定しました。(その他にも設置していますけど。。。) 各メールフォームのメール送信元を test@abc.net を設定。 ここからなんですが。。。 ローカル内のクライアントPCのoutlookで test2@abc.net のアカウントを追加、 自分宛てに(test2@abc.net)にメールを送ってみる、正常に届いた。 ローカル内のクライアントPCからの接続で、 cgiとphp共に、アクセスしてsendmailの送信テストを行う、、、 アクセスしたForm画面の、メールアドレスに test2@abc.net を入力して 送信しても、メールが来ない、、、 試しに、再度アクセスしたForm画面の、メールアドレスに サーバーに関連していないドメイン(プロバイダやyahoo,Gmailなどのメールアドレス) を入力して送信すると、正常に届きます。 上記の内容で、sendmailを使ってメール送信した際に、 どうしてMarcuryMailで追加した、ドメイン名でのメールアドレスには メールが来ないのか解りません。。。 どなたか、解決に導いてくれる方、居られませんか。。。 よろしくお願いします。 ------------------------------------------ 上記の内容をまとめました。 ↓↓↓ ●MarcuryMailにabc.netを追加 ●MarcuryMailでアカウント、test@abc.net test2@abc.net を追加 ●php.ini と sendmail.ini を設定 ●apacheのルートディレクトリに、cgi と php のテスト用mailformを設置 ●mailformスクリプトの、送信元メールアドレスに test@abc.netを設定 ●テストでローカル内のクライアントPCのoutlookに test2@abc.net を追加   outlookで test2@abc.netにメール送信、無事メールが届く。 ●設置している、cgiとphpのmailformにアクセス、フォーム画面のメールアドレス欄に、   test2@abc.netを入力後送信してもメールが来ない。 ●再度、設置している、cgiとphpのmailformにアクセス、フォーム画面のメールアドレス欄に、   サーバーに関連していないドメイン(プロバイダやyahoo,Gmailなどのメールアドレス)   を入力して送信すると、正常に届く。 ---------------------------------------------- その他機能は正常に動作しています、その他設置済みのwordpressなど。。

  • Jquery AJAXで、1ページに複数のフォームを設置するにはどうす

    Jquery AJAXで、1ページに複数のフォームを設置するにはどうすればいいでしょうか? 現在、以下のコードでメール送信をしてます。 1ページに複数のフォームがあり、押されたフォームボタンによって、そのフォームに対応した各value値をajaxの処理のところで受け取りたいです。 今のコードだと1つ目のフォームボタンを押すと正常にメールが送信されますが2つ目のフォームボタンを 押しても何も起こりません。 formにユニークなidをつけてsendmail.phpに変数を渡す前に、フォームボタンが押される度に ここの値をクリアしなければならないのかなと思っています。 >data : { message: $('#message').val(), exebtn:$('#exebtn').val()}, ----- index.php ------------------------- <略> <script type="text/javascript"> //<![CDATA[ $(function(){ $('#exebtn').click(function() { $.ajax({ type: "post", url : "sendmail.php", data : { message: $('#message').val(), exebtn:$('#exebtn').val()}, datatype:'text', success: function(data) { if(data != ''){ alert(data); }}, }); }); }); //]]> </script> </head> <body> <MTEntries> <form id="link" method="POST"> <input id="message" type="hidden" name="message" value="<$MTEntryTitle$>"/> <input id="exebtn" type="button" name="exebtn" value="リンク切れ"/> </form> </MTEntries> </body> </html> ----------------------------------------- ---- sendmail.php -------------------- <?php header('Content-Type: text/plain; charset=UTF-8'); $off=$_POST["exebtn"]; $message=$_POST["message"]; if ($off != ""){ $to = "hogehoge@hoge.jp"; $from = "hoge1@hoge.com"; $header = "From: $from\n"; $subject = "報告"; $subject = mb_convert_encoding($subject,"JIS","utf-8"); $message = mb_convert_encoding($message,"JIS","utf-8"); $ret = mb_send_mail($to,$subject,$message,$header); if($ret){ $msg = '送信しました'; }else{ $msg = '送信失敗しました'; } } echo $msg; ?> --------------------------------------------- ご教授、宜しくお願い致します。

専門家に質問してみよう