先大概综述一下,这是一个用户管理系统下的一个子模块,用工号和密码登录后要求用户可以更改自己的姓名(为了简化我例举了只更新姓名)。
登录home.asp如下:
gh=request.form("gh") gh为工号
mm=request.form("mm") mm为密码
set conn=server.createobject("adodb.connection")
conn.open "provider=SQLoledb;data source=wujian;uid=sa;pwd=xxx;database=xunbang"
sql="select * from basic where workid="&gh&" and password="&mm&""
set rs=conn.execute(sql)
%>
<%if rs.eof then%>
<script language="vbscript">
alert"工号或密码有误,请重新输入!"
top.location.href="index.htm"
</script>
<%else%>
<%
session("gh")=rs("workid")
session("mm")=rs("password")
session("xm")=rs("name")
%>
<%end if%>
<%conn.close
set conn=nothing%>
==========================================================================
然后是用户更新自己信息的yourself.asp:
<%
xm1=request.form("xm1") 用户更新的姓名
为了避免和session变量冲突,我在变量名后加了个1,不知这样是否可取?
set conn=server.createobject("adodb.connection")
conn.open "provider=SQLoledb;data source=wujian;uid=sa;pwd=xxx;database=xunbang"
是不是每次都得重新联接数据库?
sql="select * from basic where workid="&gh&" and password="&mm&""
上面这句我是想实现定位到当前用户数据库记录的,然后再把xm1变量更新到数据库中该用户的name字段里去,只中不知如何写下去了,特来求教,不甚感激!
%>
可以。但是提交的表单中要有名字为xm1的表单。
用的时候肯定要连结的。
sql="select * from basic where workid="&gh&" and password="&mm&""
set rs=conn.execute(sql)
rs.field("username")=xm1
rs.update
rs.close