注册 登录
编程论坛 ASP技术论坛

Microsoft JET Database Engine 错误 '80040e14'

麦皮虫 发布于 2009-11-05 10:28, 2558 次点击
Microsoft JET Database Engine 错误 '80040e14'

UPDATE 语句的语法错误。

/journal/modifypwd.asp,行 7

-------------

源代码是这样的,请问高手哪里有问题?

<!--#include file="conn.asp" -->
<%
    if request.Form("button") ="提交" then
        ppp=conn.execute("select count(*) from [user] where loginID='"&session("loginID")&"' and password='"&request.Form("oldpwd")&"'")(0)
        if ppp>0 then
            sql="update user set password='"&request.Form("pwd")&"' where loginID='"&session("loginID")&"'"
            conn.execute(sql)
            %>
            <script>
                alert("密码修改成功");
                location.href("modifypwd.asp");
            </script>
            <%
            response.End()
        else
            %>
            <script>
                alert("原始密码错误");
                location.href("modifypwd.asp");
            </script>
            <%
            response.End()
        
        end if
    end if
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>办公自动化系统</TITLE>
<link href="skins/css/main.css" rel="stylesheet" type="text/css" />
</head>

<body>
<table width="100%" border="0" cellspacing="1">
  <tr class="tb_title">
    <th colspan="2">个人密码修改</th>
  </tr>
  <form method="post">
  <tr>
    <td width="40%" align="right">原始密码:</td>
    <td><input type="password" name="oldPwd" id="oldPwd"></td>
  </tr>
  <tr>
    <td align="right">新 密 码:</td>
    <td><input type="password" name="pwd" id="pwd"></td>
  </tr>
  
  <tr>
    <td align="right">再次确认:</td>
    <td><input type="password" name="pwd2" id="pwd2"></td>
  </tr>
  <tr>
    <td colspan="2" align="center"><input name="button" type="submit" class="button" onClick="return check()" id="button" value="提交"></td>
    </tr>
  </form>
</table>
<script>
function check(){
if((document.all.pwd.value!=document.all.pwd2.value)||(document.all.pwd.value==""))
    {
        alert('新密码不能为空或二次确认不一致');
        return false;
    }
}
</script>
</body>
</html>
23 回复
#2
chenguoxing5172009-11-05 12:55
sql="update user set password='"&request.Form("pwd")&"' where loginID='"&session("loginID")&"'"
换为
sql="update [user] set password='"&request.Form("pwd")&"' where loginID="&session("loginID")&""
看下行不?
#3
麦皮虫2009-11-05 13:52
还是不行
#4
yms1232009-11-05 14:33
sql="update user set password='"&request.Form("pwd")&"' where loginID='"&session("loginID")&"'"
            conn.execute(sql)
直接用
Dim rs
Set rs=Server.CreateObject("ADODB.ReocrdSet")
rs.open "select * from [user] where loginID='"&session("loginID")&"'",conn,1,3
rs("password")=request.Form("pwd")
rs.update
#5
麦皮虫2009-11-05 14:49
Server 对象 错误 'ASP 0177 : 800401f3'

Server.CreateObject 失败

/journal/modifypwd.asp,行 7

800401f3

不行~~错误提示变成
#6
aspic2009-11-05 15:09
ADODB.ReocrdSet
---------------->
adodb.recordset
#7
aspic2009-11-05 15:10
conn.execute "update [user] set [password]='"&request.Form("pwd")&"' where loginID="&session("loginID")
#8
麦皮虫2009-11-05 16:11
用这个替换后 conn.execute "update [user] set [password]='"&request.Form("pwd")&"' where loginID="&session("loginID")


提示:

Microsoft JET Database Engine 错误 '80040e10'

至少一个参数没有被指定值。

/journal/modifypwd.asp,行 6
#9
麦皮虫2009-11-05 16:23
还是不行撒
#10
aspic2009-11-05 17:06
至少一个参数没有被指定值。  都给你提示了
#11
麦皮虫2009-11-05 17:07
那个参数没给值啊????都赋值了啊
#12
aspic2009-11-05 17:34
sql = "update [user] set [password]='"&request.Form("pwd")&"' where loginID="&session("loginID")
response.write sql
#13
麦皮虫2009-11-05 17:45
回复 12楼 aspic
只有本站会员才能查看附件,请 登录


修改后~~这样提示,但是,密码还是没有修改成功。
#14
aspic2009-11-05 17:53
明显loginID是字符 应该用''
#15
aspic2009-11-05 17:54
前面的password你又知道用''为什么后面又不用 还以为你的 loginID是整数呢
#16
aspic2009-11-05 17:55
一般这样的东西 都是用ID做为查询的条件的 要不然万一有重复的不就乱了吗
#17
麦皮虫2009-11-05 18:00
sql = "update [user] set [password]='"&request.Form("pwd")&"' where  
loginID=&session("loginID")
response.write sql

在哪加啊??实在是不知道。
#18
chenguoxing5172009-11-05 22:49
session("loginID")这个是否有值,读出来看下?
#19
麦皮虫2009-11-06 09:23
以下是引用aspic在2009-11-5 17:54:21的发言:

前面的password你又知道用''为什么后面又不用 还以为你的 loginID是整数呢
版主,在哪加啊??能不能把源码全部贴出来啊,你这样说我搞不懂啊,新手多多关照哦。
#20
麦皮虫2009-11-06 09:24
以下是引用chenguoxing517在2009-11-5 22:49:49的发言:

session("loginID")这个是否有值,读出来看下?
怎么读?
#21
aspic2009-11-06 09:33
conn.execute("update [user] set [password]='"&request.Form("pwd")&"' where loginID='"&session("loginID")&"'")
#22
麦皮虫2009-11-06 10:05
问题解决了,谢谢,版主。好人,好人!!!
#23
gdk20062009-11-06 13:25
以下是引用aspic在2009-11-5 17:06:27的发言:

至少一个参数没有被指定值。  都给你提示了
晕死,很明显的说你的有一个值没有被指定,看看你的字段和你的SQL语句!
#24
麦皮虫2009-11-06 13:45
以下是引用gdk2006在2009-11-6 13:25:48的发言:

晕死,很明显的说你的有一个值没有被指定,看看你的字段和你的SQL语句!
呵呵,我要是会,还用问吗?
1