ASP bbs学习论坛实训报告_第1页
ASP bbs学习论坛实训报告_第2页
ASP bbs学习论坛实训报告_第3页
ASP bbs学习论坛实训报告_第4页
ASP bbs学习论坛实训报告_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

烟台南山学院计算机与电气自动化学院

动态网页制作ASP.NET实训报告

(2012~2013)学年第1学期)

姓名:***

学号:2010410*****

专业:计算机科学与技术

班级:计科

指导教师:***《动态网页制作ASP.NET》实训报告日期2012.12.24-2012.12.28地点68#306项目名称《学习论坛BBS系统》实训目的能力目标ASP.NET实训主要是让我们来做一个学习论坛(BBS系统),通过代码让整个系统能正常的运行,通过写每个页面的后台代码,让我们巩固了之前学的知识,又有进一步的加深,更能理解ASP.NET的框架以及结构,熟悉ASP.NET应用程序的运行环境及开发平台,其内置对象以及的属性以及其方法,以及其界面的设计。实训要求:1、实训期间每天登记考勤,作为实训成绩的一部分。

2、实训期间不能玩游戏、看电影、小说等做与学习无关的事。如果有不遵守的同学将取消当天成绩。

3、每天必须按照指导教师实训安排完成当天的实训项目,并经过老师的检查。

4、完成整个实训以后,要求每人写出实训报告。

5、实训报告要求有插图,模块关键代码及注释。实训内容:实训项目名称:学习论坛(BBS)系统(过程及步骤)

系统功能分析与设计

用户注册。用户名不允许重名;

用户登录。允许注册用户和访客登录;

查询主帖。分页显示主帖的标题等信息;

查看详细信息。查询主帖的详细信息及其全部回复信息;

发表新帖。可以输入新帖并将其插入数据库中;

回复帖。对某个主帖进行回复;

管理员登录。只允许管理员登录;EMBEDVisio.Drawing.11数据库设计数据库名称:LearningForum

数据表:

用户表字段:用户名(唯一标识)、密码;主帖表字段:ID(整型,自动增量)、发帖者用户名、主帖标题、主帖内容、发帖时间、用户机器IP;管理员信息表字段:管理员用户名、密码;触发器用以实现当删除了主帖表(假设名topic)中的帖子时,同时也要删除回帖表(假设名reply)中此帖的回复帖子。触发器创建代码如下:(ID为主帖表中的ID)createtriggertrigger_delete

ontopic

fordelete

as

begin

deletefromreplywhereIDin(selectIDfromdeleted)

end三、项目文件夹及公共类的设计四、模块设计、编码与调试

本项目的模块如下

主页用户注册。//点击提交按钮事件

protectedvoidbtnOK_Click(objectsender,EventArgse)

{

if(Page.IsValid)//若Page.IsValid的属性未true,表示页面中所有验证控件均通过了验证

{

lblPass.Text="<b>用户输入数据通过验证</b>";

}

else{

lblPass.Text="<b>用户输入数据没有通过验证</b>";

}

//数据库的连接

stringuname=txtUsrename.Text;

stringupassword=txtPassword.Text;

stringsql="insertintousersvalues('"+uname+"','"+upassword+"')";

//建立连接

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();

conn.Open();

SqlCommandcmd=newSqlCommand();//创建操作对象

cmd.Connection=conn;

cmd.CommandText=sql;

booldoredirect=true;

try

{

cmd.ExecuteNonQuery();

}

catch

{

doredirect=false;

lblPass.Visible=true;

lblPass.Text="注册失败!";

}

finally{

cmd.Dispose();

conn.Close();

conn.Dispose();

}

if(doredirect){

Response.Redirect("Login.aspx");}}

用户登录。if(Page.IsValid)//若Page.IsValid的属性未true,表示页面中所有验证控件均通过了验证

{lblPass.Text="<b>用户输入数据通过验证</b>";}

else{lblPass.Text="<b>用户输入数据没有通过验证</b>";}

stringuname=txtUsrename.Text.Trim();

stringupassword=txtPassword.Text.Trim();

stringsql="selectcount(*)fromuserswhereuname='"+uname+"'andupassword='"+upassword+"'";

//建立连接

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();

SqlCommandcmd=newSqlCommand(sql,conn);

conn.Open();

//查询字符串和链接

intn=0;

try{n=(int)cmd.ExecuteScalar();//检索单个值}

catch(Exceptionex)

{

this.lblPass.Visible=true;

this.lblPass.Text=ex.Message.ToString();

}

finally{

cmd.Dispose();

conn.Close();

conn.Dispose();

}

if(n!=0)

{

Session["user"]=uname;

Response.Redirect("~/TopicList.aspx");

}

else{

this.lblPass.Visible=true;

this.lblPass.Text="用户名或密码错误";

}

}

查看详细信息。发表新帖。

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();

SqlCommandcmd=newSqlCommand();

cmd.Connection=conn;

try

{

conn.Open();

cmd.CommandText=string.Format("insertintoTopicListvalues('{0}','{1}','{2}','{3}','{4}')",title,topic,username,usertime,GetClientIP());

intn=cmd.ExecuteNonQuery();

if(n>0)

{

Response.Redirect("~/TopicList.aspx");

}

else{

lblAdd.Visible=true;

lblAdd.Text="发表失败";

}

}

catch(Exceptionex)

{

lblAdd.Visible=true;

lblAdd.Text=ex.Message.ToString();

}

finally{

cmd.Dispose();

conn.Close();

conn.Dispose();

}

回复帖。管理员登录。protectedvoidcvPassword_ServerValidate(objectsource,ServerValidateEventArgsargs)

{

args.IsValid=true;

if(txtPassword.Text=="")

{

cvPassword.Text="必须输入密码!";

args.IsValid=false;

return;

}

}

protectedvoidlbReset_Click(objectsender,EventArgse)

{

this.txtUsrename.Text="";

this.txtPassword.Text="";

}

protectedvoidbtnOK_Click(objectsender,EventArgse)

{

if(Page.IsValid)//若Page.IsValid的属性未true,表示页面中所有验证控件均通过了验证

{

lblPass.Text="<b>用户输入数据通过验证</b>";

}

else

{

lblPass.Text="<b>用户输入数据没有通过验证</b>";

}

stringaname=txtUsrename.Text.Trim();

stringapassword=txtPassword.Text.Trim();

stringsql="selectcount(*)fromadminUserwhereaname='"+aname+"'andapassword='"+apassword+"'";

//建立连接

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();

SqlCommandcmd=newSqlCommand(sql,conn);

conn.Open();

//查询字符串和链接

intn=0;

try

{

n=(int)cmd.ExecuteScalar();//检索单个值

}

catch(Exceptionex)

{

this.lblPass.Visible=true;

this.lblPass.Text=ex.Message.ToString();

}

finally

{

cmd.Dispose();

conn.Close();

conn.Dispose();

}

if(n!=0)

{

Session["user"]=aname;

Response.Redirect("~/TopicList.aspx");

}

else

{

this.lblPass.Visible=true;

th

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论