• ベストアンサー
  • 困ってます

Google Apps Scriptの質問です

プログラマではありませんが、Googleサイトでサイトを作成しています。 そこでGoogle ドライブの機能を使ってお問い合わせフォームを設置したのですが お問い合わせがあった時に自分にメールが来るようにしたいと思いました。 調べたところ、以下のページでメールを送信するスクリプトを埋め込む方法が紹介されていました。 http://creazy.net/2011/03/google_form_mailsend.html ここの中段くらいにある「sendMailFromFormという名前の関数」をコピーして、自分のサイト用に使おうと思いました。 しかし、プログラム経験がないため内容が難しく、改変の仕方が判りません。 とりあえずメール送信先の「admin@example.com」を自分のメールアドレスにするのだけはなんとなく判りました。 やりたい事は ・お問い合わせしてきた人にはメールを返さなくて良い(自分にだけ届けばOK) ・フォームに「件名」という入力部分はないので、そこは省きたい どこをどう改変すればいいのか判る方おられましたらよろしくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数427
  • ありがとう数2

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

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

フォームの送信があったことをメールで自分に通知されるようになさりたいのであれば、 Google Apps Scriptを使用しなくても通知メールを受け取れますよ。 フォームのデータが保存されるスプレッドレッドシートを開いてツールメニュー → 通知ルール を選んでください。 「通知ルールの設定」という画面が表示されますので、「ユーザーがフォームを送信したとき」という項目にチェックマークを入れ、「通知方法」を選び、「保存」ボタンを押すと「通知メール」の設定ができます。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

回答ありがとうございます。 なんと、スクリプトを使わずともできたのですね。 Gメールではなく別のメアドに送りたかったのですが、調べてみたところ メールの転送もできる事がわかったので、教えて頂いた方法と組み合わせ 問題なくやりたかった事ができました。 助かりました。

