gpt4 book ai didi

html - 从 Web 表单使用 NULL 更新 MySQL 字段

转载 作者:行者123 更新时间:2023-11-29 00:18:25 25 4
gpt4 key购买 nike

我在(经典)ASP 网页上有一个表单,我想用它来删除记录字段中保存的数据。该字段本身默认为 NULL。

我已经尝试了几种方法来做到这一点。如果我使用 <input value=""> , 它插入一个空白。如果我使用 <input value="NULL"> , 它插入单词 NULL 但这不是一个 NULL 值。

有什么想法吗?

SQL(来自 Dreamweaver):

<%
If (CStr(Request("MM_update")) = "deleteImage") Then
If (Not MM_abortEdit) Then
' execute the update
Dim MM_editCmd

Set MM_editCmd = Server.CreateObject ("ADODB.Command")
MM_editCmd.ActiveConnection = MM_ENG_STRING
MM_editCmd.CommandText = "UPDATE tblContent SET ContentImage = ?, ContentImageCaption = ? WHERE ContentID = ?"
MM_editCmd.Prepared = true
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 202, 1, 255, Request.Form("ContentImage")) ' adVarWChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 202, 1, 105, Request.Form("ContentImageCaption")) ' adVarWChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param3", 5, 1, -1, MM_IIF(Request.Form("MM_recordId"), Request.Form("MM_recordId"), null)) ' adDouble
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close

' append the query string to the redirect URL
Dim MM_editRedirectUrl
MM_editRedirectUrl = "delete-images-updated.asp"
If (Request.QueryString <> "") Then
If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0) Then
MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
Else
MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
End If
End If
Response.Redirect(MM_editRedirectUrl)
End If
End If
%>

和形式:

<form ACTION="<%=MM_editAction%>" METHOD="POST" name="deleteImage" id="deleteImage">
<input name="ContentID" type="hidden"
value="<%=(rsContent.Fields.Item("ContentID").Value)%>">
<input name="ContentImage" type="hidden" value="">
<input name="ContentImageCaption" type="hidden" value="">
<h3>Are you sure you want to delete this image?</h3>
<input type="submit" class="submitButton" value="Yes! Delete Image">
<input type="reset" class="resetButton"
value="No. Cancel Delete" onClick="javascript:history.go(-1)">
<input type="hidden" name="MM_update" value="deleteImage">
<input type="hidden" name="MM_recordId"
value="<%= rsContent.Fields.Item("ContentID").Value %>">
</form>

最佳答案

在部分内:

Set MM_editCmd = Server.CreateObject ("ADODB.Command")
MM_editCmd.ActiveConnection = MM_ENG_STRING
MM_editCmd.CommandText = "UPDATE tblContent SET ContentImage = ?, ContentImageCaption = ? WHERE ContentID = ?"
MM_editCmd.Prepared = true
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 202, 1, 255, Request.Form("ContentImage")) ' adVarWChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 202, 1, 105, Request.Form("ContentImageCaption")) ' adVarWChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param3", 5, 1, -1, MM_IIF(Request.Form("MM_recordId"), Request.Form("MM_recordId"), null)) ' adDouble
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close

我更改了有关数据库更新的行

MM_editCmd.CommandText = "UPDATE tblContent SET ContentImage = ?, ContentImageCaption = ? WHERE ContentID = ?"

MM_editCmd.CommandText = "UPDATE tblContent SET ContentImage = NULL, ContentImageCaption = NULL WHERE ContentID = ?"

然后删除(在本例中为两行)引用字段为 NULL 的行

MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 202, 1, 255, Request.Form("ContentImage")) ' adVarWChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 202, 1, 105, Request.Form("ContentImageCaption")) ' adVarWChar

这会在提交表单时在必填字段中输入 NULL。表单详细信息保持不变。

关于html - 从 Web 表单使用 NULL 更新 MySQL 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21999547/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com