asp删除图片不能删除提示错误
下面这段代码我是用来删除图片的,但是当记录里有图片的时候提示删除是正确的,但是如果记录里图片为空的时候删除的时候会提示Server.MapPath()错误'ASP0171...
下面这段代码我是用来删除图片的,但是当记录里有图片的时候提示删除是正确的,但是如果记录里图片为空的时候删除的时候会提示
Server.MapPath() 错误 'ASP 0171 : 80004005'
丢失路径
/admin/all.asp,行 18
必须为 MapPath 方法指定路径参数。以下是这段代码:
<%
Dim action,tuid
action = trim(request.form("action"))
if action = "" then action = trim(request.querystring("action"))
select case action
case "del"
DelID = request("DelID")
Dim DelRs
set fso = Server.CreateObject("scripting.filesystemobject")
set DelRs = server.createobject("adodb.recordset")
' if instr(DelID,",")>0 then ' 删除多个记录
DelID = replace(DelID," ","")
sqlstr = "select tu from pic where id in ("&DelID&")"
DelRs.open sqlstr,conn,1,3
while not DelRs.eof
fileName = DelRs("tu")
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
DelRs.delete
DelRs.movenext
wend
set DelRs = nothing
response.Redirect("all.asp")
end select
%>
我的意思现在就是这样的:当里面的图片为空的时候记录也照样能够正常的删除,目前就是当记录的图片是空的时候删不了记录提示路径出错,希望高手们帮忙解答!谢过! 展开
Server.MapPath() 错误 'ASP 0171 : 80004005'
丢失路径
/admin/all.asp,行 18
必须为 MapPath 方法指定路径参数。以下是这段代码:
<%
Dim action,tuid
action = trim(request.form("action"))
if action = "" then action = trim(request.querystring("action"))
select case action
case "del"
DelID = request("DelID")
Dim DelRs
set fso = Server.CreateObject("scripting.filesystemobject")
set DelRs = server.createobject("adodb.recordset")
' if instr(DelID,",")>0 then ' 删除多个记录
DelID = replace(DelID," ","")
sqlstr = "select tu from pic where id in ("&DelID&")"
DelRs.open sqlstr,conn,1,3
while not DelRs.eof
fileName = DelRs("tu")
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
DelRs.delete
DelRs.movenext
wend
set DelRs = nothing
response.Redirect("all.asp")
end select
%>
我的意思现在就是这样的:当里面的图片为空的时候记录也照样能够正常的删除,目前就是当记录的图片是空的时候删不了记录提示路径出错,希望高手们帮忙解答!谢过! 展开
3个回答
展开全部
myFile=Server.MapPath(fileName)
看看你filename里面是什么?估计是空的,或者路径有问题。
把
fileName = DelRs("tu")
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
替换为:
fileName = DelRs("tu")
if trim(filename)="" then
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
看看你filename里面是什么?估计是空的,或者路径有问题。
把
fileName = DelRs("tu")
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
替换为:
fileName = DelRs("tu")
if trim(filename)="" then
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if fileName<>"" and not isnull(fileName) then
fileName = DelRs("tu")
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
fileName = DelRs("tu")
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在Server.MapPath之前做个判断就行了,
if fileName<>"" then
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
end if
if fileName<>"" then
myFile=Server.MapPath(fileName)
if fso.FileExists(myFile) then
fso.DeleteFile myFile
end if
end if
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询