如何建立自己的新闻发布系统?
2024-07-21 02:28:29
供稿:网友
下面是一个建立新闻发布系统的程序,不用和数据库打交道哦
步骤:
(1).在vs2005中新建网站,新建三个aspx网页,分别命名:title.aspx,news.aspx,main.aspx其中title.aspx用来设置标题,可以自己设计,写几个字也行,news.aspx用来显示新闻标题,main.aspx用来显示新闻内容。
(2).新建htm页,用来设计框架。代码如下:
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>无标题页</title>
</head>
<frameset border="0" bordercolor="#6699cc" framespacing="3" id="fstop" rows="85,*">
<frame frameborder="no" marginheight="0" marginwidth="0" name="title" noresize scrolling="no" src="title.aspx" >
<frameset border="0" frameborder="1" framespacing="3" cols="110,*">
<frame frameborder="0" marginheight="0" marginwidth="0" name="dir" src="news.aspx" scrolling="auto" >
<frame bordercolor="#6699cc" frameborder="0" name="main" scrolling="yes" src="main.aspx?name=hello" >
</frameset>
</frameset>
</html>(3).现在你的程序还没有内容,新建xml文件,命名contents.xml,用来显示新闻标题,代码如下:
<?xml version="1.0" encoding="gb2312"?>
<topiclist type="dreamsite news">
<topic>
<title>欢迎进入千里之外的新闻网!</title>
<href>main.aspx?name=hello</href>
</topic>
<topic>
<title>测试新闻</title>
<href>main.aspx?name=test</href>
</topic>
<topic>
<title> 第一条新闻</title>
<href>main.aspx?name=first</href>
</topic>
<topic>
<title> 第二条新闻</title>
<href>main.aspx?name=dddd</href>
</topiclist>注意我们的每条新闻内容都是一个xml文件,现在你知道该做什么了吧,新建hello.xml;test.xml;first.xml;dddd.xml文件,在这里给出一个例子,代码如下:
<?xml version="1.0" encoding="gb2312"?>
<document>
<title>今日新闻</title>
<abstract>头版新闻</abstract>
<author>千里之外</author>
<content><paragraph>大家好</paragraph></content>
</document>现在你就可以看到效果了,下面我们看一下发布新闻的代码,也很简单,新建manage.aspx页面,前台代码:
</head>
<body>
<form id="form1" runat="server">
<div>
<p>千里之外个人新闻发布系统
</p>
文件名:
<asp:textbox id="textbox1" runat="server" />
<asp:requiredfieldvalidator id="valid1" controltovalidate="textbox1" runat="server">(必要栏)
</asp:requiredfieldvalidator><p>
文章名称:
<asp:textbox id="textbox2" runat="server" />
<asp:requiredfieldvalidator id="valid2" controltovalidate="textbox2" runat="server">(必要栏)
</asp:requiredfieldvalidator>
<p>
作者:
<asp:textbox id="textbox3" runat="server" />
<asp:requiredfieldvalidator id="valid3" controltovalidate="textbox3" runat="server">(必要栏)
</asp:requiredfieldvalidator>
<p>
摘要:<p>
<asp:textbox id="textbox4" textmode="multiline" width="70%" runat="server" />
<p>
内容:<p>
<asp:textbox id="textbox5" textmode="multiline" rows="6" width="70%" runat="server" />
<p>
<asp:button id="submit" text="提交" runat="server" />
</div>
</form>
</body>后台代码如下:
using system;
using system.data;
using system.configuration;
using system.collections;
using system.web;
using system.web.security;
using system.web.ui;
using system.web.ui.webcontrols;
using system.web.ui.webcontrols.webparts;
using system.web.ui.htmlcontrols;
using system.io;
using system.xml;
public partial class manage : system.web.ui.page
{
protected void page_load(object sender, eventargs e)
{
//判断文件是否存在
if (file.exists(server.mappath(textbox1.text + ".xml")))
response.write("文件名已经存在,请重新选文件名!");
else
{
//首先将数据插入新闻列表中
xmlnode currnode;
xmldocument xmldoc = new xmldocument();
//加载索引文件
xmldoc.load(server.mappath("contents.xml"));
string insstr;
//生成新闻索引
insstr = "<topic><title>" + textbox2.text + "</title><href>main.aspx?name=" + textbox1.text + "</href></topic>";
xmldocumentfragment docfrag = xmldoc.createdocumentfragment();
docfrag.innerxml = insstr;
currnode = xmldoc.documentelement;
//插入新闻索引队列中
currnode.insertafter(docfrag, currnode.lastchild);
//保存索引文件
xmldoc.save(server.mappath("contents.xml"));
//把textbox5中的文件换成符合xml格式的内容
string xmlfile;
xmlfile = textbox5.text;
xmlfile = xmlfile.replace("<", "+lt; ");
xmlfile = xmlfile.replace(">", "+gt; ");
xmlfile = xmlfile.replace("//", "+apos;");
xmlfile = xmlfile.replace("/r/n", "</paragraph><paragraph>");
//把数据写入新建的xml文件中去;
xmldocument doc;
doc = new xmldocument();
insstr = "<?xml version='1.0' encoding='gb2312'?><document><title>";
insstr += textbox2.text + "</title><abstract>" + textbox4.text;
insstr += "</abstract><author>" + textbox3.text + "</author><content><paragraph>";
insstr += xmlfile + "</paragraph></content></document>";
doc.loadxml(insstr);
doc.save(server.mappath(textbox1.text + ".xml"));
response.write("新闻发布成功!");
textbox1.text = "";
textbox2.text = "";
textbox3.text = "";
textbox4.text = "";
textbox5.text = "";
}
}
}
现在,一个简单的新闻发布系统已经建立完毕,你还可以编写更新程序,可以参照发布程序来写,有什么好的办法希望我们共享哦!网站运营seo文章大全提供全面的站长运营经验及seo技术!