不写一行代码,如何实现前端数据发送到邮箱?

d49e627108b53ffc1b3fa10227743c8d.gif

作者 | 刘早起

来源 | 早起学Python

经常在很多网站上都能看到类似的表单信息功能,用户只需要填写相关内容,点击提交按钮,就可以将表单内容发送到管理员邮箱。

0a131aba2eef51a683d82e1224031b96.png

恰好最近在折腾我的网站时,也想添加一个这样的功能,但是搜了一圈后,这样的功能要么是使用Wordpress构建的网站,后台有现成的功能,要么就是使用php或者C#作为后端实现的,而我的网站是基于原生H5写的,没有相关后端与数据库交互,该怎样实现呢?

稍加思考后,就会发现,本质上就是要将点击按钮和发送邮件功能进行绑定,那么有没有什么简单的方法呢?本文就将介绍如何使用Google Apps Script来实现网站发送表单数据到邮箱

“后端”操作(Google Apps Script)

虽然本文介绍的方法比较简单,无需写一行代码,但是仍需要你进行一些“后端”的操作,来将前后按钮和发送邮件功能进行绑定。

1.制作存储表格

首先我们需要登陆Google表格并创建一个用于存储邮件信息的电子表格,注意需要设置好你需要的字段

5caff3ceae6e0f74683c7ffccb0f1172.png

当然可以直接打开下面的模版来创建一个副本

https://docs.google.com/spreadsheets/d/1Bn4m6iA_Xch1zzhNvo_6CoQWqOAgwwkOWJKC-phHx2Q/copy

2.创建脚本

现在,我们进入刚刚创建的表格来启动Apps脚本

3b45fbcf4f8e47a5edb4241ca426777d.png

3.修改目标邮箱

现在我们需要修改刚刚打开的js文件中的参数来指定发送邮箱

44c61dc30173e73994c7c9decefb4725.png

注如果你不修改这行参数的话,只要别人进入你的网站,F12修改相关参数即可将邮件数据发送至他的邮箱!

当然,你也可以在不在这里指定发送邮箱,反之将这个关键词做为表单选项,来在填写时指定!

ad356829fc8235e30255067b5d44d090.png

修改之后,保存即可。

4.发布 Web 程序

现在,我们需要发布并部署脚本

a88b13995c6724aefead763d66c9f73a.png

需要注意的是,要将权限设置为所有人

5a10477c08f935a09806e867a2a61923.png

5.授权脚本发送邮件

现在,我们已经创建了一个能够发送邮件的脚本,下一步需要对它进行授权

66c1b23a57cd64667a2ca3ecb7ea5f78.png

点击后按照提示进行授权

67fe476fefb4508c9e8549930e9a1293.png

最后,你会得到一串网站,将它复制保存

9ad0485e5b9fdd3c5b4c176352f070f9.png

到这里,我们“后端”操作就完成了!虽然步骤有些复杂,但是比 php 或者 C# 等代码实现还是要简单很多。

前端操作

6.修改 form 标签参数

现在,可以打开我们表单所在的html文件,按照如下提示进行修改

  • 每个表单元素的name属性都必须与Google表格中的列名相同

  • 表格class必须是gform,即<form class="gform">

  • action修改为刚刚复制的链接

b0f9931c98f791b471b7e8fe29db918f.png

7. 发送表单数据

现在,任何人都可以填写对应表格内容,并点击发送

85d463c0d4520e46f3ee2bd0d86708ab.png

你的 Google 表格中就会增加一条数据

ce2e52e8967864574713df56883ebc9f.png

并且你的邮箱中也会收到一封新增内容的邮件

229a86299acc55a914a2a13398894797.png

至此,我们仅通过 Google 表格与简单的脚本修改就完成的 html 表单数据发送至邮箱!

8.(可选)使用 Ajax

虽然我们的需求已经实现,但是在刚刚点完发送之后,会跳转到一个新的页面

00f6e3899f895a6b2f774045d4273580.png

为了页面不修改,我们需要使用AJAX提交表单,首先需要从下面的链接中下载对应的js文件到项目目录

https://github.com/dwyl/learn-to-send-email-via-google-script-html-no-server/blob/master/form-submission-handler.js

并将下方代码添加到网页文件中

<script data-cfasync="false" type="text/javascript" src="form-submission-handler.js"></script>

刷新页面,现在我们可以直接在当前页面提交表单!

9.(可选)添加感谢

如果你想在用户提交表单后发送一段感谢语,可以将下面的内容插入在form标签结束之前

<div style="display:none" class="thankyou_message">
 <!-- 修改下方内容 -->
 <h2><em>Thanks</em> for contacting us! We will get back to you soon!
 </h2>
</div>

当然你也可以使用CSSJS来让你的表单更加酷炫,但这不是本文要讨论的主要内容。

好了,至此,你应该学会如何利用 Google 表格来快速的实现前端数据发送到指定邮箱,如果你对本文的内容感兴趣,不妨亲自动手尝试一下~

ae1c19c0a30743856033d39c6162e8b4.gif

技术

强大的Gensim库用于NLP文本分析

资讯

何同学又上热搜了,这次为什么?

技术

手把手教你用Python绘制桑葚图!

技术

用Python打造一个语音合成系统

e9dd9950173a82de4e1eba8042bf0682.png

分享

4798d5411290e185dab411159e4d7fe1.png

点收藏

c01d79ec750ecbe3b5f4e656831d828e.png

点点赞

fbe3ed0aed88d64dad9069642bf87dac.png

点在看

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值