在线急等asp抽奖问题?高分求教!
问题:
1、每次抽奖出现重复,好比在10个数中第一次抽了个1,第二次如何避免在次抽到1,只在2-9中抽奖!
2、好比一次抽奖抽10个数,但这10个数有重复,如何避免?
代码如下:
<HTML>
<HEAD>
<TITLE> 模拟摇奖 </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<style>
.STYLE1 {font-size: 16pt}
.STYLE2 {
color: #FF0000;
font-weight: bold;
font-size: 24px;
}
.STYLE3 {font-size: 12pt}
.STYLE4 {color: #FF0000; font-weight: bold; font-size: 36px; }
</style>
</HEAD>
<BODY>
<%
connstr="Driver={SQL Server};server=127.0.0.1;database=pubs;uid=sa;pwd=;"
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open connstr
Set rs= Server.CreateObject("ADODB.RecordSet")
%>
<% dim sql,rs,strList
sj_tj=0
sql="select phone from authors "
set rs=conn.execute(sql)
if not rs.eof then
do while not rs.eof
strList = strList&","&rs("phone")
rs.movenext()
loop
end if
rs.close
set rs=nothing
conn.close
strList =mid(strList,2,len(strList)-1)
%>
<table width="80%" border="0" align="center" cellpadding="20" cellspacing="0">
<form name="formXW" id="formXW" method="post">
<tr>
<td align="center" ><p class="STYLE4"></td>
</tr>
<tr>
<td >
<div align="right"></div>
</td>
</tr>
</form>
<tr>
<td align="center" valign="middle">
<strong>摇奖组数:
<input type='text' value='3' style='width:100px;' id='threadnumber'/>
</strong>
<button id='confirmthread' class="STYLE1">确 定</button>
<button class="STYLE1" id='cmd_execute'> 开始摇奖 </button>
</td>
</tr>
<tr>
<td align="center" valign="middle" id='randmizecontainer' style='font-size:20px;font-weight:bolder;'></td>
</tr>
<tr>
<td align="center" valign="middle"><div id='awardnumber'></div></td>
</tr>
</table>
<form id="form1" name="form1" action="cjjg.asp" method="POST">
<div align="right">
<p align="right"> </p>
<p align="center">
<!-- 把从数据库读出的数据放到这里来 -->
<input type="hidden" name="NoUser" id="NoUser" value="<%=strList%>">
<%
'response.write "显示:"&strList
'"&dateb&"' and '"&datee&"'"
%>
<input name="dateb" type="hidden" id="dateb" value="<%=dateb%>" size="40">
<input name="datee" type="hidden" id="datee" value="<%=datee%>" size="40">
<input name="cjfw" type="hidden" id="cjfw" value="<%=sql%>" size="40">
<input name="cjsz" type="hidden" id="cjsz" value="" size="40">
<input name="cjsz_sl" type="hidden" id="cjsz_sl" value="" size="40">
<input name="cjjg" type="hidden" id="cjjg" value="" size="40">
</p>
<p>
<SCRIPT LANGUAGE="JavaScript">
<!--
// Power By Bluedestiny
function $(obj) {return document.getElementById(obj);}
function rollaward() {};
rollaward.awardnum=null;
rollaward.total=1000;//摇奖的数组最大下标
rollaward.rollspeed=10;//摇奖速度
rollaward.threadnum=3;//默认线程数
rollaward.count=0;
rollaward.threadnumArray=[];
rollaward.rndnumArray=[];
rollaward.rndidArray=[];
rollaward.awardArray=[];
//-------------分析从数据库中读出的数据
var strUserNo = document.getElementById("NoUser");
var strList = strUserNo.value;
var strSplit = strList.split(",");
rollaward.total = strSplit.length;
//------------------------------------------
rollaward.initialize=function() {
for(var i=0;i<rollaward.total;i++)
{
rollaward.awardArray[i]=strSplit[i];
}
for(var i=0;i<rollaward.threadnum;i++)
{
var div=document.createElement('DIV');
div.id='randmizenum'+i;
div.innerHTML='000000000000';
div.runtimeStyle.border='20px solid red';
<!-- 例如这一次摇3组 三组边框的颜色!border= -->
div.runtimeStyle.width='400px';
div.runtimeStyle.margin='5px 0px 5px 0px';
<!-- 例如这一次摇3组 三组之间的间隔!margin= -->
$('randmizecontainer').appendChild(div);
rollaward.rndidArray[i]='randmizenum'+i;
}
}
rollaward.confirmthreadnum=function() {
rollaward.removethreadnum();
rollaward.threadnum=parseInt($('threadnumber').value);
rollaward.initialize();
<!-- event.srcElement.disabled=true; -->
}
rollaward.removeinterval=function()
{
for(var i=0;i<rollaward.threadnum;i++)
clearInterval(rollaward.threadnumArray[i]);
}
rollaward.removethreadnum=function()
{
for(var i=0;i<rollaward.threadnum;i++)
if($('randmizenum'+i))$('randmizenum'+i).removeNode(true);
}
rollaward.start=function() {
if(rollaward.total==0)
{
rollaward.removeinterval();
return;
}
for(var i=0;i<rollaward.threadnum;i++)
{
rollaward.rndnumArray[i]=parseInt(Math.random()*(rollaward.total));
$('randmizenum'+i).innerHTML=rollaward.awardArray[rollaward.rndnumArray[i]];
}
$('cmd_execute').value='停止摇奖';
}
rollaward.stop=function() {
rollaward.removeinterval();
rollaward.count++;
$('awardnumber').innerHTML+=' ' + rollaward.count + '等奖 中奖号码:'
$('cjsz').value+= rollaward.count +',';
$('cjsz_sl').value+=rollaward.threadnum+',';
$('awardnumber').innerHTML+='<br/>';
for(var i=0;i<rollaward.threadnum;i++)
{
$('awardnumber').innerHTML+=rollaward.awardArray[rollaward.rndnumArray[i]]+' ';
$('awardnumber').innerHTML+='<br/>';
$('cjjg').value+=rollaward.awardArray[rollaward.rndnumArray[i]]+',';
}
$('awardnumber').innerHTML+='<br/>';
$('cmd_execute').value='开始摇奖';
for(var i=rollaward.awardnum;i<rollaward.total;i++)
rollaward.awardArray[i]=rollaward.awardArray[i+1];
rollaward.total--;
rollaward.awardArray.length--;
}
function _click()
{
if(event.srcElement.value=='开始摇奖')
{
for(var i=0;i<rollaward.threadnum;i++)
rollaward.threadnumArray[i]=setInterval(rollaward.start,rollaward.rollspeed)
}
else
{
rollaward.stop();
}
}
function _unload()
{
rollaward.removethreadnum();
}
rollaward.initialize();
$('cmd_execute').attachEvent('onclick',_click);
$('confirmthread').attachEvent('onclick',rollaward.confirmthreadnum);
window.attachEvent('onbeforeunload',_unload);
//-->
</SCRIPT>
</p>
</div>
</form>
</BODY>
</Html>