首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 删除文章的同时删除图片出了点错误,找不到路径!
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-01 14:02:13 楼主
    <!-- #include file="conn.asp" -->
    <%
    id=request("id")
    set rs=conn.execute("select * from news_Info where id="&id&" order by ID DESC")
    AA=rs("n_content")
    Set RE=NEW REGEXP
    RE.GLOBAL=TRUE
    RE.Pattern = "(src=)(' ¦"&CHR(34)&" ¦ )?(.[^' ¦ ¦"&CHR(34)&"]*)(\.)(jpg ¦gif ¦png ¦bmp ¦jpeg)(' ¦"&CHR(34)&" ¦ ¦>)?" '
    Set Matches = RE.Execute(AA) ' 执行搜索。 
    For Each Match in Matches
    allpicurl=allpicurl&Replace(SERVER.HTMLENCODE(MATCH),"src=","")&" ¦"
    Next '搜索完成
    checkchoice=split(allpicurl," ¦") '开始截取
    Set fs = Server.CreateObject("Scripting.FileSystemObject")
    for i=0 to UBound(checkchoice)
    mulu=checkchoice(i)
    if fs.FileExists(mulu) then '判断是否有存在图片
    fs.DeleteFile mulu, True'删除图片
    else
    response.write "无图片"&checkchoice(i)
    end if
    next
    conn.execute("delete from news_info where id='"&id&"'")
    %>
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-01 14:05:401楼 得分:0
    基本上搜索功能没有问题!主要在删除方面有问题!!
    ——————————————————————————————————————————
    Set fs = Server.CreateObject("Scripting.FileSystemObject")
    for i=0 to UBound(checkchoice)
    mulu=checkchoice(i)
    if fs.FileExists(mulu) then '判断是否有存在图片
    fs.DeleteFile mulu, True'删除图片
    else
    response.write "无图片"&checkchoice(i)
    end if
    next
    conn.execute("delete from news_info where id='"&id&"'")
    ——————————————————————————————————————————————
    应该是上面这个地方有问题,不过老是搞不好!
    当我将checkchoice(i) 输出的时候,图片的地址是正常的!但是老是无法删除!
    后来我测试删除,就直接将mulu="../uploadfiles/20080430/20080430004709676.jpg"
    却可以删除!不知道怎么回事
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • possible_Y
    • 等级:
    发表于:2008-05-01 14:55:462楼 得分:0
    try:

    mulu=Server.MapPath(checkchoice(i));
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-01 14:59:553楼 得分:0
    回复修改后结果

    Server.MapPath(), ASP 0171 (0x80004005)
    必须为 MapPath 方法指定路径参数。
    /teaadm/deletefile.asp, 第 18 行
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-01 15:02:064楼 得分:0
    mulu=Server.MapPath(checkchoice(i))
    回复possible_Y
    这个地方出错啦!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • possible_Y
    • 等级:
    发表于:2008-05-01 15:05:205楼 得分:0
    你的代码怎么改的呢?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-01 15:12:166楼 得分:0
    checkchoice=split(allpicurl," ¦")
    Set fs = Server.CreateObject("Scripting.FileSystemObject")
    for i=0 to UBound(checkchoice)
    mulu=Server.MapPath(checkchoice(i))
    if fs.FileExists(mulu) then
    fs.DeleteFile mulu, True
    else
    response.write checkchoice(i)
    end if
    next
    ______________________________________________________________
    上面是改了的
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • possible_Y
    • 等级:
    发表于:2008-05-01 15:19:037楼 得分:0
    关键还是你自己要确认路径是否正确,因为不知道你的那些图片的相对路径和你实际网站物理路径的对应关系。

    Server.MapPath只是用来获取你的网站或虚拟路径的物理路径的,比如Server.MapPath("/")就是应用程序根目录所在的位置
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-01 15:45:388楼 得分:0
    mulu="/uploadfiles/20080430/20080430004709676.jpg"
    Set fs = Server.CreateObject("Scripting.FileSystemObject")
    if fs.FileExists(mulu) then
    fs.DeleteFile mulu, True
    else
    response.write checkchoice(i)
    end if
    ————————————————————————————————————————
    这个可以!!如上:
    但是到了截取的时候!如下:
    checkchoice=split(allpicurl," ¦")
    Set fs = Server.CreateObject("Scripting.FileSystemObject")
    for i=0 to UBound(checkchoice)
    mulu=Server.MapPath(checkchoice(i))
    if fs.FileExists(mulu) then
    fs.DeleteFile mulu, True
    else
    response.write checkchoice(i)
    end if
    ——————————————————————————————————————————
    干脆不删除,就判断看看输出的路径对不对!结果输出来的都是对的
    如下:
    checkchoice=split(allpicurl," ¦")
    Set fs = Server.CreateObject("Scripting.FileSystemObject")
    for i=0 to UBound(checkchoice)
    response.write checkchoice(i)
    next
    —————————————————————————————————————————
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-02 19:16:289楼 得分:0
    先判断图片是否存在,不存在就跳过
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    世纪乐知(北京)网络技术有限公司 版权所有 京 ICP 证 020026 号
    Copyright © 2000-2007, CSDN.NET, All Rights Reserved