我正在尝试发送电子邮件给用户表单后提交表单。但我有一个错误:
这是我的.html代码:
<script>
function handleFormSubmit(formObject) {
google.script.run.processForm2(formObject);
document.getElementById("myForm").reset();
alert("Your form is submitted. Thank you!");
}
</script>
function processForm2(formObject) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var ws = ss.getSheetByName("Sheet1");
var tz = ss.getSpreadsheetTimeZone();
var d = Utilities.formatDate(new Date(), tz, 'dd/MM/yyyy @ HH:mm:ss');
var code = Math.floor(Math.random() * 99999) + 10000;
ws.appendRow([code, d, null, null, formObject.name, formObject.email,
formObject.things]);
emailCode2(code);
}
function emailCode2(code){
var url = "https://docs.google.com/spreadsheets/d/11X8e10TGQwzUQVJzTJ24JB1KMCTzkL5F5vObKrH0__k/edit#gid=0";
var ss = SpreadsheetApp.openByUrl(url);
var lastRow = ss.getLastRow();
var sheet= ss.getSheetByName("Sheet1");
var name = sheet.getRange(lastRow,5).getValue();
var emailAddress = sheet.getRange(lastRow,8).getValue();
var subject = 'Code';
var message = 'Dear ' + name + ',\n\nHere is your code: ' + code;
MailApp.sendEmail(emailAddress, subject, message);
}
>
我认为该错误意味着Google Apps脚本端出现了错误。
var ss = SpreadsheetApp.openByUrl(url);
var lastRow = ss.getLastRow();
var sheet= ss.getSheetByName("Sheet1");
在本例中,lastrow
是电子表格的第一个选项卡。如果sheet1
不是第一个选项卡,则最后一行可能不同。请小心这个。所以请修改如下。
var ss = SpreadsheetApp.openByUrl(url);
var sheet= ss.getSheetByName("Sheet1"); // Modified
var lastRow = sheet.getLastRow(); // Modified
function processForm2(formObject) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var ws = ss.getSheetByName("Sheet1");
var tz = ss.getSpreadsheetTimeZone();
var d = Utilities.formatDate(new Date(), tz, 'dd/MM/yyyy @ HH:mm:ss');
var code = Math.floor(Math.random() * 99999) + 10000;
ws.appendRow([code, d, null, null, formObject.name, formObject.email, formObject.things]);
emailCode2(code);
}
function emailCode2(code){
var url = "https://docs.google.com/spreadsheets/d/11X8e10TGQwzUQVJzTJ24JB1KMCTzkL5F5vObKrH0__k/edit#gid=0";
var ss = SpreadsheetApp.openByUrl(url);
var sheet= ss.getSheetByName("Sheet1"); // Modified
var lastRow = sheet.getLastRow(); // Modified
var name = sheet.getRange(lastRow,5).getValue();
var emailAddress = sheet.getRange(lastRow,6).getValue(); // Modified
var subject = 'Code';
var message = 'Dear ' + name + ',\n\nHere is your code: ' + code;
MailApp.sendEmail(emailAddress, subject, message);
}
function processForm2(formObject) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var ws = ss.getSheetByName("Sheet1");
var tz = ss.getSpreadsheetTimeZone();
var d = Utilities.formatDate(new Date(), tz, 'dd/MM/yyyy @ HH:mm:ss');
var code = Math.floor(Math.random() * 99999) + 10000;
ws.appendRow([code, d, null, null, formObject.name, formObject.email, formObject.things]);
emailCode2(code);
}
function emailCode2(code){
var url = "https://docs.google.com/spreadsheets/d/11X8e10TGQwzUQVJzTJ24JB1KMCTzkL5F5vObKrH0__k/edit#gid=0";
var ss = SpreadsheetApp.openByUrl(url);
var sheet= ss.getSheetByName("Sheet1"); // Modified
var lastRow = sheet.getLastRow(); // Modified
var name = sheet.getRange(lastRow,5).getValue();
var emailAddress = sheet.getRange(lastRow,8).getValue();
var subject = 'Code';
var message = 'Dear ' + name + ',\n\nHere is your code: ' + code;
MailApp.sendEmail(emailAddress, subject, message);
}
processForm2(formObject)
的formObject
具有正确的值。如果有错误的值,则可能发生错误。请小心这个。我正在使用Google表单将多条消息合并到一个每日电子邮件中,使用脚本和每日定时触发器发送(代码从这里复制,下面是我的版本)。 例如,一个电子邮件地址是abc@example.co.uk,他们收到了电子邮件,但在我的收件箱(xyz@example.co.uk)中是发送到abc@example.co.uk的电子邮件,但不是转发的消息或回复。 有什么办法阻止这一切吗?
我有以下代码: 我无法连接到gmail,连接出现错误,但是所有连接信息都是正确的,不知道是什么阻止了我发送电子邮件的代码中的连接,我无法发送简单的电子邮件,我一点也不知道它是什么。 感谢您的帮助
问题内容: 我在linux机器上,我监视进程使用情况。大多数时候,我将离开系统,并且可以在设备上访问Internet。因此,我计划编写一个shell脚本,该脚本可以向我发送该过程的输出。 可能吗? 如果是的话,如何制作一个shell脚本给我发邮件? 请提供摘要以开始使用。 问题答案: 是的,它可以正常工作,并且通常用于:
问题内容: 我正在Windows上使用WampServer来测试站点。我有一个注册系统,用户会收到一封确认电子邮件。 是否可以从本地主机发送电子邮件? 问题答案: 如果要直接从本地主机发送电子邮件,则需要安装邮件传输代理(MTA),或者安装SMTP服务。 IIS提供了一个。否则,您可以在Google上找到其他人。 您也可以更改 邮件设置。这将不使用每条说来发送电子邮件,而是用于允许您从PHP脚本发
事先谢谢,非常感谢。 向你问好,路易斯