批量生成会员卡
作者:cmscn 日期:2005-04-11
修改admin_notes.asp文件
1、查找
<tr><td><%response.write img_admin("","")%> <a href='?jk_mod=<%response.write jk_mod%>&action=add'<%if action="add" then response.write " class=red"%>>添加会员卡</a></td></tr>
下面添加:
<tr><td><%response.write img_admin("","")%> <a href='?jk_mod=<%response.write jk_mod%>&action=rnd'<%if action="rnd" then response.write " class=red"%>>批量生成会员卡</a></td></tr>
2、查找
case "add"
call joekoe_chk_card_add()
下面添加:
case "rnd"
call joekoe_chk_card_rnd()
3、查找
case "emoney"
call joekoe_chk_emoney()
case else
call joekoe_chk_main()
end select
call admin_ender(1)
下面添加:
function card_rand_pass(rnum)
dim var_pass,var_len,temp1,ri,rand_num
var_pass="abcdefghijklmnopqrstuvwxyz0123456789"
var_len=len(var_pass)
temp1=""
for ri=1 to rnum
randomize
rand_num=int((var_len-1+1)*rnd)+1
temp1=temp1&mid(var_pass,rand_num,1)
next
card_rand_pass=temp1
end function
function card_format_var(vlen,vvar)
dim fi,temp1
temp1=""
for fi=1 to vlen
temp1=temp1&vvar
next
card_format_var=temp1
end function
4、查找
sub joekoe_chk_card_add()
……
<%
call submit_add()
end sub
下面添加:
sub joekoe_chk_card_rnd()
call admin_td("批量生成会员卡")
dim c_num,c_name_start,c_name_len,c_name_head,c_pass_len,c_emoney,c_name,c_pass,tmp1
if chk() then
c_num=trim(request.form("c_num"))
if not int_true(c_num) then c_num=0
c_name_start=trim(request.form("c_name_start"))
if not int_true(c_name_start) then c_name_start=1
if int(c_name_start)<1 then c_name_start=1
c_name_len=trim(request.form("c_name_len"))
if not int_true(c_name_len) then c_name_len=0
c_name_head=code_admin("c_name_head",1,10)
c_pass_len=trim(request.form("c_pass_len"))
if not int_true(c_pass_len) then c_pass_len=1
if int(c_pass_len)<1 then c_pass_len=1
c_emoney=trim(request.form("c_emoney"))
if not int_true(c_emoney) then c_emoney=1
if int(c_emoney)<1 then c_emoney=1
'if c_name_head="" then
' call admin_error("您输入的 卡号头系数 不能为空!")
' exit sub
'end if
if int(c_num)<1 or int(c_num)>int(card_max_num) then
call admin_error("您输入的 增加数量 小于1或大于"&card_max_num&"!")
exit sub
end if
sql="select count(c_id) from cards where left(c_name,"&(len(c_name_head)+1)&")='"&c_name_head&"0' and len(c_name)="&c_name_len
set rs=joekoe_cms.exec(sql,1)
if rs(0)>0 then
rs.close
call admin_error("您输入的 卡号头系数("&c_name_head&")及卡号长度("&c_name_len&") 可能会引起卡号重复!")
exit sub
end if
rs.close
for i=c_name_start to (int(c_num)+int(c_name_start)-1)
tmp1=card_format_var((c_name_len-len(c_name_head)-len(i)),"0")
c_name=c_name_head&tmp1&i
c_pass=card_rand_pass(c_pass_len)
sql="insert into cards (c_name,c_pass,c_emoney,c_hidden) " & _
"values ('"&c_name&"','"&c_pass&"',"&c_emoney&",0)"
call joekoe_cms.exec(sql,0)
next
call admin_msg("已成功生成"&c_num&"个会员卡号!","?jk_mod="&jk_mod,0)
exit sub
end if
call form_first()
%>
<form name=add_frm action='?jk_mod=<%response.write jk_mod%>&action=rnd' method=post>
<input type=hidden name=chk value='yes'>
<tr>
<td width='20%'>增加数量:</td>
<td width='80%'><input type=text name=c_num value='1' size=10> 个,一次最多增加<font class=red><%response.write card_max_num%></font>个</td>
</tr>
<tr>
<td>开始系数:</td>
<td><input type=text name=c_name_start value='1' size=10> 一般为1或上次生成数量+1</td>
</tr>
<tr>
<td>卡号长度:</td>
<td><select name=c_name_len sizs=1>
<option>6</option>
<option>8</option>
<option>10</option>
<option>12</option>
<option selected>15</option>
<option>18</option>
<option>20</option>
</select> 位</td>
</tr>
<tr>
<td>卡号头系数:</td>
<td><input type=text name=c_name_head value='C' alt='长度不能超过10' size=10 maxlength=10> 例:<font class=red>C</font>000000000023</td>
</tr>
<tr>
<td>密码长度:</td>
<td><select name=c_pass_len sizs=1>
<option>5</option>
<option>8</option>
<option selected>10</option>
<option>20</option>
</select> 位</td>
</tr>
<tr>
<td>充值货币数:</td>
<td><select name=c_emoney size=1>
<option>5</option>
<option>10</option>
<option>20</option>
<option>50</option>
<option>100</option>
</select> <%response.write joekoe_cms.web_unit%></td>
</tr>
<tr><td></td><td height=40><input type=submit value='批量生成会员卡'></td></tr>
</form>
<%
end sub
http://www.joekoe.com/forum_view.asp?forum_id=7&view_id=50389
评论: 8 | 引用: 0 | 查看次数: 627
发表评论