sql - 经典 Asp - ADO 子例程未正确调用
问题描述
我的 asp 文件中有一个子例程,我正在尝试添加到数据库表中。当我从逻辑中删除子例程包装器时,它可以工作。(当然,在任何用户交互之前自动提交)。
我已经前后测试了这个,我一生都无法理解为什么会发生这种情况。我添加了逻辑以防止在字段值为空或未按下按钮时提交数据。
任何帮助将不胜感激..必须承认这个让我发疯,因为我正在从另一个我写在另一个页面上完美运行的例程中复制它。
谢谢。
<% Dim objConn, connStr, strSql
Dim iCommandID
Dim strUserName, strEmailAddress, strPassword1, bSubmit
iCommandID = Request.Form("cmdID")
strUserName = CStr(Request.Form("username"))
strEmailAddress = CStr(Request.Form("emailAddress"))
strPassword1 = CStr(Request.form("password1"))
bSubmit = Request.Form("btnSubmit")
If Request.Form("cmdID").Count > 0 Then
iCommandID = CLng(Request.Form("cmdID"))
ElseIf Request.QueryString("cmdID").Count > 0 Then
iCommandID = Clng(Request.QueryString("cmdID"))
Else
iCommandID = 0
End If
response.write(iCommandID)
SELECT CASE iCommandID
CASE 1
addUser
END SELECT
Sub addUser
If bSubmit <> "" Then
If strUserName <> "" AND strEmailAddress <> "" AND strPassword1 <> "" Then
connStr = Application("DATABASE_CONNECTION_STRING")
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open(connStr)
strSql = "INSERT INTO dbo.tbl_Users (userName, userEmailAdd, userPassHash) VALUES (" + "'" + strUserName + "'," + "'" + strEmailAddress + "'," + "'" + strPassword1 + "'" + ")"
objConn.Execute strSql, , adCmdText
objConn.Close
Set objConn = Nothing
End If
End If
End Sub
%> ```
解决方案
推荐阅读
- python - 如何在 Ubuntu 18.04 中将 pip3 更新到其最新版本?
- css - 每个引导导航栏链接可以单独间隔吗
- xamarin - 更新到 Visual Studio 2017 版本 15.8 预览版后,“无法解析引用:`System.Memory`”或“找不到`System.Memory`”
- javascript - 溢出问题:悬停时隐藏/可见切换。Gif 可在帖子中找到
- git-clean - 我可以找回被 git 清理过的东西吗?
- javascript - indexOf 用于角度打字稿
- django - Django DateTimeField 显示为字符串
- typescript - 如何使用@PnP/SP 从列表中查询列表项和附件?
- html - 提交到数据库时,单选按钮仅选择离子中的第一个值
- java - 在java中使用awt创建抛物线时出现重绘问题