📄 新建 文本文档 (4).txt
字号:
通讯录
通讯录: 系统分析文档
【通讯录功能结构图】
首页 ---- 显示成员
|-- 添加成员
|-- 删除成员
|-- 修改成员
|-- 查找成员
【通讯录文件结构图】
----(Mode 1)---- -->[A]--(Mode 5)--
↓ ↑ ↓
index.htm ----(Mode 2)--> menu.htm ---(Mode 1)--> list.asp -------(Mode 5)--> address.mdb
|
|
| ----------(Mode 1)---------
| ↓ ↑
|--(Mode 1)--> add_form.htm --(Mode 3)--> insert.asp -->[A]-->
|
| --------------------(Mode 1)----------------------
| ↓ ↑
|--(Mode 1)-> change.asp -(Mode 4)-> update_form.asp-(Mode 3)-> update.asp ->[A]->
|
|--(Mode 1)--> delete.asp -->[A]-->
|
|--(Mode 1)--> search.asp -->[A]-->
【文件集合说明】
共11个文件。
1 address.mdb。数据库文件。
2 index.htm。框架集首页。
3 munu.htm。 功能列表文件。左边框架框页。
4 list.asp。 显示成员列表。右边框架框页。
5 add_form.htm。 添加成员表单文件。
6 insert.asp。 添加成员表单文件。
7 change.asp。 修改成员时验证密码文件。
8 update_form.asp。修改成员表单文件。
9 update.asp。 修改成员文件。
10 delete.asp。 删除成员文件。
11 seach.asp。 查找成员文件。
【文件关联方式说明】
共 5 种文件关联方式。
1 Mode 1:使用 标记。P252,P254,P258,P264。
2 Mode 2:使用 标记。P251。
3 Mode 3:使用
标记。P255, P261。
4 Mode 4:使用 Respone.Redirect 方法。P259。
5 Mode 5:使用 db.Open 方法。P253,P257,P263,P265, P267。
补充关于源代码的一个更正:
原代码 db.Open "Dsn=newaddr"
新代码一 db.Open "Dbq="&Server.Mappath("address.mdb")&";Driver={Microsoft Access Driver (*.mdb)}"
新代码二 db.Open "Data Source="&Server.Mappath("address.mdb")&";Provider=Microsoft.Jet.OLEDB.4.0"
【Simulate C 语言说明】
1 功能:Simulate C 语言是软件模块设计工具。
2 说明:
a Simulate C 语言重在描述软件模块设计的流程控制结构。
b 每个流程控制结构单元都模拟 C 语言的语法形式。
c 每个语句都模拟 C 语言,要求必须以分号“;”结尾。
d 每个语句可以使用自然语言作概略表述或简要表述。
e 每个语句内部允许使用自然语言标点符号,如逗号“,”,冒号“:”等。
f 每个语句也可以用当前编程语言简要表述或详细表述(一般是在在软件模块的关键之处)。
g 注释模拟 C 语言,使用格式“// ...”或者“/* ... */”。
h 软件模块设计宗旨:为软件源代码设计提供最佳向导。
3 范例 通讯录显示模块 list.asp 程序流程图。
【通讯录显示模块 list.asp 程序流程图】
list() // list.asp 模块设计
{ HTML开局; // html,head,body,center
VBScript开局; // 变量声明强制化
显示页标题:成员列表;
建立表格; // table,tr,td
显示表格列标题栏; // 姓名,电话,email,住址,简介;
建立Connection对象db;
完成实例化: db.Open "Dbq=...; Driver=..." ; // 后援数据库名: address.mdb
建立Recordset对象rs;
完成实例化: rb.Open "Select ...",db,1 ; // 数据表名: users
if ( rs.Bof Or rs.Eof ) // 若 rs 是空集
输出:现在还没有数据;
else
{ Dim page_size,page_no,page_total; // 声明程序变量:页尺寸,页号码,页总数
page_size=10;
if ( Request.QueString("page_no1")="" ) // 这里的 page_no1 是 Request 对象的通信变量
page_no=1; // 页号码初始值选择为 1
else
page_no=Cint(Request.QueString("page_no1")); // 页号码更新值选择为 page_no1
rs.AbsolutePage=Page_no; // 设置和读取 rs 属性值
rs.PageSize=page_no;
page_total=rs.PageCout;
Dim I; // 声明循环变量
I=page_size;
while ( Not rs.Eof And I>0 ) // 循环直到文件结束或当前页结束
{ 以表格的形式输出当前记录行数据; // name,tel,email,home,intro;
rs.MoveNext;
I=I-1; // 循环显示指定页号码的全部数据
}
}
结束表格;
输出:“请选择数据页:”
for (I=1,I<=page_total,I++)
{ if (I=page_no)
输出:I&"nbsp;";
else
输出:I(带下划线)&"nbsp;"; // 链接此文件自身,用户点击此处 page_no1 反馈值为 I
}
关闭rs;
关闭db;
结束HTML;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -