gpt4 book ai didi

sql - 从字符串 asp 和 ms Access 查询中转义特殊字符

转载 作者:行者123 更新时间:2023-12-04 16:09:48 25 4
gpt4 key购买 nike

我有 ASP 代码和 MS Access,我正在更新我的记录。在更新时,当我在字符串中放入单引号 (') 等特殊字符时,它会显示错误。当字符串没有特殊字符时,它可以正常工作。

请帮助或给出任何解决方案。这是我的代码。

<!--#INCLUDE FILE="ConnStr.asp"-->
dim fileTitle
dim fileDescription
dim fromDateX
dim toDateX
dim romTimeX
dim toTimeX
dim Location
dim LocationURL
dim FileID


fileTitle= request("fileTitle")
fileDescription= request("description")
fromDateX= request("fdate")
toDateX= request("tdate")
romTimeX= request("ftime")
toTimeX= request("ttime")
Location= request("location")
LocationURL= request("locationurl")
FileID= request("jID")


sql = "Update tblFileInfo Set sFDate='" & fromDateX & "',sTDate='" & toDateX & "', sFTime='" & romTimeX & "',sTTime='" & toTimeX & "',location='" & Location & "', locationURL='" & LocationURL & "', filetitle='" & fileTitle & "', description='" & fileDescription & "' Where ID=" & FileID

objConn.Execute(sql)
Response.Redirect("adminfiles.asp?msg=save")

最佳答案

正如前面的回答提到的,由于 SQL 注入(inject),您应该避免以这种方式更新或 Access 您的数据库。

如果您的脚本仅用于临时数据库更新和供个人使用,快速而肮脏的方法是通过使用 Replace 函数再次重复它来转义撇号。

sql = "Update tblFileInfo Set sFDate='" & Replace(fromDateX,"'","''") & "'  ...."

或替换为等效的 HTML。

sql = "Update tblFileInfo Set sFDate='" & Replace(fromDateX,"'","&#39;") & "'  ...."

如果您时间紧迫,请不要将此用于任何快速一次性脚本。其他情况下不推荐。

关于sql - 从字符串 asp 和 ms Access 查询中转义特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20677033/

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