白开心

  IT博客 :: 首页 ::  :: 联系 :: 聚合  :: 管理 ::
  9 随笔 :: 76 文章 :: 28 评论 :: 0 Trackbacks

 

<link href="css.css" rel="stylesheet" type="text/css">

<html>
<style type="text/css">
<!--
body 
{
 background-color
: #CECECE;
}

-->
</style><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新闻管理</title>
<script language="javascript">
function CheckDel(str)
{
 
if(!confirm("确认删除此条新闻吗?"))
  
return false;
 myform.txtCmd.value 
= "Del";
 myform.txtID.value 
= str;
 myform.submit();
}


function CheckShow(str)
{
 myform.txtCmd.value 
= "Show";
 myform.txtID.value 
= str;
 myform.submit();
}


function CheckAdd()
{
 
if(myform.txtNewsTitle.value=="")
 
{
  alert(
"新闻标题不可以空");
  myform.txtNewsTitle.focus();
  
return(false);
 }

 
 myform.txtCmd.value
="Add";
 myform.submit();
}


function CheckEdit()
{
 
if(myform.txtNewsTitle.value=="")
 
{
  alert(
"新闻标题不可以空");
  myform.txtNewsTitle.focus();
  
return(false);
 }


 myform.txtCmd.value
="Edit";
 myform.submit();
}

</script>
</head>

<body>
<br>
<%
cmd 
= Request("txtCmd")
id 
= Request("txtID")
NewsTitle 
= Request("txtNewsTitle")
NewsContent 
= Request("txtNewsContent")

Dim ShowNewsTitle,ShowNewsContent

Select Case cmd
 
case "Del"
  
Call Del
 
case "Show"
  
Call Show
 
case "Add"
  
Call Add
 
case "Edit"
  
Call Edit
End Select

Sub Del
 strSourceFile 
= Server.MapPath("News.xml")
 
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
 objXML.load(strSourceFile)
 
Set objRootsite = objXML.documentElement.selectSingleNode("news")

 objRootsite.removeChild(objRootsite.childNodes.item(id))   
'删除节点
 
 objXML.save(strSourceFile)   
'保存结果
 Set objXML=nothing
End Sub

Sub Show
 strSourceFile 
= Server.MapPath("News.xml")
 
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
 objXML.load(strSourceFile)
 
 
Set objRootsite = objXML.documentElement.selectSingleNode("news")
       
  ShowNewsTitle    
= objRootsite.childNodes.item(id).childNodes.item(0).text
  ShowNewsContent  
= objRootsite.childNodes.item(id).childNodes.item(2).text
  
 
Set objXML=nothing
End Sub

Sub Add
  strSourceFile 
= Server.MapPath("news.xml")
  
Set objXML = Server.CreateObject("Microsoft.XMLDOM")  
  objXML.load(strSourceFile)  
  
If objXML.parseError.ErrorCode <> 0 Then 
       objXML.loadXML 
"<?xml version=""1.0"" encoding=""gb2312"" ?><news/>"
    
End If

  
Set oListNode = objXML.documentElement.selectSingleNode("news").AppendChild(objXML.createElement("new"))  
  
Set oDetailsNode = oListNode.appendChild(objXML.createElement("NewsTitle"))
    oDetailsNode.Text 
= NewsTitle
    
Set oDetailsNode = oListNode.appendChild(objXML.createElement("NewsDate"))
    oDetailsNode.Text 
= Date()    
    
Set oDetailsNode = oListNode.appendChild(objXML.createElement("NewsContent"))
    oDetailsNode.Text 
= NewsContent
 
    objXML.save(strSourceFile)   
  
Set objXML=nothing
End Sub

Sub Edit
 strSourceFile 
= Server.MapPath("News.xml")
 
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
 objXML.load(strSourceFile)
 
Set objRootsite = objXML.documentElement.selectSingleNode("news")
 
 objRootsite.childNodes.item(id).childNodes.item(
0).text = NewsTitle     '修改该接点下的值
 objRootsite.childNodes.item(id).childNodes.item(1).text = Date()
 objRootsite.childNodes.item(id).childNodes.item(
2).text = NewsContent
 
 objXML.save(strSourceFile)   
'保存结果
 Set objXML=nothing
End Sub
%>

<form name="myform" action="NewsAdmin.Asp" method="post">
<table width="750" border="0" align="center" cellpadding="0" cellspacing="0">
  
<tr>
    
<td><div align="right"><href="News.xml" target="_blank"><img src="images/xml.gif" width="36" height="14" border="0"></a></div></td>
  
</tr>
</table>

<table border="1" style="border-collapse:collapse" width="80%" align="center">
 
<tr>
  
<td align="Right">新闻标题:</td>
  
<td align="left"><input type="text" name="txtNewsTitle" value="<%=ShowNewsTitle%>"></td>
 
