怎样开始一个 ASP 网站的设计
在开始设计一个 ASP 站点的时候,面对着一大堆的
问题,到底要怎么样入手,才能让网站 设计做到快,好,而且调试、更改,移植起来又方便呢?下面以留言本的设计为例子,谈谈 站点的设计。 (一)站点的功能 “磨刀不误砍柴工”,先写出站点的功能,对以后的
工作有很大的帮助。现在来设计一 个留言本,功能如下: 1、单用户版。只有一个管理员,所有人都可以留言,可以搜索留言 2、记录下每个留言者的 IP,QQ,头像,,主页,电子邮件,留言时间,留言内 容; 3、有管理员回复功能。如果已经回复,还可以更改回复的内容。记录回复的时间; 4、记录主页的位置,以便快速回到主页。 5、自定义的页头和页脚。显示特定的信息。 6、将数据存到 ACCESS 数据库 7、管理功能:管理员登录/回复/删除/更改管理员密码/更改显示的留言数/更改主页 (二)站点数据库 一般 ASP 站点都要用到数据库,首先设计好数据库,在使用时才不会为了一个字段而 去
查询或更改数据库的设计。 特别是对大型的网站, 好的数据库设计可以影响到整个网站的 运行情况。现在我们来设计留言本的数据库: 1、数据库名:lyb.mdb 2、表:共有二个表 表一: admin 表二: main
字段名 user_id 类型 自动编号 15 30 15 10 50 50 不为空 不为空 头像文件名 不为空 IP 地址 可为空 QQ 号 可为空 主页 可为空 电子邮件 长度 其它 说明
user_name 文本 user_image 文本 user_ip user_oicq user_http 文本 文本 文本
user_email 文本
字段名 admin_ user admin_pass admin_http
类型 文本 文本 文本
长度 其它
说明
15 不允许空值/主键 管理员用户名 15 不允许空值 50 可为空值 小数为 0 留言时间 管理员密码 主页地址
admin_perpage 数字/整型 user_time 日期 长日期
user_ly
文本
255
不为空 留言内容 是否回复
user_replay 是/否 user_rply 文本 255
可为空 回复内容 长日期 回复时间
user_rptime 日期
留言本的数据库比较简单,如果是大型网站,在数据库设计好后要反复检查。所有的字段名 最好用命名标准,在数据库设计完成后,最好能打印出一份象上面的列表来,以方便使用。 (三)站点的文件设计 文件的
设计主要是设计有多少个文件, 每个文件分别包含哪些内容, 以及之间的关系。 以留言本为例,文件设计如下: 1、 inc.asp 有关函数和常数,包括打开数据库函数,打开表函数,文字处理函数 2、top.htm 页头信息 3、bottom.htm 页脚信息 4、index.asp 留言本主页面。包括显示留言,管理员登录,修改参数,回复留言。 引用 inc.asp; 5、main.css css 文件; 6、tou.htm 头像
列表文件; 7、image 文件夹,
存头像及其它图片; (四)站点的页面设计 页面设计主要是设计页面的风格和布局。这部份内容比较多,一般是先定位整个页面 的风格,然后设计所有的插图和 Flash,再设计 CSS,最后设计每个页面。对于页面有重 复的内容,先设计单个的内容。这里仅列出 index.asp 的大致设计,如下:
'引用 inc.asp <% '处理参数 '留言子程序 '登录子程序 '回复子程序 '删除子程序 '修改参数子程序 '退出登录子
程序 %> <html> <head>
<!-引用 CSS-!> <title>留言本</title> <body> '引用 top.htm '显示留言表单 '显示
搜索表单 '显示留言记录 '引用 bottom.htm </body> </html>
当然,在页面设计阶段,并不要写出子程序,只要把显示的各部份做好就行了 (五)站页的代码设计 主要就是完成 ASP 代码的设计。在这里只谈谈如何让站点的可修改性和可移植性加 强。只有一点:多用组件或者是函数,当然如果写成类就更好了。对于小站点,也不希望到 每个页面的某个子程序再去用 set conn=server.createobject("adodb.connection"), 而是把它写成一个函数或子程序,放在页面里,比如:
<% databasename="lyb.mdb" uid="" pid=""