您好我正在使用HTML和javascript(jquery)开发应用程序,HTML有一个表单,稍后会通过获取方法发送通过数据的电子邮件。
电子邮件是由php在服务器上发送的,但在我验证表单的字段之前,我收到了邮件服务通知,邮件中有未公开的收件人:;并且所有字段都为空。我担心的是某人或某事正试图获取信息。有人可以帮忙吗?
注意如果你需要我的代码,我可以发布它,但我想知道的是有人将数据传递给我的PHP。
答案 0 :(得分:2)
你不能单靠javascript进行验证,你必须验证服务器端。
您可能正在接受机器人的访问。确保验证所有字段的AND有效性,并使用$_POST
代替$_GET
。
确保$_GET
无法访问发送电子邮件的脚本,这意味着只需输入网址即可。如果我输入:
http://yoursite.com/contact?email=oops&sendmail=true
它应该无法发送电子邮件,这就是我说使用$_POST
的原因。但是,如果您正确验证,无论您使用哪种方法,它都不应该向您发送空值。
答案 1 :(得分:1)
即使您使用$ _POST,也没有服务器端验证,我认为它没有太大区别。没有服务器端验证,仍然可以发布他/她想要的任何内容。 任何Web调试器都会显示您的页面发布到哪里以及它所执行的字段。任何人都可以创建自己的页面以提交到您的服务器,并将字段设置为他们想要的值。
答案 2 :(得分:0)
根据提供的信息,我不一定会发现数据安全风险,但我确实发现垃圾邮件程序可能会利用您的网页并向您发送数以千计的垃圾邮件。