</tr>
 
<tr>
  
<td align="Right">新闻内容:</td>
  
<td align="left"><textarea name="txtNewsContent" rows="9" cols="60"><%=ShowNewsContent%></textarea></td>
 
</tr>
 
<tr>
   
<td align="center" colspan="2">
   
<input type="button" name="BtAdd" value="新增" onClick="CheckAdd();" <% if Cmd="Show" then Response.Write("disabled")%>>
  
<input type="button" name="BtEdit" value="修改" onClick="CheckEdit();" <% If Cmd<>"Show" then Response.Write("disabled") %>>
  
<input type="button" name="BtRet" value="取消" onClick="myform.submit();">
  
</td>
 
</tr>
</table>
<br>
<%  

 strSourceFile 
= Server.MapPath("News.xml")
 
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
 
'Set objXML = Server.CreateObject("Microsoft.FreeThreadedXMLDOM")
 objXML.load(strSourceFile)
 
Set objRootsite = objXML.documentElement.selectSingleNode("news")
 
   pagesize 
= 20
   
'每页显示5篇日记
   AllNodesNum = objRootsite.childNodes.length
   
'获取子节点数据
   pagenum = AllNodesNum\Pagesize +1   
   
'算出总页数
   pageno = request.querystring("pageno")  
   
' 定位到所要的页
   if request("pageno"= "" then
   pageno 
= pagenum
   
else
   pageno
=request("pageno")
   
end if
   starnodes 
= pageno*pagesize - 1  
   
'获得取始结点
   endnodes   = (pageno-1)*pagesize 
    
'获得结束结点
   if endnodes<0 then
      endnodes 
= 0
   
end if 
'判断起始节点数是否超过总的节点数
 if starNodes > AllNodesNum-1 then
  
'如果超过则结束节点要减去(StarNodes-AllNodesNum)的差值否则下标会超界出错
  EndNodes  = StartNodes - 19
  StarNodes 
= AllNodesNum - 1
 
end if
 
 
if endNodes < 0 then
  endNodes
=0
 
end if
 
%>

<table width="764" border="1" style="border-collapse:collapse" align="center" cellpadding="0" cellspacing="0">
<tr>
 
<td width="545" height="21" align="Center">新闻标题</td>
 
<td width="154" align="Center">发布时间</td>
 
<td width="51" align="center">删除</td>
</tr> 
<%
 
 
 
while starNodes >= endNodes 
        NewsTitle    
= objRootsite.childNodes.item(StarNodes).childNodes.item(0).text
     NewsDate  
= objRootsite.childNodes.item(StarNodes).childNodes.item(1).text

                
'替代回车
  content = Replace(content,Chr(10),"<br>")  
  
'替代空格
  content = Replace(content,Chr(32),"&nbsp;")
  
%>
  
<tr>
   
<td width="545" height="21" align="Left"><href="#" onClick="CheckShow(<%=StarNodes%>);"><%=NewsTitle%></a></td>
   
<td width="154" align="Center"><%=NewsDate%></td>
   
<td align="center"><href="#" onClick="return CheckDel(<%=StarNodes%>)">删除</a></td>
  
</tr>
  
<%   starNodes = StarNodes - 1
 
wend 
 
set objXML = nothing  
%>
</table><br>

<table width="750" border="0" align="center" cellpadding="0" cellspacing="1">
  
<tr>
    
<td><div align="right"><font size="2"><strong>|共有 <%=AllNodesNum%>篇/<%=pagenum%> 页|当前为第 <%=pageno%> 页|
<%  if cint(pageno)<=pagenum and cint(pageno)>1  then'分页
 response.write "<a href='NewsAdmin.asp?pageno="&(pageno-1)&"'>上一页</a>|"
 
end if
 
if cint(pageno)<cint(pagenum) then
 response.write 
"<a href='NewsAdmin.asp?PageNo="&(PageNo+1)&"'>下一页</a>|"
 
end if  
  
%>
        
        
<% if PageNum>1 then   
   
for num=1 to PageNum 
 response.write 
"<a href='NewsAdmin.asp?PageNo="&(num)&"'>"&(num)&"</a>|"
 
next
 
end if
 
%>
        
</strong></font></div></td>
  
</tr>
</table>
<input type="hidden" name="txtCmd" value="">
<input type="hidden" name="txtID" value="<%=id%>">
</form>
</body>
</html>
posted on 2005-12-11 21:39 白开心 阅读(452) 评论(1)  编辑 收藏 引用 所属分类: Asp+vbScript

评论

# re: 简单的新闻发布,使用xml 2005-12-11 22:29 白开心
News.xml
--------------------------
<?xml version="1.0" encoding="gb2312"?>
<webNews>
<news/>
</webNews>  回复  更多评论
  

只有注册用户登录后才能发表评论。