$#@60; %
下面的if语句是通过验证selected是否为空来判断用户是否作了选择
if request.form("options") $#@60; $#@62;Empty then
% $#@62;
$#@60; %
下面的if语句是通过比较Request的两个collection(ServerVariables和Cookies)的值
来防止用户连续按提交而影响调查的结果
if not Request.ServerVariables("REMOTE_ADDR")=request.cookies("IPAddress")
then
把访问客户的IP信息写入Cookies
response.cookies("IPAddress")=Request.ServerVariables("REMOTE_ADDR")
% $#@62;
$#@60; %
建立连接(Connection)对象,打开记录调查结果的数据库
set conn=server.createobject("ADODB.CONNECTION")
conn.open "researchdb"
% $#@62;
$#@60; %
定义变量
dim rs
dim sql
dim selected
selected=request.form("options")
建立记录集合(Recordset)对象,用方法Open打开对象,同时修改对应的数据
set rs=server.createobject("adodb.recordset")
修改数据表ressearch中的数据,即对应的投票数增加1
sql="update research set select"&selected&"=select"&selected&"+1 where id=1"
rs.open sql,conn,3,3
从内存中清除记录集合对象
set rs=nothing
关闭连接
conn.close
从内存中清除连接对象
set conn=nothing
连接到浏览调查结果的页面
response.redirect "viewresult.asp"
else
Response.write "投票失败提示:您刚才已投了票,谢谢您的支持!"
end if
else
Response.write "投票失败提示:您忘记选择了!"
end if
% $#@62;
viewresult.asp
$#@60; %
set conn=server.createobject("ADODB.CONNECTION")
conn.open "researchdb"
% $#@62;
$#@60; %
dim rs
dim sql
dim select1
dim select2
dim select3
dim select4
dim select5
dim select6
dim select7
dim total
set rs=server.createobject("adodb.recordset")
sql="select * from research where id=1"
rs.open sql,conn,1,1
total=rs("select1")+rs("select2")+rs("select3")+rs("select4")+rs("select5")+rs("select6")+rs("select7")
判断总票数是否为0,确保下面的除法有效
if total $#@62; 0 then
select1=(rs("select1")/total)*100
select2=(rs("select2")/total)*100
select3=(rs("select3")/total)*100
select4=(rs("select4")/total)*100
select5=(rs("select5")/total)*100
select6=(rs("select6")/total)*100
select7=(rs("select7")/total)*100
% $#@62;
$#@60; p $#@62;谢谢您的参与,下面是当前的调查结果
$#@60; p $#@62;
◇知识:
$#@60; img src=bar.gif width=$#@60; %=int(select1*5)% $#@62; height=4 $#@62;
$#@60; %=rs("select1")% $#@62;人 占:$#@60; %=round(select1,2)% $#@62;%$#@60; br
$#@62;
◇学历:
$#@60; img src=bar.gif width=$#@60; %=int(select2*5)% $#@62; height=4 $#@62;
$#@60; %=rs("select2")% $#@62;人 占:$#@60; %=round(select2,2)% $#@62;%$#@60; br
$#@62;
◇金钱:
$#@60; img src=bar.gif width=$#@60; %=int(select3)*5% $#@62; height=4 $#@62;
$#@60; %=rs("select3")% $#@62;人 占:$#@60; %=round(select3,2)% $#@62;%$#@60; br
$#@62;
◇爱情:
$#@60; img src=bar.gif width=$#@60; %=int(select4)*5% $#@62; height=4 $#@62;
$#@60; %=rs("select4")% $#@62;人 占:$#@60; %=round(select4,2)% $#@62;%$#@60; br
$#@62;
◇理想:
$#@60; img src=bar.gif width=$#@60; %=int(select5)*5% $#@62; height=4 $#@62;
$#@60; %=rs("select5")% $#@62;人 占:$#@60; %=round(select5,2)% $#@62;%$#@60; br
$#@62;
◇民主意识:
$#@60; img src=bar.gif width=$#@60; %=int(select6)%*5 $#@62; height=4 $#@62;
$#@60; %=rs("select6")% $#@62;人 占:$#@60; %=round(select6,2)% $#@62;%$#@60; br
$#@62;
◇科学思想:
$#@60; img src=bar.gif width=$#@60; %=int(select7)%*5 $#@62; height=4 $#@62;
$#@60; %=rs("select7")% $#@62;人 占:$#@60; %=round(select7,2)% $#@62;%$#@60; /p
$#@62;
$#@60; p align="center" $#@62;已经有:$#@60; %=total% $#@62;人参加调查$#@60; br $#@62;$#@60;
br $#@62;
【$#@60; a href="javascript:window.close()" $#@62;关闭窗口$#@60; /a $#@62;】$#@60;
/p $#@62;
$#@60; p $#@62;
$#@60; %
else
response.write "还没有人参与调查"
end if
rs.close
set rs=nothing
conn.close
set conn=nothing
% $#@62;
附注:
以上代码均在 WindowsNT4.0中文(Pack 6)/IIS4.0上调试通过。
以下任何一种环境都可执行ASP:
一、Windows NT Server 4.0 / IIS3.0以上
二、Windows NT WorkStation 4.0 / Microsoft Peer Web Service3.0以上
三、Windows 95/98 / Microsoft Personal Web Server 1.0a以上
155
没有相关教程