链接:https://pan.baidu.com/s/1Xwd0U_KktL0hRFPaggIOGQ?pwd=6688
提取码:6688
旅游网站系统的数据功能主要体现在对各种信息的提供、保存、更新和查询操作上,包括用户信息,管理员信息,景点信息,预约信息和留言内容,各个部分的数据内容又有内在的联系,针对此系统的数据库的特点,可以总结如下的需求:
用户和管理员具有不同的身份;
用户信息记录用户资料;
旅游景点的浏览,显示景点相关属性;
景点图片 ,相应景点的图片;
成都故事的浏览;
旅游线路的查看;
旅游线路的查询,根据不同条件对线路进行查询;
预定有预定的时间、预定的用户等多种属性;
用户留言版有留言内容,时间等多种信息;
结合以上功能模块可以得到如下图2-1和2-2所示:
添加图片注释,不超过 140 字(可选)
结合上面的需求分析以后,就可以设计出能够满足需求的各种实体,以及它们之间的关系,再用实体-关系图,将这些内容表述出来,为后面的逻辑结构设计打下基础,如下图2-3和2-4所示:
添加图片注释,不超过 140 字(可选)
数据库的概念结构设计完毕以后,现在可以把数据库概念结构转化为SQL Server数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。
旅游网站系统数据库中各个表的设计结果如表1~表10所示。每个表格表示在数据库中的一个表。
表1管理员信息表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
admin_name | nvarchar | 12 | 否 | 管理员名 |
admin_psw | nvarchar | 16 | 否 | 管理员密码 |
表1为管理员信息表,记录了管理员的用户名和密码。
表2景点信息表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
attrid | char | 19 | 否 | 景点编号 |
attrname | varchar | 50 | 否 | 景点名称 |
attrintro | ntext | 16 | 否 | 关于景点介绍 |
表2为景点信息表,记录了景点相关信息。
表3 景点图片表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
attrid | varchar | 19 | 否 | 景点编号 |
imgid | varchar | 19 | 否 | 图片编号 |
content | image | 16 | 否 | 图片 |
表3为景点图片表,记录了景点图片的相关信息。
表4 用户信息表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
usr | varchar | 15 | 否 | 用户登陆名 |
pwd | varchar | 15 | 否 | 用户登陆密码 |
realname | char | 10 | 否 | 用户真实姓名 |
sex | char | 2 | 否 | 用户性别 |
age | tinyint | 1 | 否 | 用户年龄 |
tel | varchar | 15 | 否 | 用户电话 |
regtime | smalldatetime | 4 | 否 | 用户注册时间 |
lastlogin | datetime | 8 | 是 | 上次登陆时间 |
表4为用户信息表,记录了用户名、密码和有关用户的个人信息。
表5 线路信息表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
lineid | char | 19 | 否 | 线路编号 |
linename | vaarchar | 50 | 否 | 线路名称 |
linetype | char | 10 | 否 | 线路类型 |
lineintro | ntext | 16 | 否 | 线路介绍 |
booked | Int | 4 | 否 | 是否预定 |
price | Money | 8 | 否 | 线路价格 |
表5为线路信息表,记录了线路相关信息。
表6 景点线路表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
lineid | varchar | 19 | 否 | 线路编号 |
attrid | varchar | 19 | 否 | 景点编号 |
表6为线路景点表,记录线路和景点相关信息。
表7 预约信息表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
bookid | char | 19 | 否 | 预定编号 |
lineid | char | 19 | 否 | 线路编号 |
booker | varchar | 15 | 否 | 预定 |
booktime | smalldatetime | 4 | 否 | 预定时间 |
outtime | smalldatetime | 4 | 否 | 出发时间 |
表7为预约信息表,记录预约情况的相关信息。
表8 首页内容表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
title | varchar | 50 | 否 | 首页内容 |
content | ntext | 16 | 否 | 首页图片 |
表8为首页内容表,记录首页的相关信息。
表9 留言表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
msgid | char | 19 | 否 | 留言编号 |
username | varchar | 15 | 否 | 留言者姓名 |
face | varchar | 10 | 否 | 留言头像 |
ip | varchar | 20 | 否 | 留言的IP |
addtime | smalldatetime | 4 | 否 | 留言时间 |
content | ntext | 6 | 否 | 留言内容 |
ishidden | int | 4 | 否 | 留言被允许 |
replytime | smalldatetime | 4 | 是 | 回复时间 |
replycontent | ntext | 16 | 是 | 回复内容 |
表9为用户留言表,记录用户留言的相关信息。
表10 故事信息表
列名 | 数据类型 | 长度 | 允许空 | 备注 |
title | varchar | 50 | 否 | 故事标题 |
content | ntext | 16 | 否 | 故事内容 |
addtime | smalldatetime | 4 | 否 | 发表时间 |
数据库连接文件:
旅游网站系统开发使用的是ASP+SQL的工作模式,为了使系统正常工作,需要建立与数据库系统的连接来读取和写入数据。系统中很多页面都涉及数据库有关的操作,包括查询、插入、删除等在执行这些操作时首先要与数据库系统进行连接,以下是数据库连接代码:
<%
dim conn
set conn=server.Createobject("ADODB.connection")
conn.open"driver={SQL server};server=(local);database=ly;uid=yq;pwd=123"
%>
页面头文件指定了页面头部的图片并在其上设定了“热点”页面尾包括版权信息和联系方式,这些文件在各个页面都是静态的且一致的,我们将它们保存在公共文件夹inc中,直接在相应页面嵌入这样的语句<!--include file=“inc/head.asp--”>或<!--include file=“inc/foot.asp--”>即可。
判断用户和管理员是否登录函数:
由is_admin.asp,is_user.asp完成,同时提供了一个函数char.asp是用于字符串的过滤。使用方法同页面头文件和页面尾文件是一样的。
该模块主要能通过表单来接收用户注册所填的信息并对此信息进行记录,首先连接数据库,验证用户信息,记录用户信息。
用到的核心功能由下面的插入语句完成如下:
<%
sql="insert into guests (usr,pwd,realname,sex,age,tel,regtime) values('"&usr&"','"&pwd&"','"&realname&"','"&sex&"','"&age&"','"&tel&"','"&now()&"')"
%>