php - 就垃圾邮件和机器人而言,这个 "tip a friend"函数安全吗?

标签 php javascript ajax security validation

我有一个分类广告网站...

每个分类都显示在名为 show_ad.php 的 php 页面中

我正在开发“给 friend 打赏”功能,用户可以在其中输入自己的姓名、 friend 的电子邮件地址以及给 friend 的短信。

上述内容没有问题,但是,我需要确保机器人不会使用此表单来发送“垃圾邮件”等...

一种方法是验证码,但我正在考虑创建自己的验证码,所以这是我的计划,我需要你告诉我它是否有任何缺陷:

1- 加载 show_ad.php 文件时,我生成一个随机数,例如 5 位数字。
2-我将数字输出给用户,并告诉用户在表单文本输入中输入该数字。
3- 该数字也被放入隐藏输入中。
4-用户按下“发送”按钮。
5-我使用ajax调用名为send_tip.php的php文件,然后获取隐藏输入的值,并将其与用户输入的文本输入进行比较,看看它们是否匹配,然后发送电子邮件。

没有什么是足够安全的,但以上对于分类网站来说足够了吗?

谢谢

更新:

6-我向 mysql 添加了一个表,该表记录发送电子邮件的用户的 IP 地址,如果超过每分钟 3 封电子邮件和每天 30 封电子邮件,我会阻止它们...尽管那样可能只是电子邮件就足够了,我应该使用随机数跳过第一步吗?你觉得怎么样?

最佳答案

您可能需要考虑使用reCAPTCHA而不是重新发明轮子并制作自己的验证码。

作为一个很好的副作用,您正在帮助书籍数字化!

关于php - 就垃圾邮件和机器人而言,这个 "tip a friend"函数安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4240757/

相关文章:

PHP DomDocument - getElementByID(部分匹配)如何?

php - 循环遍历 mysqli 结果数组一次以获取所有信息

javascript - 如何在node.js中找到 '{ } '之间的匹配字符串

javascript - 从 blob :http using javascript with no redirection 保存文件

php - 为什么使用 php 从一个非常大的 csv 文件中只读取 1000 条记录?

php - Yii- 如何在模块中添加 urlManager 规则?

javascript - 使用不同浏览器解析 JavaScript 中的 float

javascript - 使用 Javascript 进行图像组件链接

javascript - 如何使用两个数值变量设置实例属性

python - 使用来自 ajax 响应的嵌套值导航 Python 字典