【问题标题】:Can anyone help me out on a form spamming issue?任何人都可以帮助我解决垃圾邮件问题吗?
【发布时间】:2020-01-10 12:44:48
【问题描述】:

我的网站上有一个查询表格。 垃圾邮件发送者使用它不断向我发送 SEO 和约会链接。 我想阻止这一切。 他们在提交表单之前在公司名称字段中输入“google”。

是否有一种简单的方法可以在提交时将这些垃圾邮件发送者发送到我的“谢谢”页面,因此他们认为他们已成功向我发送垃圾邮件但实际上什么也没发生?

基本上 - 如果提交的公司名称字段 = google,那么在提交时不要通过电子邮件发送表单结果,而只是呈现thankyou.html 页面。

我的页面在这里here is my contact form

【问题讨论】:

  • 解决方案取决于您在服务器上实现的逻辑。一种方法是检查后端代码中的companyName 字段,如果发现条件为真,则转到呈现“谢谢”页面的部分。否则,请发送邮件或任何您做的有效查询。
  • 感谢您,但我无法访问 cgi 文件夹。我希望能够检查公司名称字段并使用 Javascript 做出决定。
  • 好的,你可以在 formCheck() 函数中编写逻辑 if (alertMsg.length === l_Msg && companyName === "google"),然后重定向到 https://www.insight-software-training.co.uk/confirm.htm。否则,return true 将作为有效条目继续。
  • 感谢阿杰。我将把它粘贴到哪里,代码到底是什么?我不擅长编码,所以请保持简单!
  • 不客气。此外,我还发送了一封垃圾邮件,其 ID 类似于 1@1.com。请原谅我。我只是为了获得“谢谢”页面的链接在此处发布。稍后我会发布代码作为答案。

标签: forms spam-prevention


【解决方案1】:

来自 cmets 部分的跟进。

在您的 formCheck() 函数中,替换这段代码

if (alertMsg.length == l_Msg){
    return true;
}else{
    alert(alertMsg);
    return false;
}

if (alertMsg.length == l_Msg){ // No alerts
    let companyName = formobj.elements['Company'].value || "";
    if(companyName.trim().toLowerCase()==='google'){ // Potential spam, redirect to "Thank you" page.
        window.location.href='confirm.htm'
        return false;
    }
    // Otherwise, proceed as valid entry.
    return true;
}else{
    alert(alertMsg);
    return false;
}

【讨论】:

  • 太棒了!它真的很好用。非常感谢您帮助我!正是我需要的。
  • 尽管您进行了修复,但我似乎仍然使用 company=google 收到垃圾邮件。我输入的代码是否正确?
  • 你有companyName==='google',而我写的是companyName.trim().toLowerCase()==='google'trim() 函数删除字符串周围的空格,所以 "google "," google "," google" 都归结为 "google"toLowerCase() 将字符串转换为所有小写字符。您能否在收到的垃圾邮件中提供确切公司名称。我认为他们可能只是放了一些额外的空间或其他东西。
  • 这里是:REMOTE_HOST: 185.104.187.115 HTTP_USER_AGENT: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/ 16.16299 姓名:成人在线 dаting ÐμÑ...更改号码:xsle.net/sexywoman880359 公司:google 电话:88174851425 邮政编码:132433 主站点:来自主站点电子邮件_:tsaxma@yahoo.com 软件-:-------- ---------------------------------------------------- delegates_number: 4 or 5 extra_info: 成人约会美国guуs onlinе:bogazicitente.com/sexywoman99510 提交:发送表格
  • 首先,将companyName==='google' 更改为companyName.trim().toLowerCase()==='google'。现在,尝试自己使用company=google 提交虚假表单。如果还是不行,请告诉我。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-01
  • 1970-01-01
  • 2012-10-28
  • 1970-01-01
  • 2021-05-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多