如何将 Google 表格与 PHP 网站表单集成:分步指南

王林
发布: 2024-09-05 22:33:41
原创
710 人浏览过

How to Integrate Google Sheets with a PHP Website Form: Step-by-Step Guide

  • 将表单数据直接存储在 Google 表格中有助于改进数据管理和协作。这种集成使各个团队成员能够实时查看和分析数据,而无需处理复杂的数据库查询。

1.创建 Google 表格

  • 前往 Google 表格。
  • 创建一个新工作表并相应命名,例如“表单提交”。
  • 在第一行中,为要存储的数据创建标头。例如,如果您要收集姓名、电子邮件和消息,请创建标题为“名称”、“电子邮件”和“消息”的列。

2.创建 Google Apps 脚本 Web 应用

  • 转到扩展>;应用程序脚本。

3.编写 Google Apps 脚本来接受表单数据

function doPost(e) { let ss = SpreadsheetApp.openById("123123asdasd"); // Change "SpreadsheetAppId" to your actual sheet id let sheet = ss.getSheetByName("Sheet1"); // Change "Sheet1" to your actual sheet name let data; try { data = JSON.parse(e.postData.contents); } catch (err) { data = e.parameter; } sheet.appendRow([data.fname, data.email, data.message]); return ContentService.createTextOutput("Success").setMimeType(ContentService.MimeType.TEXT); }
登录后复制

说明:

  • 函数 doPost(e)

    • 这是 Google Apps 脚本中的一个特殊函数,每当您的网络应用程序收到 HTTP POST 请求时就会触发该函数。 e参数包含表单发送的信息
  • let ss = SpreadsheetApp.openById("123123asdasd");

    • 此行通过其唯一 ID 打开 Google 电子表格。将 ID“123123asdasd”替换为您自己的 Google 工作表 ID,您可以在工作表的 URL 中找到该 ID。
  • varsheet = ss.getSheetByName("Sheet1");

    • 这将检索电子表格中您想要附加表单数据的特定工作表。如果您的工作表有不同的名称,请将“Sheet1”替换为您的实际工作表名称。
  • var 数据;
    • 该变量将在解析后存储传入的表单数据。
  • 尝试{ data = JSON.parse(e.postData.contents); } catch (err) { data = e.parameter; }

    • 这里,代码尝试将传入数据解析为 JSON,假设表单以 JSON 形式发送数据。如果解析失败(意味着表单使用 URL 编码格式),它将回退到 e.parameter,其中包含 URL 编码的表单数据。
    • JSON.parse(e.postData.contents):尝试将请求正文解析为 JSON。
    • e.parameter:如果表单数据以 URL 编码格式发送(这是典型的 HTML 表单),则保存表单数据。
  • sheet.appendRow([data.fname, data.email, data.message]);

    • 这会将表单中的数据附加到 Google 表格中的下一个可用行。数据是从数据对象中提取的,该对象包含表单输入字段
  • return ContentService.createTextOutput("成功").setMimeType(ContentService.MimeType.TEXT);

    • 成功将数据附加到工作表后,此行会向客户端(提交表单的网站或应用程序)返回一条成功消息(“成功”)。
      • ContentService.createTextOutput("Success"):创建包含单词“Success”的纯文本响应。
      • setMimeType(ContentService.MimeType.TEXT):将响应的 MIME 类型设置为纯文本。

4。将脚本部署为 Web 应用程序

  1. 单击“部署”>在脚本编辑器的右上角测试部署。
  2. 选择管理部署,然后单击新建部署。
  3. 在“选择类型”下拉列表中,选择 Web 应用程序。
  4. 在“执行为”下,选择“我”。
  5. 在“谁有权访问”下,选择“任何人”。
  6. 单击“部署”并复制生成的 Web 应用程序 URL。

5。用于向 Google Apps 脚本 Web 应用程序提交表单数据的 PHP 代码

HTML 代码:

    Submit Form 



登录后复制

PHP 代码:

 $_POST['name'], 'email' => $_POST['email'], 'message' => $_POST['message'], ); $ch = curl_init($url); $postFields = http_build_query($postData); curl_setopt($ch, CURLOPT_POST, 1); // Send a POST request curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields); // Attach the POST fields curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Return the response as a string $response = curl_exec($ch); if ($response === false) { $error = curl_error($ch); echo "cURL error: $error"; } else { echo "Server response: $response"; } curl_close($ch); } ?>
登录后复制

以上是如何将 Google 表格与 PHP 网站表单集成:分步指南的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!