ASP邮件调查问卷遇到错误

3星 · 超过75%的资源 需积分: 10 13 下载量 114 浏览量 更新于2024-09-14 1 收藏 47KB DOC 举报
"ASP调查问卷网页,使用HTML表单收集用户信息并发送邮件,以及ASP处理投票数据时遇到的错误" 该资源是一个基于ASP(Active Server Pages)技术构建的调查问卷网页。网页的主要功能有两个部分: 1. 用户反馈部分:通过HTML表单收集用户的姓名、电子邮件地址以及他们对网页制作技巧栏目的意见和建议。表单使用`<form>`元素定义,设置`method="POST"`以使用HTTP POST方法提交数据,`action`属性设置为`mailto:ketang.pc@goldhuman.com?subject=调查信息`,这意味着用户点击“发送”按钮后,表单数据将通过电子邮件发送给指定的地址。表单包含两个文本输入框(`<input type="text">`)用于姓名和邮箱,一个文本区域(`<textarea>`)用于意见和建议,以及提交(`<input type="submit">`)和重置(`<input type="reset">`)按钮。 2. 投票功能部分:根据提供的错误信息,该页面还有一个投票功能,用户通过单选按钮选择选项,然后提交投票。在后台的ASP代码中,数据存储在一个名为"data/ly.mdb"的Access数据库文件中。当用户尝试投票时,ASP脚本会创建一个ADODB.Connection对象来连接数据库,使用的是Microsoft Jet数据库引擎。然而,脚本在尝试执行SQL更新语句时遇到了问题,错误信息为'80040e10',表示至少有一个参数未被指定值。 问题出在投票添加的代码段,具体在第11行的SQL语句。代码试图更新数据库中名为"votes"的表,增加选中的投票选项(由`selected`变量表示)的计数值。但SQL语句的构造方式存在问题,它应该是想将`selected`变量的值加1,但是语法错误导致了错误。正确的SQL语句可能应该像这样: ```vbscript strsql = "UPDATE votes SET " & selected & "= " & selected & "+1 WHERE id=1" ``` 这里的`selected`应该已经被之前获取的请求参数正确赋值。不过,这种写法也存在SQL注入的风险,更安全的做法是使用参数化查询。修复这个错误并确保代码安全性后,ASP脚本才能正常执行投票更新并重定向用户回到投票页面(vote.asp)。 这个ASP网页是一个结合了用户反馈和投票功能的简单应用,存在一些编程错误需要调试和修正。同时,为了提高安全性,应考虑使用预编译的SQL语句或存储过程来防止SQL注入攻击。