ASP.NET的网站新闻管理系统设计与实现
(4)方便移植:针对不同的企业,只需要稍作修改就可以开发出适合本企业特点的网站新闻管理系统!
3 系统的详细设计
系统的主要功能是通过几个功能模块来实现的。具体的设计过程如下:
⑴ 系统登录:该模块负责将用户分为普通用户和注册用户来实现用户权限的管理。
⑵ 新闻浏览:该模块负责分页列出网站所有新闻的信息,包括标题、类型、来源部门字段及发布日期,每条新闻的标题被做成一个超链接,点击它们就能跳转页面进行新闻阅读。
⑶ 新闻阅读:在其他页面中点击标题链接即进入新闻阅读页面,此时,每条新闻的详细信息将被取出,包括内容、标题、关键字等,并按照相对固定的格式放置在页面的不同区域,所有新闻使用大致相同的页面布局,只是各字段对应的内容不同而已,另外,页面其它位置,可以动态放置其他元件,如网站标志logo、页面广告banner等链接图片,这样可以很容易地实现图文并茂的阅读效果。
⑷ 新闻查询:该模块提供了新闻查询功能,输入待查找的内容及选定分类信息可以快速地找到符合条件的新闻,并输出查询结果。
⑸ 新闻管理:该模块负责分页罗列登录的注册用户曾发布过且未删除的新闻信息,用户可以对该条新闻进行删除、修改。非新闻发布者除系统管理员外不具有对该条新闻的处理权限,所以不同用户进入此页面将显示不同的内容。
⑹ 新闻录入和修改:注册用户录入一条新闻所需要的内容,包含标题、关键字、类型、来源部门、发布
日期等,同时从登录模块得到用户名,这些信息将被写入数据库中保存。该模块还负责编辑状态下的更新,这时,它将根据取得的Title字段值对页面控件初始化。
下面以系统登录页面的编写为例给出主要事件和函数,说明该系统的开发过程。
//IsRegUserOk函数:判断用户是否已经注册和密码是否正确
public bool IsRegUserOk()
{
string name=TextBoxName.Text.Trim();
string pwd=TextBoxPassword.Text.Trim();
//建立/打开数据库连接
SqlConnection conn=new SqlConnection();
conn.ConnectionString="server=(local);uid=sa;pwd=;database=jxdb";
conn.Open();
//建立sql字符串
string sql="select * from reg where name=''''"+name+"''''";
SqlDataReader dr;
SqlCommand cmd=new SqlCommand(sql,conn);
dr=cmd.ExecuteReader();
//保留用户注册与否信息
bool isRegUserExist=dr.Read();
//关闭DataReader
dr.Close();
//取得用户名的密码
string sqlBoth="select * from reg where name=''''"+name+"''''";
sqlBoth+="and pwd=''''"+pwd+"''''";
SqlCommand cmdBoth=new SqlCommand(sqlBoth,conn);
SqlDataReader drBoth;
drBoth=cmdBoth.ExecuteReader();
//保留用户名+密码同时存在信息
bool isBothExist=drBoth.Read();
//关闭DataReader
drBoth.Close();
conn.Close();
//判断用户是否注册
if(!isRegUserExist)
{
Response.Write("<script>alert(''''此用户尚未注册!'''')");
return false;
}
//判断用户名与密码是否一致
else if(!isBothExist)
{
Response.Write("<script>alert(''''用户名和密码不一致,不能进入!'''')");
return false;
}
else
return true;
}
最后给出系统后端数据存储方案:
利用Microsoft SQL Server 2000建立数据库及其存储过程。这里给出两个必需的数据表,一是数据表News包含的字段有:编号、姓名、标题、关键字、内容、类型、来源部门和日期。字段说明如下:
二是数据表Reg包含的字段有:编号、姓名、密码、所属部门、电子邮箱和电话。字段说明如下:
参考文献
[1]天极网新技术研究室.《ASP.NET完全入门》.重庆出版社,2001
[2]Scott Worley著.《ASP.NET技术内幕》.王文龙 刘湘宁译.人民邮电出版社,2002
[3]Sanjeev Rohilla, Senthil Nathan, Surbhi Malhotra著.《ADO.NET专业项目实例开发》.陈君 王宝良译.中国水利水电出版社,2003
[4]丁晟春 王曰芬.网站新闻发布管理系统的设计与应用.现代图书情报技术.2002,5