28,407
社区成员




一个简单的车牌选号系统,如比我放进去5个车牌号
车牌1 车牌2 车牌3 车牌4 车牌5
数据库第一列为车牌1-5 后面有预约人信息、电话、标识(如已被选,则1,未被选null),待提交,默认为空
我在填写预约信息的asp页面写了,如果该车牌已被选(即标识=1),点击进去的时候,会提示已被选,不能再进入
但是我想到一个情况,如果两个人同时进入一个车牌,此时谁都没提交,标识=null,两个人都能进的去预约页面,但是提交数据有快慢,有一个人手快,填完信息提交了,另一个人再提交的时候,就不让能他提交了 这个判断语句不会写,想麻烦各位高手帮我看看怎么搞
目前单纯的上传语句如下:
<%
if request("action")=1 then
set rs=server.CreateObject("adodb.recordset")
sql="select * from WP_num where id="&request("id")
rs.open sql,conn,3,2
rs("username")=trim(request("username"))
rs("tel")=trim(request("tel"))
rs("usertime")=now()
rs("biaozhi")=1
rs.update
rs.close
response.write "<script>alert('车牌号码预约成功');location.href='index.asp';</script>"
response.end
end if
set rs=server.CreateObject("adodb.recordset")
sql="select * from WP_num where id="&request("id")
rs.open sql,conn,3,2
%>
请问如何判断,如何写啊 感谢各位大神
很久没写代码了,给你个思路参考一下:先建立5个全局变量分别对应5个车牌号,初始值为NULL,用于保存预约人的账号即username。预约人提交数据时,先判断对应的全局变量是否为NULL,如是则立即将预约人的USERNAME写入该变量中,再执行读取并判断预约的号牌标志的操作,如果biaozhi为NULL,即未有人预约成功,则再进行预约人所有信息数据的写入操作。
这个思路类似于我们常提到的PV操作。而全局变量就是这个PV的标志。
伪代码如下:
IF Session("bookname")=NULL THEN Session("bookname")=request("username")
SELECT biaozhi FROM WP_num WHERE 预约人选定的车牌号ID
IF biaozhi=NULL THEN
biaozhi=1
写入预约人信息
SESSION("bookname")=NULL
ELSE
RESPONSE.WRITE "该车牌已被预约。"
END IF
ELSE
RESPONSE.WRITE "该车牌暂被锁定,请稍后再试"
END IF