関連するQ&A

  • Sendmailの設定について

    こんにちは。sendmailをどのように変更すべきか教えていただきたいのですが、うまく説明できるか少し自信がないのですが、経緯を含めて説明します。 (環境:CentOS Linux 4.6 Sendmail version 8.13.1) ■以前 元々あるサイト(example.com)を運営しており、example.comドメインでメールの送受信もできていました。 この時点で、example.comサイト上のフォームからphpのmailコマンドで、example@example.comにメールを送信すれば、メーラーで受信ができました。 ■現在 今回、google appsを導入してDNSなどを変更し、example.comでのメール送受信は元のサーバではなく、google経由で送受信するようにしました。 これによって1つ問題が生じています。 1.【OK】メーラーによって別ドメイン aaaaaa@aaaaaaa.com から example@example.com への送信 →(その逆もOK) 2.【OK】example.comサイト上のフォームから別ドメイン aaaaaa@aaaaaaa.com への送信 3.【問題】example.comサイト上のフォームから同ドメイン example@example.comへの送信 →【appsで受信できない】※ただし、sendmailのユーザーメールボックスには入っている。 このように、3つ目のケースで受信できないという現象が起きています。 フォームのmailコマンドを実行すると、サーバー内から送信し、外(google apps)へメールが行かずに内部で受け取ってしまう感じです。 これは、sendmailが送る際に、DNSでgoogle appsに飛ばすと認識していないのだろうと思いますが、どうやったら設定できるのかが皆目検討がつきません。最初はqdsmtp(http://hal456.net/qdsmtp/)を入れてフォームの送信方法を変えようと思ったのですが、ssl通信ができない様でやっておりません。 どのようにすればよいのか、詳しく教えていただけると嬉しいです。 宜しくお願いします。 (※当方あまりこのような設定に詳しい方では無いため、私の操作するsendmailの設定画面のスクリーンショットを添付しますのでGUIでの変更方法で教えていただけると大変助かります。)

  • Google Apps Scriptの記述

    フォームに入力したら、フォームに基づいてメールを送れるようにしたいと考えています。 そこで次のScriptを記述しました。しかし、フォームに入力し終わってもメールが送信されません。 Google Apps Scriptの参考サイトも無い事と、Googleも仕様を次々新しくしているので持っている書籍があまり参考になりません。 トリガーは次の通りです。 現在のプロジェクトのトリガーで、実行 mySendhokoku イベントスプレッドシートからフォーム送信時 としています。 scriptは function mySendhokoku(e) { var mail_to=e.nameValues["送信先"]; var datetime= new Date(); var hokoku=e.nameValues["報告種類"]; var kaisi=e.nameValues["開始時間"]; var shuryo=e.nameValues["終了時間"]; var kyukei=e.nameValues["休憩時間"]; var biko=e.nameValues["本文備考"]; var today=formatDate(datetime,"MM/dd"); var subject=hokoku+"連絡"+today+"名前"; var body="名前"+"\n\n"; var body=body+"開始時刻"+kaisi+"\n\n"; var body=body+"終了時刻"+shuryo+"\n\n"; var body=body+"休憩時間"+kyukei+"\n\n"; var body=body+biko+"\n\n"; MailApp.sendEmail(mail_to,subject,body); } ちなみに”名前”と言うところは実際は私の名前が入っています。読み替えてください。 日付は5/5などの様に記述したいと思っています。 初心者で至らない点ありますが、よろしくお願いいたします。

  • バリュードメイン Google APPS運用中です。お助け下さい。

    バリュードメイン Google APPS運用中です。お助け下さい。 ドメイン VD サイト さくら メール APPS の状況で運用していまして、 さくら内のメールフォームが独自ドメインのアドレスが使えないので、 こちらでサブドメインのメールアドレスを取得して 独自ドメインにGmail転送でサブを一本化統合する為、 APPS側のドメインエイリアスで独自ドメインの設定。 その為、サブドメインを取得しXREAに確認用HTMLファイルを置き、 DNS3行目の a subsub 22.22.222.22だけを追加しました。 (11.111.11.11はサクラ 22.22.222.22はXREA) ----------------- a @ 11.111.11.11 a www 11.111.11.11 a subsub 22.22.222.22 mx aspmx.l.google.com. 1 mx alt1.aspmx.l.google.com. 5 mx alt2.aspmx.l.google.com. 5 mx aspmx2.googlemail.com. 10 mx aspmx3.googlemail.com. 10 mx aspmx4.googlemail.com. 10 mx aspmx5.googlemail.com. 10 txt @ v=spf1 include:aspmx.googlemail.com ~all ----------------- XREAのpublic_html内に subsub.example.comのディレクトリ設置し、 index.htmlとgooglehostedservice.htmlを設置。 http://user.s2**.xrea.com/subsub.example.com/index.html http://user.s2**.xrea.com/subsub.example.com/googlehostedservice.html の表示可能確認。 XREAのドメインウェブの設定で Mainは、blank (example.comはDNSで向けているからここは、無しにしてます) subsub.example.comだけ入力(転送先・強制・NoDir 全部無しに) subsub.example.com開く←ここをクリックしても 「ドメインウェブが見つかりません」になります。 数時後に以下の状況。現在48時間以上経過しても同じです。。。 http://subsub.example.com/ 非表示(サーバが見つかりませんでした) http://subsub.example.com/index.html 表示。 http://subsub.example.com/googlehostedservice.html 表示。 APPS側のドメインの設定→ドメイン名→ドメイン エイリアスを追加 で、「 エイリアスの HTML を確認中...」のままです。 何か間違っているのでしょうか?

その他の回答 (1)

  • 回答No.1
  • shylock
  • ベストアンサー率73% (182/249)

ざっと見たところ、これは送信されたフォームの内容をGoogleドキュメント(スプレッドシート)に保存し、それからと投稿者にメールを送信する、というものですね。 あなたが考えているのは、「誰かがフォームから送信したら自分(管理者)に知らせる」というものではないですか? だとすると、全然違います。そもそも、これは管理者にはメールを送りません。メールアドレス不明で送信に失敗した時だけ管理者に連絡するのみですから。 単に、「誰かがフォームを送ったら自分にメールを送って知らせる」というだけなら、以下のように1行で済みます。 function sendMail(e){ MailApp.sendEmail('hoge@example.com', 'フォーム送信','フォームが送信されました。'); } hoge@example.comを自分のメールアドレスにしてください。'フォーム送信'がメールのタイトル、'フォームが送信されました。'がメールの本文です。適当に書き換えてください。送信されたフォームの内容などはメールにありませんが、とりあえず「連絡するだけ」なら十分では。 スクリプトができたら、以下のようにしてフォームの送信イベントにバインドします。 スクリプトエディタの「リソース」から「現在のプロジェクトのトリガー」を選ぶ。 「新しいトリガーを追加」をクリック。 「実行」で作成した「sendMail 」を選択。 「イベント」項目で「フォームから」「フォーム送信時」を選択。

参考URL:
http://libro.tuyano.com/index3?id=645006&page=3

共感・感謝の気持ちを伝えよう!

質問者からのお礼

お返事遅れて申し訳ありません、回答ありがとうございます。 なるほど、勘違いしていたようですね。 スクリプトの使用方法、今後の参考にさせて頂きます。

関連するQ&A

  • google apps script の停止方法

    google apps script について質問させていただきます。 同じような質問があれば本当に申し訳ありません。 Gmailの機能を少し変えようと [Gmailで受信した添付ファイルを自動的にGoogleドライブに保存する方法 ] http://ottan.me/2013/06/10/how-to-save-google-drive-automatically-gmail-attachment/ 上のアドレスにあるような、gmailの添付ファイルを自動でgoogle drive に保存する機能を追加しました。(手順通りにすすめました。) ところがどうもその機能がうまくいっていないのか、毎日のように 「Google Apps スクリプト 失敗のまとめ」のメールが来てしまいます。(添付画像参照) 機能を補修、もしくは消去したいのですが、どこから編集や消去すればよいのかわかりません。 また、自分javaの知識や、プログラミングの知識はほとんどありません。 (知識がないのに手を出してしまったのは反省しています・・・) 機能(google apps script)の補修の方法、もしくは消去の方法がわかる方はいらっしゃいますか。 ご教授のほど、どうぞよろしくお願い致します。

    • ベストアンサー
    • Gmail
  • sendmailで使える記号

    こんにちは。 sendmailでメールの送信を行っています。 RFCの規定上は ! # $ % & ' * + - / = ? ^ _ ` { | } ~ などの記号が使用可能だと分かりました。 しかし上記の一部の記号が入っていると、メールの送信が出来ません。 コマンドラインより、 ------------------------------------ sendmail !#$%&'*+-/=?^_`.{|}~@ example.com From :test@ example.com To :!#$%&'*+-/=?^_`.{|}~@ example.com     ・     ・     ・ ------------------------------------ という形で試しましたが、実行されませんでした。 (表示上、@の後ろにスペースを入れています) sendmailで上記記号を使用可能にするには、何か設定が必要なのでしょうか? よろしくお願いいたします。

  • Googleフォームで作ったお問い合わせフォーム

    Googleフォームで作ったお問い合わせフォームを、 自分のhtmlサイトに使っていこうと思っています。 自分のhtmlサイトは複数あって、それぞれにお問い合わせフォームを設置します。 ここで問題だと思ったのが、 『どのhtmlサイトのお問い合わせフォームから送られてきたか分からなくなる』ことです。 GoogleフォームにサイトURLの項目を入れたらいいのかもしれませんが、 項目は少ない方がいいですし、正しくURLが書かれる保証もありません。 WordPressのプラグイン『Contact Form 7』であれば、 〇〇のサイトから送られてきました。という記載がメールに表示されます。 このように、Googleフォームで作ったお問い合わせフォームが、 どのhtmlサイトから送られてきたか、区別できる方法などはあるでしょうか? また、Googleフォーム以外で、 『どのhtmlサイトから送られてきたかが分かるお問い合わせフォーム』 を作れるサービスなどはあるでしょうか? よろしくお願いいたします。

  • メールフォーム設置の仕方を教えてください

    CGI初心者です。 メールフォームは、HPのサンプル版から使いました(市販)。 送信ボタンを押すとエラーになります。プロバイダはOCNです。 http://kataefudousan.jp/contact.html CGI初心者でよく理解ができません。 http://www.ocn.ne.jp/hosting/usersupport/mw/hp_cgi_04.html ↑ CGIスクリプトについて説明があります。(OCN) contact.cgi ↓ #!/usr/lolal/bin/perl use CGIqw(:cgi-lib :standard); print header(); # ご使用のサーバの perl コマンドへのパスを1行目(この上)に書いてください。 # 「#!」 の前には空白、改行などを入れないでください。 # わからない場合は、サーバの管理者へお問合わせください。 ################################################################ # ご使用時に、この下を編集してください。 ################################################################ # sendmail コマンドのパス(サーバ管理者にお問合わせください。) $SENDMAIL = '/usr/lib/sendmail'; ##### メール設定 # 管理者メールアドレス(このアドレスにメールが送信されます。) $ADMIN_MAIL = 'with-a@u01.gate01.com'; # 管理者名前 $ADMIN_NAME = 'サンプル'; # メールサブジェクト ## ユーザあて $USER_SUBJECT = 'フォームメールを送信しました。'; ## 管理者あて $ADMIN_SUBJECT = 'フォームからのメールです。'; ################################################################ # ご使用時に、この上を編集してください。 ################################################################

  • GoogleドライブのURLのセキュリティは

    大容量のデータを、GoogleドライブのURLをメールに張り付けて送信する場合のセキュリティについて質問します。 GoogleドライブのURLは、多数人へのメールも、ホームページへの掲載も可能とのことです。 ところで、「私がいつも使っているGoogleドライブ」には、いろいろな秘密情報を入れています。 この「私がいつも使っているGoogleドライブ」の中に入っている「あるファイル又はフォルダ(これらは秘密ではない)」のURLを、多数人へメールしたり、ホームページへ掲載した場合、そのURLを手掛かりにして、「私がいつも使っているGoogleドライブ」の中の秘密情報が見られてしまうことはないのでしょうか? 私が昨日、「メール送信(又はホームページ掲載)用に作成したGoogleドライブのURL」を見ますと、私のGメール・アカウントとは関係ないURLのようです。 ということは、グーグルは、「メール送信(又はホームページ掲載)用に作成したGoogleドライブのURL」に関しては、「私がいつも使っているGoogleドライブ」とは別のサーバーに保存しているのでしょうか? もしそうならば、秘密保持は安全かなと思いますが、いかがでしょうか?

  • Googleフォームのsendmailについて

    いつもお世話になっております。(知識がなく「カテゴリ」をPHPにしております。) 早速ではございますが,Googleフォームを使って申し込みサイトを設置しようかと思っております。申し込み頂いた方へは,その内容を保存しておいて頂くためのメールを自動的に送るようにしたいと考え,「Googleフォーム」「sendmail」で検索したところ,以下のサイトがヒットいたしました。 http://creazy.net/2011/03/google_form_mailsend.html これとまったく同じにGoogleフォームを作成し,スクリプトを設置したところ,私が考えているものが送られてきました。しかし,このスクリプトは,「お名前」「メールアドレス」「件名」となっており,私が実際に作成しているGoogleフォームの項目とは異なります。 私の作成している項目は以下の通りです(Googleフォーム上の質問項目と全く同じ)。 お名前 メールアドレス アドレスの再入力 所属(リストから選択)*6項目(リスト)ございます。 〇〇の会員ですか?(リストからの選択)*都合により〇〇と表示 これら以降もう少しございますが,省略いたします(テキスト入力あるいはリストからの選択のみです)。 返信用メール本文には,既存のスクリプトは最大限活用して,つぎのように示したいです。 ************************* ▲▲ 様 申し込みありがとうございます。(→これは該当の日本語を書き換えれば良いのかなと考えます) ------------------------------------------------------------ 【タイムスタンプ】 Tue Sep 01 2015 14:43:09 GMT+0900 (JST) 【お名前】 ▲▲ 【メールアドレス】 ××××@gmail.com 【アドレスの再入力】 ××××@gmail.com 【所属】 〇〇(リストの中から1つ表示される) 【〇〇の会員ですか?】 ◆◆(リストの中から1つ表示される) ------------------------------------------------------------ 後ほど担当者よりご連絡させていただきます。 ************************* 上記のサイトには以下のようなスクリプトが提示されておりますが,なにせ,私には全く知識がなく,下記をどのように修正すれば私のGoogleフォームで機能するのか皆目見当が付きません。 専門家の皆様,この内容の知識をお持ちの皆様,以下のスクリプトを私のフォームで動くように加筆修正頂けますでしょうか。ご多忙のところ申し訳ございませんが,ぜひお願いいたします。 function sendMailFromForm() { Logger.log('sendMailFromForm() debug start'); //------------------------------------------------------------ // 設定エリアここから //------------------------------------------------------------ // 件名、本文、フッター var subject = "[お問い合わせ]"; var body = "お問い合わせありがとうございます。\n\n" + "------------------------------------------------------------\n"; var footer = "------------------------------------------------------------\n\n" + "後ほど担当者よりご連絡させていただきます。"; // 入力カラム名の指定 var NAME_COL_NAME = 'お名前'; var MAIL_COL_NAME = 'メールアドレス'; var SUBJ_COL_NAME = '件名'; // メール送信先 var admin = "admin@example.com"; // 管理者(必須) var cc = ""; // Cc: var bcc = admin; // Bcc: var reply = admin; // Reply-To: var to = ""; // To: (入力者のアドレスが自動で入ります) //------------------------------------------------------------ // 設定エリアここまで //------------------------------------------------------------ try{ // スプレッドシートの操作 var sh = SpreadsheetApp.getActiveSheet(); var rows = sh.getLastRow(); var cols = sh.getLastColumn(); var rg = sh.getDataRange(); Logger.log("rows="+rows+" cols="+cols); // メール件名・本文作成と送信先メールアドレス取得 for (var j = 1; j <= cols; j++ ) { var col_name = rg.getCell(1, j).getValue(); // カラム名 var col_value = rg.getCell(rows, j).getValue(); // 入力値 body += "【"+col_name+"】\n"; body += col_value + "\n\n"; if ( col_name === NAME_COL_NAME ) { body = col_value+" 様\n\n"+body; } if ( col_name === MAIL_COL_NAME ) { to = col_value; } if ( col_name === SUBJ_COL_NAME ) { subject += col_value; } } body += footer; // 送信先オプション var options = {}; if ( cc ) options.cc = cc; if ( bcc ) options.bcc = bcc; if ( reply ) options.replyTo = reply; // メール送信 if ( to ) { MailApp.sendEmail(to, subject, body, options); }else{ MailApp.sendEmail(admin, "【失敗】Googleフォームにメールアドレスが指定されていません", body); } }catch(e){ MailApp.sendEmail(admin, "【失敗】Googleフォームからメール送信中にエラーが発生", e.message); } }

    • ベストアンサー
    • PHP
  • Perl(^^♪sendmailの使い方

    sub mail { # ここからロジック $admin = 'info@uhoo.jp'; open(MAIL, "|$sendmail $admin"); #本番用 と宣言しないと$adminにメールが送信されません。 $admin = 'info@uhoo.jp'; sub mail { # ここからロジック open(MAIL, "|$sendmail $admin"); #本番用 と$adminを宣言するとちゃんと$adminに送信されます。 ちなみに、 $admin = 'info@uhoo.jp'; sub mail { # ここからロジック open(MAIL, "|$sendmail $admin"); #本番用 print MAIL "From: $fn <$admin>\n"; とすると、$adminの内容は表示されますので、$adminに値は 入っています。 sendmailの使い方が間違っているのでしょうか?

    • ベストアンサー
    • CGI
  • JAVA SCRIPTフォームメール複数送信がしたいのですが・・・

    JAVASCRIPTで「お問い合わせ」フォームを作成しました。 送信で指定されたメールアドレスへ送信できるのですが、できれば同時に2人に送信できるようにしたいのです・・・がJAVA SCRIPTでは可能なのでしょうか? もし、可能であるならばその方法を教えて頂けないでしょうか? ※私のHP作成レベルは初心者です。 JAVA SCRIPTフォームメールは、フリーソースを提供して頂けるサイトからコピー&ペーストし、こちらで修正し作成しました。

  • cgi-perl の sendmail について

    cgi-perlのsendmailを使ってWebサイトに問い合わせフォームを作っています。 2つのサイトを同じサーバーに持っているのですが、かたやきちんと送信できるのに、片方はメールが届きません。 メールが届かない方も送信ボタンを押すときちんと出るべき”メールが送信されました”というメッセージは出ます。 このような場合、どこをチェックしたらいいのでしょうか。 もう何度もcgiファイル、htmlファイルを確認して、属性なども確認しているつもりなのですが、きっとどこかが違っているのだと思います。 いっそエラーが出てくれれば、わかりやすいのですが、行き詰っています。 どうぞよろしくお願いいたします。

    • ベストアンサー
    • CGI
  • アンケート・注文フォームの作り方

    こんにちは。初めてCGIに挑戦しようと思っています。 HPの中でアンケートや注文ができるページを作って、 送信された内容をメールなどで受け取れるようにしたいと考えています。 この場合はCGIのsendmail機能を使う事になるのでしょうか? サーバーはトクトクを利用していて、CGIの利用は可能なんですが、 ”sendmail使用不可”と規定されています。 しかしトクトクユーザーのサイトを見てみると、アンケートや問い合わせフォームを 設置されているページがいろいろありました。 これはsendmailではなく、他の方法を用いているのでしょうか・・・?? もしそうならどのような機能なのでしょうか。 おそらくsendmailについての私の認識違いだとは思うのですが、 もし詳しい方がいましたらご教授ください。 よろしくお願いします。

    • 締切済み
    • CGI