怎样开始一个ASP网站的设计
作者:Eve Cole
更新时间:2009-06-25 17:36:26
在开始设计一个ASP站点的时候,面对着一大堆的问题,到底要怎么样入手,才能让网站设计做到快,好,而且调试、更改,移植起来又方便呢?下面以留言本的设计为例子,谈谈站点的设计。
(一)站点的功能
“磨刀不误砍柴工”,先写出站点的功能,对以后的工作有很大的帮助。现在来设计一个留言本,功能如下:
1、单用户版。只有一个管理员,所有人都可以留言,可以搜索留言
2、记录下每个留言者的 IP,QQ,头像,姓名,主页,电子邮件,留言时间,留言内容;
3、有管理员回复功能。如果已经回复,还可以更改回复的内容。记录回复的时间;
4、记录主页的位置,以便快速回到主页。
5、自定义的页头和页脚。显示特定的信息。
6、将数据存到ACCESS数据库
7、管理功能:管理员登录/回复/删除/更改管理员密码/更改显示的留言数/更改主页
(二)站点数据库
一般ASP站点都要用到数据库,首先设计好数据库,在使用时才不会为了一个字段而去查询或更改数据库的设计。特别是对大型的网站,好的数据库设计可以影响到整个网站的运行情况。现在我们来设计留言本的数据库:
1、数据库名:lyb.mdb
2、表:共有二个表
表一: admin
字段名 |
类型 |
长度 |
其它 |
说明 |
admin_user |
文本 |
15 |
不允许空值/主键 |
管理员用户名 |
admin_pass |
文本 |
15 |
不允许空值 |
管理员密码 |
admin_http |
文本 |
50 |
可为空值 |
主页地址 |
admin_perpage |
数字/整型 |
|
小数为0 |
|
表二: main
字段名 |
类型 |
长度 |
其它 |
说明 |
user_id |
自动编号 |
|
|
|
user_name |
文本 |
15 |
不为空 |
姓名 |
user_image |
文本 |
30 |
不为空 |
头像文件名 |
user_ip |
文本 |
15 |
不为空 |
IP地址 |
user_oicq |
文本 |
10 |
可为空 |
QQ号 |
user_http |
文本 |
50 |
可为空 |
主页 |
user_email |
文本 |
50 |
可为空 |
电子邮件 |
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="" sub opendb(connect) set connect=server.CreateObject("ADODB.connection") connect.ConnectionString="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &_ server.MapPath(databasename) &";uid="&uid&";pid="&pid connect.Open strconn end sub %> |
这样,当你改变数据库名或是用户名和密码的时候,很方便的能修改过来。经过一段时间的积累,你会有许多这样的函数或子程序,或是类,再做类似的站点的时候,只要整理出相关的放在一个文件里引用一下就好了。