Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Post 如何使用Google应用程序脚本将表单提交发布到Google Drive电子表格_Post_Google Apps Script_Spreadsheet_Google Drive Api - Fatal编程技术网

Post 如何使用Google应用程序脚本将表单提交发布到Google Drive电子表格

Post 如何使用Google应用程序脚本将表单提交发布到Google Drive电子表格,post,google-apps-script,spreadsheet,google-drive-api,Post,Google Apps Script,Spreadsheet,Google Drive Api,我想在我的网站上创建一个表单,当用户提交时,它会将他们的数据发布到我的Google Drive中的特定电子表格中。如何使用谷歌应用程序脚本实现这一点 样本表格 <form method='post' action='https://script.google.com/macros/s/xxxx.....'> Favorite Color <input type='text' value='' name='color' /> Favorite Ice Cream F

我想在我的网站上创建一个表单,当用户提交时,它会将他们的数据发布到我的Google Drive中的特定电子表格中。如何使用谷歌应用程序脚本实现这一点

样本表格

<form method='post' action='https://script.google.com/macros/s/xxxx.....'>
  Favorite Color <input type='text' value='' name='color' />
  Favorite Ice Cream Flavor <input type='text' value='' name='flavor' />
  <input type='button' value='submit' />
</form>
这在GAS中是可行的,还是这类任务更适合googledrivesdk(通过Javascript)


更新

使用中的示例来完成脚本

这是我目前编写的脚本。。。而且很有效

var SPREADSHEET_ID = '0Aqa6DbU_0sv7dGNrMEEybjNrdm00MlpwTTNx...';

function doPost(e) {
  var app = UiApp.getActiveApplication();

  SpreadsheetApp.openById(SPREADSHEET_ID).getSheetByName('RequestInvites').appendRow([e.parameter.emailAddress, 'hash123']);

  app.add(app.createLabel("Form submitted. Your email address is: '" + e.parameter.emailAddress));

  return app;
}

function createForm(e){
   var app  = UiApp.createApplication();
   var form = app.createFormPanel();
   var flow = app.createFlowPanel();

   flow.add(app.createLabel('Enter your email address to get an invitation').setId('inviteLabel'));
   flow.add(app.createTextBox().setId('emailAddress').setName('emailAddress'));
   flow.add(app.createSubmitButton("Request Invite"));
   form.add(flow);

   app.add(form);
   return app;
}

你可以用汽油。在脚本中,当点击submit按钮(您可能已经忘记;)时,使用
函数doPost(e)
检索用户输入

在doPost函数中,您可以使用其“name”属性访问输入,如:
e.parameter.color
e.parameter.flavor

然后,您可以使用电子表格服务在电子表格中写入内容。此服务的文档是。因此,您打开电子表格,并在正确的表格中添加一行,如下所示:
SpreadsheetApp.openById(“电子表格的id”).getSheetByName(“颜色和口味”).appendRow([e.parameter.color,e.parameter.flavor])

让我们回顾一下:

function doPost(e) {
  SpreadsheetApp.openById('id of your spreadsheet').getSheetByName('colors_and_flavors').appendRow([e.parameter.color, e.parameter.flavor]);
}

希望能有帮助!;)

谢谢你的解释。现在的问题是,我正在使用UI服务生成一个应用程序。现在我有一个非常基本的脚本。也许你能帮我找出问题所在。我会更新我的问题——我刚刚意识到我需要添加一个表单元素。
function doPost(e) {
  SpreadsheetApp.openById('id of your spreadsheet').getSheetByName('colors_and_flavors').appendRow([e.parameter.color, e.parameter.flavor]);
}