webアプリからgoogleスプレッドシートへアクセスして、doPost関数からデータを追加したい
タイトルの通り、webアプリからgoogleスプレッドシートへアクセスして、doPost関数からデータを追加したく、参考書のプログラムを基に以下のプログラムを書いたのですがエラーが表示されうまくいきません。このエラー内容が出てしまう理由を教えてください。
また、html文の中のformタグのactionに入れるIDは、WebアプリのIDをと参考書には書いてあったのですがあってますでしょうか。
よろしくお願いします。
発生している問題・エラーメッセージ
TypeError: undefined からプロパティ「parameter」を読み取れません。(行 15、ファイル「コード」)
該当のソースコード
function doGet(e) { var app = SpreadsheetApp.openById('(スプレッドシートのID)'); var sheet = app.getSheetByName('投稿'); var range = sheet.getDataRange(); var temp = HtmlService.createTemplateFromFile('index'); temp.title ='こんにちは!'; temp.msg = '入力してください!'; temp.values = range.getValues(); return temp.evaluate(); } function doPost(e) { var name = e.parameter['name']; var post = e.parameter['post']; var data = [[name,post]]; var app = SpreadsheetApp.openById('(スプレッドシートのID)'); var sheet = app.getSheetByName('投稿'); var row = sheet.getDataRange().getLastRow(); var r = sheet.getRange(row + 1, 1, 1, 2); r.setValue(data); var range = sheet.getDataRange(); var name = e.parameter.name; var post = e.parameter.post; var data = [[name,post]]; var temp = HtmlService.createTemplateFromFile('index'); temp.title ='テスト'; temp.msg = 'データ追加完了!'; temp.values = range.getValues(); return temp.evaluate(); }
html
1<!DOCTYPE html> 2<html> 3<head> 4<base target="_top"> 5<title>hello!</title> 6</head> 7<body> 8 <style> 9 h1{font-size:80pt; font-weight:bold; text-align:right; 10 color:#f0f0f0; margin:-30px 0px;} 11 </style> 12 13<h1><?=title ?></h1> 14 <p>これはhtml文です。</p> 15 <p><?=msg ?></p> 16 <form action="https://script.google.com/macros/s/(WebアプリのID)/exec" 17 method="post"> 18 名前:<input type="text" id="name" name="name"><br> 19 投稿:<input type="text" id="post" name="post"><br> 20 <input type="submit"> 21 </form> 22 <hr> 23 <table> 24 <? for(var n in values) { 25 var line = values[n]; ?> 26 <tr> 27 <? for(var m in line) { 28 var item = line[m]; 29 if(n == 0 || m == 0) { ?> 30 <th><?=item ?></th> 31 <? } else { ?> 32 <td><?=item ?></td> 33 <? } ?> 34 <? } ?> 35 <? } ?> 36</table> 37</body> 38</html>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/05/15 22:28