当前位置: 首页 > 图文教程 > 网络编程 > ASP > 用文本+ASP打造新闻发布系统(四)新闻删除

ASP
[原创]asp下用实现模板加载的的几种方法总结
asp下利用fso实现文件夹或文件移动改名等操作函数
asp cint clng的范围与防止cint和clng的溢出解决方法大全
asp防范跨站点脚本攻击的的方法
独孤剑写的马克斯迅雷片库采集插件1.4 官方最新版提供下载了
根据日期得到生肖的ASP函数
不错的主要用于加密的vbs(asp)位移运算类
Script.VBS.Agent.ai juan.vbs专杀
循环取值Request.QueryString的用法
asp下实现字符串的补充fill()
无服务器做任意二级米子站
几种另类的ASP后门
asp事物功能简单小应用
ASP获取网页全部图片地址并保存为数组的正则
通过客户端验证上传图片文件大小的ASP源码
asp下计算分页的几种方法
谈动态多行多列,循环行和列,输出M行N列的ASP代码
asp在线执行sql语句的函数
asp正则html的图片,对图自动缩放大小
文件名 正则表达式提取方法

用文本+ASP打造新闻发布系统(四)新闻删除


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 124 ::
收藏到网摘: n/a

<!--#include file="news_session.asp"-->

<%
dim id
id=Request.QueryString ("id")
dim myfso
set myfso=createobject("scripting.filesystemobject")
if myfso.FileExists(server.mappath("./news_content/"&id&".txt"))then
myfso.DeleteFile (server.mappath("./news_content/"&id&".txt"))'#############删除新闻内容
end if

dim mytext2,myread2
set myread2=myfso.opentextfile(server.mappath("./new_list.asp"),1,0)
if myread2.atendofstream then
Response.Write "没有新闻内容"
myread2.close
Response.End
end if

mytext2=myread2.readall
myread2.close
dim listarray,i,h,count,sf,title
listarray=split(mytext2,"|") '#########读取记录并以#分割成listarray数组
count=ubound(listarray)
for i=0 to count '###########根据ID找到该新闻实现删除功能
sf=split(listarray(i),",")
if right(sf(0),7)=right(id,7) then
dim thisid
thisid=i

'#######为6说明上传了图片,删除新闻图片和该列表记录
if ubound(sf)=6 then
myfso.deletefile(server.MapPath ("./images/"&sf(6)))
end if
exit for
end if
next

dim mytext,mappath
mappath=server.mappath("./")
set mytext=myfso.createtextfile(mappath&"\new_list.asp",-1,0)
for i=0 to thisid-1' ##########把所有数据重新写入文件
mytext.write listarray(i)&"|"
next

for i=thisid+1 to ubound(listarray)
if i=ubound(listarray) then
mytext.write listarray(i)
exit for
else
mytext.write listarray(i)&"|"
end if
next
mytext.close
%>
<script language="javascript">
alert("删除成功");
location.href =("news_admin1.asp");
</script>
---------------
news_view.asp
<% Response.Expires=0
dim myid,myfso,myread,mytext1
myid=request.querystring("id")

if len(myid)=0 then
Response.Write "没有该新闻"
Response.End
end if

set myfso=createobject("scripting.filesystemobject")
set myread=myfso.opentextfile(server.mappath("./news_content/"&myid&".txt"),1,0)
if myread.atendofstream then
Response.Write "没有新闻内容"
Response.End
else
mytext1=myread.readall '#######打开对应的新闻内容文件,并读取用变量存储


function htmlencode2(str)'###########字符处理函数
dim result
dim l
l=len(str)
result=""
dim i
for i = 1 to l
select case mid(str,i,1)
case chr(34)
result=result+""""
case "&"
result=result+"&"
case chr(13)
result=result+"<br>"
case " "
result=result+" "
case chr(9)
result=result+" "
case chr(32)
result=result+" "
if i+1<=l and i-1>0 then
if mid(str,i+1,1)=chr(32) or mid(str,i+1,1)=chr(9) or mid(str,i-1,1)=chr(32) or mid(str,i-1,1)=chr(9) then
result=result+" "
else
result=result+" "
end if
else
result=result+" "
end if
case else
result=result+mid(str,i,1)
end select
next
htmlencode2=result
end function



myread.close
end if

dim mytext2,myread2
set myread2=myfso.opentextfile(server.mappath("./new_list.asp"),1,0)

if myread2.atendofstream then
Response.Write "没有新闻内容"
Response.End
else
mytext2=myread2.readall
myread2.close
dim listarray,i,h
listarray=split(mytext2,"|") '#########读取记录并以#分割成listarray数组

dim count,sf,title,src
count=ubound(listarray)

for i=0 to count '###########根据ID找到该新闻并把文章点击次数加1
sf=split(listarray(i),",")
if right(sf(0),7)=right(myid,7) then
title=sf(1)
src=sf(3)
sf(4)=sf(4)+1

'#######为6说明上传了图片,存储为新的数组
if ubound(sf)=6 then
listarray(i)=sf(0)&","&sf(1)&","&sf(2)&","&sf(3)&","&sf(4)&","&sf(5)&","&sf(6)
dim mypic
mypic=sf(6)
else
listarray(i)=sf(0)&","&sf(1)&","&sf(2)&","&sf(3)&","&sf(4)&","&sf(5)
end if
'##################
exit for
end if

next

dim k,mytext,mappath
mappath=server.mappath("./")
set mytext=myfso.createtextfile(mappath&"\new_list.asp",-1,0)<