编辑器在网站开发中的作用越来越大,即可以进行文字的排版,也可以插入图片,flash,音乐,表格等信息,让页面越来越丰富。但是在删除一篇文章的同时,也需要将编辑器中的这些信息给删除,这样可以节约一点服务器空间。这里是一个asp网络编程删除文章时同时删除文章中在服务器上的图片的代码,大家可以根据这个去修改一下,删除其它内容。
<!--#include file="conn.asp"-->
<%
'***********************************************
'函数名:getPicUrl
'作 用:获得信息里的图片地址
'参 数:str ----信息
'***********************************************
Function getPicUrl(Str)
Dim content, regstr, url
content = Str&""
regstr = "src=.+?.(gif|jpg)"
url = Replace(Replace(Replace(RegExp_Execute(regstr, content), "'", ""), """", ""), "src=", "")
getPicUrl = url
End Function
Function RegExp_Execute(patrn, strng)
Dim regEx, Match, Matches, values '建立变量。
Set regEx = New RegExp '建立正则表达式。
regEx.Pattern = patrn '设置模式。
regEx.IgnoreCase = true '设置是否区分字符大小写。
regEx.Global = True '设置全局可用性。
Set Matches = regEx.Execute(strng) '执行搜索。
For Each Match in Matches '遍历匹配集合。
values = values&Match.Value&","
Next
RegExp_Execute = values
End Function
'***********************************************
'函数名:DeleteFile
'作 用:删除文件
'参 数:file ----文件路径
'***********************************************
Function DeleteFile(File)
Dim fso
Set fso = CreateObject("scripting.filesystemobject")
If fso.FileExists(File) Then
fso.DeleteFile server.MapPath(File)
Else
response.Write File&"文件不存在"
End If
Set fso = Nothing
End Function
'使用举例
Dim id
id = request.QueryString("id")
Set rs = server.CreateObject("adodb.recordset")
sql = "select * from articles where id = "&id&""
rs.Open sql, conn, 1, 3
If rs.bof And rs.EOF Then
response.Write "<script language=javascript>alert('error!')</script>"
response.End()
Else
Dim picUrl
Dim picUrlArray
Dim x, y
picUrl = getPicUrl(rs("content"))
If picUrl <> "" Then
picUrl = Left(picUrl, Len(picUrl) -1)
picUrlArray = Split(picUrl, ",")
For x = 0 To UBound(picUrlArray)
If InStr(picUrlArray(x), "/编辑器图片上传目录/") > 0 Then
DeleteFile(picUrlArray(x))
End If
Next
End If
rs.Delete
response.Write "<script language=javascript>alert('删除成功')</script>"
End If
rs.Close
%>(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)