问题是这样的:我从网上下载的聊天室源码,经多次修改后终于成功。但它是要求用户登陆的,现在我想
修改成像一般聊天室做的那样,用户一进来不用登陆即可自动给一个用户名如"游客:20300003",不知道如何
修改实现。网上一个都搜不到啊.(注:我用的是asp ,ACCESS,空间不支持global.asp,以及session,application)
我的疑问是:要达到这样的目的,要不要写一个if判断,要不要写一个隐藏表单,如<input name="name",type="HIDDEN",Value=<%request(name)%>>之类?
下面是我的原代码,请高手告诉我如何修改后,插到我注释的下面“可能的接口处”。谢谢。
----------------------------
<%@codepage=936%>
<%Response.Buffer=true%>
<body bgcolor="#F8E17A">
<%if Request("name")="" then%>
<%addr=Request("REMOTE_ADDR")%>
<form method="POST" action="chatadd1.asp">
<p><input type="hidden" name="IP" value="<%
=addr%>"></p>
#####可能的接口处1########
<p>昵称:<input type="text" name="name"
size="15">
密码:<input type="password" name="pass"
size="15">
性别:<select name="D4" size="1" style="color:
rgb(0,0,128)">
<option value="先生">先生</option>
<option value="女士">女士</option>
</select>
<input type="submit" value="发送" name="B1">
<input type="reset" value="复原" name="B2"></p>
</form>
<%=Request("a")%>
<%else%>
<%
B1=Request("B1")
If B1="发送" Then
If Request("name")="" or Request("pass")=""
Then
a="名字或密码不能为空!<br>"
Response.Redirect "chatadd1.asp?a=" & a & " "
end if
##########可能的接口处2#########
dim Conn,sConnection
set Conn=Server.CreateObject
("ADODB.Connection")
sConnection =
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data
Source=C:\sites\content\t\e\l\tellerx\db\chat.m
db;" & _
"Persist Security Info=False"
'Conn.Open(sConnection)
Conn.Open sConnection
sql="SELECT * FROM 用户表 WHERE 姓名='" &
Request("name") & "'"
Set Rs=conn.Execute(sql)
If Rs.Bof OR Rs.Eof Then
'sz="'"&Request("IP")&_"','"&Request("name")
&_"','"&Request("D4")&_"','"&Request("pass")
&"'"
sz="'"&Request("IP")&"','"&Request("name")
&"','"&Request("D4")&"','"&Request("pass")&"'"
into_db = "INSERT INTO 用户表 (IP, 姓名, 性别,
密码) VALUES(" &sz & ")"
Conn.Execute(into_db)
Else
If Request("pass")<>Rs("密码") Then
a="这个名字已经被别人使用,或者你输入的口令不
对!<br>"
Response.Redirect "chatadd1.asp?a=" & a & " "
end if
end if
#########可能的接口处3##############重要
time1=now
'Set Conn=Server.CreateObject
("ADODB.Connection")
'Connstr="DBQ="+server.mappath
("tellerx/db/chat.mdb")+";DRIVER={Microsoft
Access Driver (*.mdb)};"
'Conn.Open connstr
set Conn=Server.CreateObject
("ADODB.Connection")
sConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data
Source=C:\sites\content\t\e\l\tellerx\db\chat.m
db;" & _
"Persist Security Info=False"
Conn.Open sConn
sql="SELECT * FROM 在线用户表 WHERE 姓名='" &
Request("name") & "'"
Set Rs=conn.Execute(sql)
If Rs.Bof OR Rs.Eof Then
'sz = "'" & Request("name") &_"', '"& Request
("D4") &_"', '"& time1 & "'"
sz = "'" & Request("name") &"', '"& Request
("D4") &"', '"&time1&"'"
into_db="INSERT INTO 在线用户表 (姓名,性别,登录
时间) VALUES(" &sz & ")"
Conn.Execute(into_db)
name=Request("name")
sex=Request("D4")
#########至此应该接口完毕############
ming="※管理员宣布…"
sz2= "<font color=red>"&"热烈欢迎" & "</font>
<font color=#006600>"&name & sex &"
</font>"&"<font color=red>"&"的光临"
into_db2 = "INSERT INTO 聊天表 ( 姓名,说话 )
VALUES('" & ming & "','" & sz2 & "')"
Conn.Execute(into_db2)
end if
end if%>