求ASP抽奖代码或者告诉具体如何实现

lovetm 2006-01-13 09:16:41
急急,现公司年终抽奖,要求做一个asp的抽奖页面出来,要求提取数据库中员工工号和姓名,能在点开始抽奖按键后在页面随机滚动工号和姓名,抽奖不可以重复出现某个员工。没有做过这样的程序。

那位大大有做过的请指点指点,或者把大大你的代码给我参考参考!谢谢各位大大了!

...全文
483 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
若白师妹 2006-01-16
  • 打赏
  • 举报
回复
用过asp+js,最好能把提取数据到js调用都给出例子吧


asp只是很简单的从数据库读数据啊,你自己一点思路都没有?
lovetm 2006-01-14
  • 打赏
  • 举报
回复
huejim(Muck Feggie)
发短信给你了!
zhl7522 2006-01-14
  • 打赏
  • 举报
回复
哈哈,这么多人回答,我用框架实现过!不过太占资源,不好用
Only_D 2006-01-14
  • 打赏
  • 举报
回复
huejim 2006-01-14
  • 打赏
  • 举报
回复
我有,去年写的,ASP+JS,功能很强.还有后台管理..好多文件,不上传了,留MSN
lovetm 2006-01-14
  • 打赏
  • 举报
回复
晕了!怎么huejim(Muck Feggie)、ghostzp(我假装给老板工作,老板假装发给我工资!)
两位大哥都没出现了啊!
kkgolf 2006-01-13
  • 打赏
  • 举报
回复
我有一个VB的。。。
今年刚写的
lovetm 2006-01-13
  • 打赏
  • 举报
回复
ghostzp(我假装给老板工作,老板假装发给我工资!)
不好意思,没用过asp+js,最好能把提取数据到js调用都给出例子吧,谢谢!

头一次!呵呵!
lovetm 2006-01-13
  • 打赏
  • 举报
回复
晕 ,还没人?
BlueDestiny 2006-01-13
  • 打赏
  • 举报
回复
刚才抽空又改了改,可以有多“线程”

http://blog.csdn.net/BlueDestiny/archive/2006/01/13/578819.aspx

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> 模拟摇奖 </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<style>
* {
font-size:10.2pt;
font-family:verdana;
}
</style>
</HEAD>

<BODY>
<table width="80%" border="0" cellpadding="20" cellspacing="0" align="center">
<tr>
<td align="center" valign="middle">线程数:<input type='text' value='3' style='width:25px;' id='threadnumber'/><button id='confirmthread'>确定</button> <button 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>
<tr>
<td align="center" valign="middle" align='center'>Power By Bluedestiny</td>
</tr>
</table>
<SCRIPT LANGUAGE="JavaScript">
<!--
// Power By Bluedestiny
function $(obj) {return document.getElementById(obj);}
function rollaward() {var awardnum};

rollaward.prototype.total=1000;//摇奖的数组最大下标
rollaward.prototype.rollspeed=10;//摇奖速度
rollaward.prototype.threadnum=3;//默认线程数

rollaward.prototype.count=0;
rollaward.prototype.threadnumArray=new Array();
rollaward.prototype.rndnumArray=new Array();
rollaward.prototype.rndidArray=new Array();
rollaward.prototype.awardArray=new Array();

