如何利用电子邮件收集表单数据?
作者:佚名 时间:2014-03-29
如何利用电子邮件收集表单数据?
通常情况下,作者都没有对Web服务器进行存取的权限,因此不能进行上传文档这样的操作,也就不可能创建或管理CGI程序。事实上,一些因特网服务提供商(ISP) ,特别是那些管理几百甚至是上千个站点的ISP,一般会禁用CGI服务,通过这种方式来限制服务器的处理负载,或者以此作为安全防范措施。
如何利用电子邮件收集表单数据?
通常情况下,作者都没有对Web服务器进行存取的权限,因此不能进行上传文档这样的操作,也就不可能创建或管理CGI程序。事实上,一些因特网服务提供商(ISP) ,特别是那些管理几百甚至是上千个站点的ISP,一般会禁用CGI服务,通过这种方式来限制服务器的处理负载,或者以此作为安全防范措施。
如果你处在一个无法通过处理表单来保存数据的站点,并不是就彻底没有办法了:可以使用mailtoURL作为表单中action属性的值。最新一代的浏览器会自动将表单的不同参数和值用电子邮件发送到URL中提供的地址。然后该邮件的接收者就可以处理表单,并进行相应的动作。
如果对我们前面那个示例使用下列代码的话
<form method=POST action="mailto:888@linksj.com" enctype="text/plain" onSubmit="window.alert('如果你确认了该传输,表单就已通过电子邮件发送出去,而不会有任何提示或通知')">
当用户提交该表单之后,表单数据会用电子邮件发送给chuckandbill,而不由服务器处理。同时也要注意到,我们在这里采用了一个简单的JavaScript警告消息,当浏览器准备将表单数据发送出去时,这个消息就会显示出来。警告消息提示用户发送表单数据时不会有确认信息。
同时,除非用户禁用了这个功能,或者如果省略了method=POST属性,浏览器通常会警告用户,提醒他们准备将未加密("text/plain")的,因此也就是没有什么安全保障的信息通过网络发送出去,一般情况下,浏览器会给出一个选项,允许用户取消提交。如果用户确认了该传输,表单就会通过电子邮件发送出去,而不会有任何提示或通知。