rollaward.initialize=function() {
for(var i=0;i<rollaward.prototype.total;i++)
rollaward.prototype.awardArray[i]='var ' + i;
for(var i=0;i<rollaward.prototype.threadnum;i++)
{
var div=document.createElement('DIV');
div.id='randmizenum'+i;
div.innerHTML='00000';
div.runtimeStyle.border='2px solid blue';
div.runtimeStyle.width='100px';
div.runtimeStyle.margin='5px 0px 5px 0px';
$('randmizecontainer').appendChild(div);
rollaward.prototype.rndidArray[i]='randmizenum'+i;
}

}
rollaward.confirmthreadnum=function() {
rollaward.removethreadnum();
rollaward.prototype.threadnum=parseInt($('threadnumber').value);
rollaward.initialize();
event.srcElement.disabled=true;
}
rollaward.removeinterval=function()
{
for(var i=0;i<rollaward.prototype.threadnum;i++)
clearInterval(rollaward.prototype.threadnumArray[i]);
}
rollaward.removethreadnum=function()
{
for(var i=0;i<rollaward.prototype.threadnum;i++)
if($('randmizenum'+i))$('randmizenum'+i).removeNode(true);
}
rollaward.start=function() {
if(rollaward.prototype.total==0)
{
rollaward.removeinterval();
return;
}

for(var i=0;i<rollaward.prototype.threadnum;i++)
{
rollaward.prototype.rndnumArray[i]=parseInt(Math.random()*(rollaward.prototype.total));
$('randmizenum'+i).innerHTML=rollaward.prototype.awardArray[rollaward.prototype.rndnumArray[i]];
}

$('cmd_execute').value='停止摇奖';
}
rollaward.stop=function() {
rollaward.removeinterval();
rollaward.prototype.count++;
$('awardnumber').innerHTML+='第 ' + rollaward.prototype.count + ' 组中奖者:'
for(var i=0;i<rollaward.prototype.threadnum;i++)
{
$('awardnumber').innerHTML+=rollaward.prototype.awardArray[rollaward.prototype.rndnumArray[i]]+' ';
}
$('awardnumber').innerHTML+='<br/>';
$('cmd_execute').value='开始摇奖';

for(var i=rollaward.awardnum;i<rollaward.prototype.total;i++)
rollaward.prototype.awardArray[i]=rollaward.prototype.awardArray[i+1];
rollaward.prototype.total--;
rollaward.prototype.awardArray.length--;
}
function _click()
{
if(event.srcElement.value=='开始摇奖')
{
for(var i=0;i<rollaward.prototype.threadnum;i++)
rollaward.prototype.threadnumArray[i]=setInterval(rollaward.start,rollaward.prototype.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>
</BODY>

</HTML>
lovetm 2006-01-13
  • 打赏
  • 举报
回复
自己先顶了!咋没人列?
BlueDestiny 2006-01-13
  • 打赏
  • 举报
回复
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<style>
* {
font-size:10.2pt;
font-family:verdana;
}
</style>
</HEAD>

<BODY>
<table width="80%" border="0" cellpadding="20" cellspacing="0" align="center">
<tr>
<td align="center" valign="middle"><button id='cmd_execute'>start roll award</button></td>
</tr>
<tr>
<td align="center" valign="middle"><div id='randmizenum' style='width:100px;border:2px solid blue;font-size:20px;'></div></td>
</tr>
<tr>
<td align="center" valign="middle"><div id='awardnumber'></div></td>
</tr>
<tr>
<td align="center" valign="middle" align='center'>Power By Bluedestiny</td>
</tr>
</table>
<SCRIPT LANGUAGE="JavaScript">
<!--
function $(obj) {return document.getElementById(obj);}
function rollaward() {var awardnum};

rollaward.prototype.total=1000;
rollaward.prototype.rollspeed=10;
rollaward.prototype.count=0;
rollaward.prototype.awardArray=new Array();

rollaward.initialize=function() {
for(var i=0;i<rollaward.prototype.total;i++)
rollaward.prototype.awardArray[i]=i+1;
$('randmizenum').innerHTML+='00000';
}
rollaward.start=function() {
if(rollaward.prototype.total==0)
{
alert('has finished');
clearInterval(interval);
return;
}
rollaward.awardnum=parseInt(Math.random()*(rollaward.prototype.total));
$('randmizenum').innerHTML=rollaward.prototype.awardArray[rollaward.awardnum];
$('cmd_execute').value='stop roll award';
}
rollaward.stop=function() {
clearInterval(interval);
rollaward.prototype.count++;
$('awardnumber').innerHTML+='第 ' + rollaward.prototype.count + ' 位中奖者:' +rollaward.prototype.awardArray[rollaward.awardnum]+'<br/>';
$('cmd_execute').value='start roll award';

for(var i=rollaward.awardnum;i<rollaward.prototype.total;i++)
rollaward.prototype.awardArray[i]=rollaward.prototype.awardArray[i+1];
rollaward.prototype.total--;
rollaward.prototype.awardArray.length--;
}
function _click(){event.srcElement.value=='start roll award'?interval=setInterval(rollaward.start,rollaward.prototype.rollspeed):rollaward.stop();}
rollaward.initialize();
$('cmd_execute').attachEvent('onclick',_click);
//-->
</SCRIPT>
</BODY>

</HTML>
wxf0104 2006-01-13
  • 打赏
  • 举报
回复
ghostzp(我假装给老板工作,老板假装发给我工资!) 给的这个挺好的哟~~
tytyjas 2006-01-13
  • 打赏
  • 举报
回复
楼上的厉害啊
若白师妹 2006-01-13
  • 打赏
  • 举报
回复
你先看看是不是合用,再改改啦
要求提取数据库中员工工号和姓名就是:subcat[11] = new Array("11","030215","马竞","人力资源部");
这个难不到你吧
若白师妹 2006-01-13
  • 打赏
  • 举报
回复
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0024)http://home/yaojiang.asp -->
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<SCRIPT language=javascript>
<!--

var onecount;
onecount=0;
subcat = new Array();
arrpush=new Array();

subcat[0] = new Array("0","030135","陈蓓","总经理室");

subcat[1] = new Array("1","030116","张宁沭","行政管理处");

subcat[2] = new Array("2","030079","孙汉宇","资材部");

subcat[3] = new Array("3","040196","周莉莉","资材部");

subcat[4] = new Array("4","020022","徐金珍","总务部");

subcat[5] = new Array("5","030077","蔡其华","总务部");

subcat[6] = new Array("6","020047","包妍","总务部");

subcat[7] = new Array("7","030141","周莉","总务部");

subcat[8] = new Array("8","040188","沈锡荣","总务部");

subcat[9] = new Array("9","030062","张红玉","人力资源部");

subcat[10] = new Array("10","030078","于薇薇","人力资源部");

subcat[11] = new Array("11","030215","马竞","人力资源部");

subcat[12] = new Array("12","040226","张益星","人力资源部");



onecount=12;

function cs(locationid)
{


var locationid=locationid;
if (subcat[locationid][0] == locationid)
{
alert("恭喜恭喜\n\n随机数:"+subcat[locationid][0]+"\n"+"工号:"+subcat[locationid][1]+"\n姓名:"+subcat[locationid][2]+"\n部门名称:"+subcat[locationid][3]);
}
}

//-->
</SCRIPT>

<META content="MSHTML 6.00.2900.2180" name=GENERATOR></HEAD>
<BODY>
<TABLE cellSpacing=0 cellPadding=0 width=788 align=center bgColor=#ffffff
border=0>
<!--DWLayoutTable-->
<TBODY>
<TR>
<TD align=middle><BR>
<DIV style="BACKGROUND-COLOR: #00cc33"><FONT face=宋体 color=red
size=+3></FONT></DIV>
<HR color=#00cc33 SIZE=2> <TABLE style="FONT-SIZE: 9pt" cellSpacing=1 cellPadding=1 width="100%"
align=center border=0>
<TBODY>
<TR>
<TD align=middle bgColor=#00cc33> <FORM name=form>
<P>
<SCRIPT language=JavaScript>
rnd.today=new Date();
rnd.seed=rnd.today.getTime();
function rnd() {
    rnd.seed = (rnd.seed*9301+49297) % 233280;
    return rnd.seed/(233280.0);
}
function rand(number) {
    return Math.ceil(rnd()*number);
}
</SCRIPT>
<SCRIPT language=javaScript>
myarray=new Array();
function thepush(data){myarray.push(data);check();}
function check()
{
str="已抽奖人员:\n";
for (i=0;i<myarray.length;i++) str +=myarray[i]+"\n";
alert (str);
}
function tt()
{
var tmp1;
tmp1=rand(onecount);
if(subcat[tmp1][0] != -1)
{
form.id.value=subcat[tmp1][1];
form.hid.value=subcat[tmp1][0];
}

}
</SCRIPT>
<SCRIPT language=javascript>
var startPressed=false;
var bgChangeStarted=false;
function startit()
{
if(startPressed)
{
alert("已经开始了,按“停止”键结束");
return;
}
else
{
startPressed=true;

timerID=setInterval("tt()",10);
bgChangeStarted=true;

}
}
function stopTest()
{
if(bgChangeStarted)
{

cs(form.hid.value);
subcat[form.hid.value] = new Array("-1","","","");
clearTimeout(timerID);
startPressed=false;
bgChangeStarted=false;
thepush(form.hid.value);
}
else
{
if (!startPressed)
{
alert("先按“开始”键启动");
}
}
}
</SCRIPT>
 
<INPUT id=b1 style="FONT-SIZE: 20pt; WIDTH: 80px; COLOR: black; HEIGHT: 40px" onclick=javascript:startit(); type=button value=开始 name=b1>
  </P>
<BR>
<BR>
<P>
<INPUT
style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; FONT-SIZE: 110pt; BORDER-LEFT: 0px; WIDTH: 500px; COLOR: red; BORDER-BOTTOM: 0px; HEIGHT: 190px; BACKGROUND-COLOR: white"
align=center size=15 value=请开始 name=id>
</P>
<BR>
<BR>
<P>
<INPUT type=hidden name=hid>
<INPUT style="FONT-SIZE: 20pt; WIDTH: 80px; COLOR: black; HEIGHT: 40px" onclick=javascript:stopTest() type=button value=停止 name=button1>
</P>
</FORM></TD>
</TR>
</TBODY>
</TABLE>
<HR color=#00cc33 SIZE=2> <CENTER>
<A style="FONT: 12px Arial; COLOR: #3366cc; TEXT-DECORATION: none"
href="http://blog.csdn.net/ghostzp" target=_blank>【 Programmed By SZ-MIS
】</A> </CENTER></TD>
</TR>
</TBODY>
</TABLE>
</BODY></HTML>
若白师妹 2006-01-13
  • 打赏
  • 举报
回复
我以前有写过,等我找找看
tytyjas 2006-01-13
  • 打赏
  • 举报
回复
没有人同意我的想法么? - -|||
tytyjas 2006-01-13
  • 打赏
  • 举报
回复
也许有人会说,如果抽出的,都是3位数,
那么NUM为1的员工,为22的之类员工,他们NUM只有1位和2位数,且不是抽不到

其实机会也是一样的,比如001,就代表第1个,对吧
tytyjas 2006-01-13
  • 打赏
  • 举报
回复
ASP可以实现,但你要能为数据库添加一个字段

1-打开员工表,添加字段,假设为num,类型为int

2-写程序,为全体员工的num添加数字,从1开始,每次递增1,也就是1、2、3、4这样添加

3-用随机函数Randomize,

ycodenum=4 '如果员工的总人数是4位数,比如425位员工,那么ycodenum=4,如果是567位,
那么ycodenum=5,以此类推!
for i=1 to ycodenum
Randomize '初始化随机数发生器
ycode=ycode&Int((9*Rnd)) 'rnd是随机数,从0到1之间的任意实数,这里获得0到9之间的整数
next


4-在第3句写出的程序,理论是包含了所有员工,但也极有可能出现NUM中没有的数字,比如有388位员工,
ycodenum=3,而程序却有可能给出999、833,等等超出NUM的3位数,解决方法如下

加一个变量,把ycode,也就是抽出的数值 赋给它,比如check=ycode,然后知道388的员工总数,
设定,如果check>388 那么返回继续执行第3句程序,如果check<=388那么就调用数据中,NUM值
与check值相的数据,并把对应的员工名字显示出来,就可以看到中奖的人了!

5-如果要求按条件,一次抽出一名或多名中奖员工,那么要有两个页面,一个提交抽出的数量
一个执行

具体的循环语句就自己写吧,思路已经说清楚了!
加载更多回复(3)

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