ASP通讯录源代码
ASP多条件查询功能实现代码(多关键词查询)

ASP多条件查询功能实现代码(多关键词查询)经过多次研究写出了如下代码,有需要的可以参考下复制代码代码如下:kd=server.HTMLEncode(request("keyword"))if kd<>"" thenkd=trim(kd)'kd=replace(kd," ","")kd=replace(kd,"'","")kd=replace(kd,"%","")kd=replace(kd,"\"," ")kd=replace(kd,">",">")kd=replace(kd,"<","<")kd=replace(kd,","," ")kd=replace(kd,","," ")kd=replace(kd,"|"," ")kd=replace(kd,";"," ")kd=replace(kd,":"," ")kd=replace(kd,":"," ")kd=replace(kd,";"," ")'上⾯的是先替换⼀些特殊字符,⽅便输⼊⼀些特殊的分隔符keyarr= Split(kd," ")keyarrl=ubound(keyarr)For I = 0 to keyarrlif keyarrl>0 thensqlk=sqlk&" and title like '%"&keyarr(I)&"%'"elsesqlk=sqlk&"and title like '%"&keyarr(I)&"%'"end ifNextif id<>"" thensql="select top 1000 id,title from news where type_id in ("&sqqq&") "&sqlk&" order by isshow ,shengcheng,id desc" elsesql="select top 1000 id,title from news where id<>0 "&sqlk&" order by isshow ,shengcheng,id desc"end ifelseif id<>"" thensql="select top 1000 id,title from news where type_id in ("&sqqq&") order by isshow ,shengcheng,id desc"elsesql="select top 1000 id,title from news where id<>0 order by isshow ,shengcheng,id desc"end ifend ifasp的多条件符合查询语句,⾃⼰写的,拿出来分享⼀下,绝对原创。
手机通讯录源代码

}ren;
//菜单
void menu() //目录
{
system("cls"); //清屏
printf(" #########欢迎使用手机通讯录#########\n");
printf("\n");
printf("==============================================================================\n");
if(!feof(fp))
{ printf("人员的信息如下:\n");
printf("说明:(A办公类B个人类C商务类)");
printf("\n%10s %15s %10s %20s \n","姓名","号码","类别","邮箱");
while(!feof(fp))
{
if(strcmp(ry.leibie,leibie)==0) //若为该类别则输出
void bohao()
{ ren ry[N];
FILE *fp;
char name[10];
int i,len,k=-1;
system("cls");
printf("\n输入要删除的人员姓名: ");scanf(""ren.dat","rb+"))==NULL) {printf("can't open file!\n");exit(0);}
Asp+Access网上同学录论文

随着网络信息时代的来临,互联网应用越来越广泛,从网上获取并且发布信息已成为现代计算机应用的一大特色。
一个网站,是一个传媒,也是一个窗口。
普通人可以通过浏览各个网站,接触到许多从书本上学不到的知识,还可以看看新闻之类当作是一种消遣。
而一个企业,一个个体通过制作自己的网站,向全世界宣传自己的产品,提供各种产品的信息供顾客参考,并兼顾销售。
这时,网站也就成为对外的窗口。
同时,网站上普遍都有一些免费资源,从而达到资源共享,使得我们足不出户都能得到想要的资料。
现在很多企业,学校,乃至班级都有自己的网站。
通过网站使数据处理更方便快捷,人员访问更方便。
本课题为我们班级的同学提供一个相互联系,相互交流的平台。
网站上有最新的班级动态,可以让同学们即使了解本班的情况。
网站根据同学登陆时的用户名和密码确定用户的权限,用户只能在被允许的权限范围内管理和查询相应的信息。
同时系统提供了更改密码功能,方便用户保护自己的隐私。
关键词:ASP ;Access ;网上同学录;数据库摘要 (1)关键词 (1)1概述 (4)1.1开发此网站的意义 (4)1.2可行性研究 (4)1.2.1目的 (4)1.2.2经济上可行性 (4)1.2.3技术上可行性 (4)1.2.4运行上可行性 (4)1.2.5法律可行性 (5)2 需求分析 (6)2.1引言 (6)2.2流程分析 (6)2.3具体需求分析 (6)2.4系统设计思想 (7)2.5系统设计分析 (7)2.6系统功能分析 (8)2.7网上通讯录的目标 (8)2.7.1节约资源,提高班级信息的精确度 (8)2.8数据库分析 (8)2.8.1数据流图描述 (9)2.8.2数据字典 (11)3 概要设计 (13)3.1目的 (13)3.2目标 (13)3.3运行环境 (13)3.4总体设计 (13)3.4.1用户管理 (13)3.4.2班级信息管理模块 (13)3.4.3成绩信息管理模块 (14)3.4.4其他信息管理模块 (14)3.5网上通讯录所需完成具体的功能 (15)3.6系统模块图 (16)3.7接口设计 (16)3.8各模块的具体分析 (16)3.9运行设计 (19)3.10出错处理设计 (19)4详细设计 (20)4.1目的 (20)4.2程序描述 (20)4.2.1部分功能模块的描述与数据表的创建如下 (20)4.2.2部分模块功能实现的算法流程图 (22)4.2.3系统的实现 (24)5 遇到的问题 (25)结束语 (25)参考文献 (25)附录 (26)致谢 (32)1可行性研究1.1开发此网站的意义随着社会的发展,上网已经越来越普遍了。
[数据结构课程设计通讯录查询系统实验报告范文及源代码]数据结构通讯录
![[数据结构课程设计通讯录查询系统实验报告范文及源代码]数据结构通讯录](https://img.taocdn.com/s3/m/e16be22d657d27284b73f242336c1eb91a3733b4.png)
[数据结构课程设计通讯录查询系统实验报告范文及源代码]数据结构通讯录工程名称:停车管理系统姓名:学号:专业:软件工程1.需求分析为某个单位建立一个员工通讯录管理系统,可以方便查询每一个员工的与地址。
设计散列表存储,设计并实现通讯录查找系统。
1.根本要求〔1〕每个记录有以下数据项:号码、用户名、地址;〔2〕从键盘输入各记录,分别以号码为关键字建立散列表;〔3〕采用二次探测再散列法解决冲突;〔4〕查找并显示给定号码的记录;〔5〕通讯录信息文件保存。
2.重点、难点重点:〔1〕通过实验深入理解哈希表既是一种存储形式,又是一种查找方法;〔2〕哈希表的构造;〔3〕哈希冲突方案的设计。
难点:哈希表的构造与哈希冲突方案的设计输入的形式和输入值的范围;输入三个字符串:分别是号码,姓名,地址,每行一个数据字符串长度适当如:号码〔纯数字〕姓名地址输出的形式;如:姓名号码地址程序所能到达的功能。
1:并且通过号码为关键字,用二次再散列法寻找地址储存在哈希表中。
2:3:4:5:显示通讯录6:把通讯录写入文件储存。
2.概要设计(1)数据结构tructlit{chara[12];charname[15];charadd[15];intf=0;};用连续的内存空间构建哈希表tructqtack{tructlit某bae;inti;};(2)程序模块1:构建二次再散列:inti;for(i=1;i<25;i++)d[2某i]=-1某i某i;for(i=1;i<25;i++)/某构造二次再散列某/d[i+i-1]=i某i;2:主菜单:voidinterface(){inti;printf("某某某某某某某某某某某某某某某某某某某某\n");printf("某某某某某某某某某某某某某某某某某某某某\n");canf("%d",&i);witch(i){cae0:return;break;cae1:huru();break;cae2:print();break;cae3:each();break;cae4:del();break;cae5:change();break;cae6:write();break;};}3:输入voidhuru()4:存入哈希表,采用二次探测再散列法解决冲突;voidtore(char某a,char某name,char某add)voideach();voidchange()Voiddel〔〕;voidwrite()(3)各模块之间的调用关系以及算法设计3.详细设计4.测试与分析主界面:构建哈希表,允许号码重复可以支持姓名,,地址三个关键字的查找可以按照姓名地址删除写文件:创立文件通讯录.t某t 如图:5.附录3.cpp#include<tdio.h>#include<tdlib.h>#include<tring.h>#include<iotream>#include<tring.h>uingnamepacetd;intd[50];/某再散列某/tructlit{chara[12];charname[15];charadd[15];intf=0;};tructqtack{tructlit某bae;inti;};tructqtackS;voidtore(char某a,char某name,char某add){intkey;key=int(a[0])+int(a[3])+int(a[7]);/某以号码的第1,4,8位作为关键字构造哈希函数某/S.i=key%20;intj=1;while(true){if((S.bae+S.i)->f==0){trcpy((S.bae+S.i)->a,a);trcpy((S.bae+S.i)->name,name);trcpy((S.bae+S.i)->add,add);(S.bae+S.i)->f=1;break;}S.i=(key%20+d[j])%20;j++;}}voidhuru(){voidinterface();cout<<"请输入:\n例如:\n小王\n安徽省合肥市\n输入0结束\n"; chara[12];charname[15];charadd[15];while(true){canf("%",a);if(a[0]=='0')break;canf("%",name);canf("%",add);printf("%已保存\n",name);tore(a,name,add);/某将输入保存到哈希表某/}interface();}voidprint(){voidinterface();inti;printf("姓名号码地址\n");for(i=0;i<20;i++){if((S.bae+i)->f==1){printf("%%%\n",(S.bae+i)->name,(S.bae+i)->a,(S.bae+i)->add);}}interface();}voideach(){voidinterface();inti;intff=0;intb;chara[15];printf("输入1按号码查找,输入2按姓名查找,输入3按地址查找\n");canf("%d",&b);witch(b){cae1:printf("请输入号码\n");canf("%",a);for(i=0;i<20;i++)if(trcmp(a,(S.bae+i)->a)==0){printf("%%%\n",(S.bae+i)->name,(S.bae+i)->a,(S.bae+i)->add); ff=1;}if(ff==0)printf("找不到该用户\n");break;cae2:printf("请输入姓名\n");canf("%",a);for(i=0;i<20;i++)if(trcmp(a,(S.bae+i)->name)==0){printf("%%%\n",(S.bae+i)->name,(S.bae+i)->a,(S.bae+i)->add); ff=1;}if(ff==0)printf("找不到该用户\n");break;cae3:printf("请输入地址\n");canf("%",a);for(i=0;i<20;i++)if(trcmp(a,(S.bae+i)->add)==0){printf("%%%\n",(S.bae+i)->name,(S.bae+i)->a,(S.bae+i)->add); ff=1;}if(ff==0)printf("找不到该用户\n");break;}interface();}voiddel(){voidinterface();inti;intff=0;chara[15];printf("输入1按号码删除,输入2按姓名删除,输入3按地址删除\n");canf("%d",&b);witch(b){cae1:printf("请输入号码\n");canf("%",a);for(i=0;i<20;i++)if(trcmp(a,(S.bae+i)->a)==0){(S.bae+i)->f=0;Print(“已删除:%%%\n",(S.bae+i)->name,(S.bae+i)->a,(S.bae+i)->add);ff=1;}if(ff==0)printf("找不到该用户\n");cae2:printf("请输入姓名\n");canf("%",a);for(i=0;i<20;i++)if(trcmp(a,(S.bae+i)->name)==0){(S.bae+i)->f=0;printf("已删除:%%%\n",(S.bae+i)->name,(S.bae+i)->a,(S.bae+i)->add);ff=1;}if(ff==0)printf("找不到该用户\n");break;cae3:printf("请输入地址\n");canf("%",a);for(i=0;i<20;i++)if(trcmp(a,(S.bae+i)->add)==0){(S.bae+i)->f=0;printf("已删除:%%%\n",(S.bae+i)->name,(S.bae+i)->a,(S.bae+i)->add);ff=1;}if(ff==0)printf("找不到该用户\n");break;}interface();}voidchange(){voidinterface();inti;intff=0;intb;chara[15];printf("请输入姓名\n");canf("%",a);for(i=0;i<20;i++)if(trcmp(a,(S.bae+i)->name)==0){printf("您要修改的是:%%%\n",(S.bae+i)->name,(S.bae+i)->a,(S.bae+i)->add);printf("请输入新信息\n");canf("%",(S.bae+i)->a);canf("%",(S.bae+i)->name);canf("%",(S.bae+i)->add);printf("已修改成:%%%\n",(S.bae+i)->name,(S.bae+i)->a,(S.bae+i)->add);ff=1;}if(ff==0)printf("找不到该用户\n");interface();}voidwrite()voidinterface();inti=0;FILE某fp;if((fp=fopen("通讯录.t某t","wb"))==NULL){printf("openfileerror\n");e某it(1);}for(i=0;i<=20;i++){intch=32;if((S.bae+i)->f==1){fprintf(fp,"%",(S.bae+i)->name);fputc(ch,fp); fprintf(fp,"%",(S.bae+i)->a);fputc(ch,fp);ch=10;fprintf(fp,"%",(S.bae+i)->add);fputc(ch,fp); }fcloe(fp);interface();}voidinterface(){inti;printf("某某某某某某某某某某某某某某某某某某某某\n"); printf("某某某某某某某某某某某某某某某某某某某某\n"); canf("%d",&i);witch(i){cae0:return;break;cae1:huru();break;cae2:print();break;cae3:each();break;cae4:del();break;cae5:change();break;cae6:write();break;}intmain(){ytem("color70");//可以写成red调出颜色组S.bae=(tructlit某)malloc(20某izeof(tructlit)); ytem("date/T");ytem("TIME/T");inti;for(i=1;i<25;i++)d[2某i]=-1某i某i;for(i=1;i<25;i++)/某构造二次再散列某/d[i+i-1]=i某i;interface();}6.用户使用手册根据主菜单提示选择所想要的操作0:结束程序小华安徽合肥可以根据姓名,,地址分别作为关键字进行查询谢谢使用!。
asp常用代码

翻页:<%Set rs = server.CreateObject("Adodb.RecordSet")rs.open sql,c onn,1,1if not rs.eof thenif request("pagenum")="" thenpagenum=1elseif IsNumeric(request("pagenum")) thenpagenum=Cint(request("pagenum"))elsepagenum=1end ifend ifrs.pagesize=40if pagenum<=0 then pagenum=1if pagenum>rs.pagecount then pagenum=rs.pagecount'response.write "["&pagenum&"]"rs.absolutepage=pagenum '转到要查询的页。
for i=1 to rs.pagesize%>循环内容<%rs.movenextif rs.eof then exit fornextelse%>还没记录!<%end if%><%response.write("每页"&rs.pagesize&"项 共"&rs.recordcount&"项 "&pagenum&"/"&rs.pagecount&" ")if 1 < pagenum then '向上翻页response.write("<a href='?pagenum=1'>首页</a> ")response.write("<a href='?pagenum="&pagenum-1&"'>上一页</a> ")elseresponse.write("<font disabled>首页上一页 </font>")end ifif pagenum >= rs.pagecount then '向下翻页response.write("<font disabled>下一页尾页</font> ")else'response.write("<br>rs.pagecount="&rs.pagecount&"<br>pagenum="&pagenum&"<br>")response.write(" <a href='?pagenum="&pagenum+1&"'>下一页</a> ")response.write("<a href='?pagenum="&rs.pagecount&"'>尾页</a> ")end if%>VB回车换行符:vbCrLf是VB中用于表示“回车换行”的字符串常数(长度为2字节),相当于Chr(13)+Chr(10),或者汇编中的DB 0AH,0DH,$由于是常数,所以不会影响速度。
通讯录设计63219

多用户通讯录一、选题意义随着计算机的普及,人们一系列的日常生活和工作方式都开始走向信息化,例如无纸化办公、电子商务、电子政务等.多用户通讯录系统的实现也是信息化的一个体现,它代替了传统的通讯录、电话本,实现了多个用户能够在网上建立各自的通讯录,互不干扰,并且可以按照类别将联系人分成同学、同事等多个组,使得查询和管理非常方便。
二、系统功能概述根据功能要求,设计多用户通讯录系统的功能模块及结构如图:各模块的功能如下:1)用户登录模块根据用户输入的账号和密码判断该用户是否合法以及是否为管理员,并根据级别进行“用户管理"模块的授权。
2)用户注册模块对于新用户的注册,注册成功的用户将自动登录系统。
新注册的用户默认为普通用户,不能使用“用户管理”模块。
3)通讯录模块包括三个子模块:查询搜索子模块、联系人管理子模块、分类管理子模块。
(1)查询搜索子模块:能够根据用户自行设计的分类查询联系人,能根据姓名、住址等字段进行分类查询联系人(2)联系人管理子模块:用户可以根据自己的联系人查询详情、添加、修改和删除操作。
(3)分类管理子模块:用户可以管理自己的联系人分类,包括添加、修改和删除分类。
4)我的资料模块用户可以查看和修改自己的资料。
5)用户管理模块管理员登录后可以查看用户的详细资料和删除用户。
6)退出系统结束用户在登录模块获得的session变量,退出系统,返回登录页面。
三、系统设计说明1、数据库设计系统可采用SQL SERVER或ACCESS类型的数据库作为后台支持数据库,根据功能的需要建立适合的数据表。
2、功能设计根据以上的功能概述,设计程序,可以根据自己的需要增加和完善一些功能和服务。
四、开发环境前台开发工具可以利用所学的任何一种语言,比如VB、PB、ASP、VC、Java等等,后台数据库可以选用所学的任何数据库比如Access、SQL、ASA(PB自带的)等等。
五、时间安排(4周)六、写出毕业设计报告书(论文)论文必须包括以下内容:1)该设计的摘要2)设计的需求分析3)设计的目的4)程序主要源代码及其说明5)程序运行的结果6)毕业设计的收获、感想以及体会7)参考文献七、设计成绩评定设计成绩是依据学生在设计中的表现和设计成果综合评定,包括:1)设计纪律(20%):根据设计出勤情况、遵守纪律和服从管理情况、以及设计态度等因素评定;如有严重纪律问题,可按学校有关规定直接评为不及格;2)设计报告书的完成质量(40%):设计报告书的完成情况;3)系统的运行效果以及答辩情况(40%):根据设计实际完成的质量而考核。
学生通讯录管理系统c语言编程

学生通讯录管理系统c语言编程以下是一个简单的C语言程序,用于管理学生通讯录。
该程序可以添加、显示、查找和删除学生信息。
c复制代码:#include <stdio.h>#include <stdlib.h>#include <string.h>#define MAX_STUDENTS 100#define MAX_NAME_LENGTH 50// 学生结构体struct Student {char name[MAX_NAME_LENGTH];int age;char gender;char phone[15];char email[50];};// 学生数组struct Student students[MAX_STUDENTS];int num_students = 0;// 添加学生信息void add_student() {if (num_students >= MAX_STUDENTS) {printf("Error: Reached maximum number of students\n");return;}struct Student new_student;printf("Enter name: ");scanf("%s", new_);printf("Enter age: ");scanf("%d", &new_student.age);printf("Enter gender (M/F): ");scanf(" %c", &new_student.gender);printf("Enter phone number: ");scanf("%s", new_student.phone);printf("Enter email: ");scanf("%s", new_student.email);students[num_students] = new_student;num_students++;}// 显示所有学生信息void display_students() {printf("Name\tAge\tGender\tPhone\tEmail\n");for (int i = 0; i < num_students; i++) {printf("%s\t%d\t%c\t%s\t%s\n", students[i].name, students[i].age, students[i].gender, students[i].phone, students[i].email);}}// 查找学生信息void find_student() {char name[MAX_NAME_LENGTH];printf("Enter student name: ");scanf("%s", name);for (int i = 0; i < num_students; i++) {if (strcmp(students[i].name, name) == 0) {printf("Name: %s\n", students[i].name);printf("Age: %d\n", students[i].age);printf("Gender: %c\n", students[i].gender); printf("Phone: %s\n", students[i].phone); printf("Email: %s\n", students[i].email); return;}}printf("Error: Student not found\n");}// 删除学生信息void delete_student() {char name[MAX_NAME_LENGTH];printf("Enter student name: ");scanf("%s", name);int found = 0;for (int i = 0; i < num_students; i++) {if (strcmp(students[i].name, name) == 0) { found = 1;for (int j = i; j < num_students - 1; j++) { students[j] = students[j+1];}num_students--;break;}}if (!found) {printf("Error: Student not found\n");} else {printf("Student deleted successfully\n"); }}int main() {int choice;do {printf("\nMenu:\n");printf("1. Add student\n");printf("2. Display students\n");printf("3. Find student\n");printf("4. Delete student\n");printf("5. Exit\n");printf("Enter choice: ");scanf("%d", &choice);switch (choice) {case 1: add_student(); break;case 2: display_students(); break;case 3: find_student(); break;case 4: delete_student(); break;case 5: printf("Exiting...\n"); break; default: printf("Invalid choice\n"); break; }} while (choice != 5);return 0。
asp连接SQL和Access数据代码(asp里的随机函数)

asp连接SQL和Access数据代码(asp⾥的随机函数)第⼀种写法:复制代码代码如下:MM_conn_STRING = "Driver={SQL Server};server=(local);uid=sa;pwd=;database=infs;"Set conn = Server.Createobject("ADODB.Connection")conn.open MM_conn_STRINGSET RS=SERVER.CreateObject("ADOBD.recordset")SQL="SELECT * FROM TABLE ORDER BY ID DESC"RS.open SQL,CONN,3,3复制代码代码如下:DataServer = "jb51" '数据库服务器IPDataUser = "jb51" '访问数据库⽤户名DataBaseName = "jb51" '数据库名称DataBasePsw = "" '访问数据库密码Set conn = Server.CreateObject("ADODB.Connection")ConnStr="driver={SQLServer};server="&dataserver&";UID="&datauser&";PWD="&databasepsw&";Database="&databasenameconn.open ConnStrIf Err Then Err.Clear:Set conn = Nothing:Response.Write "数据库连接出错,请检查Conn.asp⽂件中的数据库参数设置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通讯录源代码:1、基本通讯录odbc_connection.asp<%dim dbset db=server.createobject("ADODB.CONNECTION")db.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("address.mdb")%>Index.asp<!--#INCLUDE FILE="odbc_connection.asp"--><html><head><title>我们的通讯录</title></head><body><h2 align="center">我们的通讯录</h2><center><table border="0" width="90%"><tr bgcolor="#B7B7B7" align="center"><td width=20%>姓名</td><td width=30%>电话</td><td width=30%>email</td><td width=20%>详细</td></tr><%'建立Recordset对象Dim strSql,rsstrSql ="Select name,tel,email,id From users"Set rs=db.execute(strSql)Do While Not rs.Eof%><tr bgcolor="#F2F2F2" align="center"><td><%=rs("name")%></td><td><%=rs("tel")%></td><td><%=rs("email")%></td><td><a href="particular.asp?id=<%=rs("id")%>" target="_blank">详细</a></td></tr><%rs.MoveNextLoop%></table></center></body></html>Particular.asp<!--#INCLUDE FILE="odbc_connection.asp"--><html><head><title>详细资料</title></head><body><h2 align="center">详细资料</h2><%'利用Request.QueryString获取传过来的ID编号Dim idid=Request.QueryString("id")strSql ="Select * From users where id=" & idSet rs=db.Execute(strSql)%><center><table border="0" width="80%" ><tr><td width=20%>姓名:</td><td><%=rs("name")%></td> </tr><tr><td>电话:</td><td><%=rs("tel")%></td></tr><tr><td>email:</td><td><%=rs("email")%></td></tr><tr><td>简介:</td><td><%=rs("intro")%></td></tr><table><p> <p align=center><a href="javascript:close()">关闭窗口</a></center></body></html>2、通过姓名链接详细页面---index.asp<!--#INCLUDE FILE="odbc_connection.asp"--><html><head><title>我们的通讯录</title></head><body><h2 align="center">我们的通讯录</h2><center><table border="0" width="90%"><tr bgcolor="#B7B7B7" align="center"><td width=40%>姓名</td><td width=30%>电话</td><td width=30%>email</td></tr><%'建立Recordset对象Dim strSql,rsstrSql ="Select name,tel,email,id From users"Set rs=db.execute(strSql)Do While Not rs.Eof%><tr bgcolor="#F2F2F2" align="center"><td><a href="particular.asp?id=<%=rs("id")%>" target="_blank"><%=rs("name")%></a></td><td><%=rs("tel")%></td><td><%=rs("email")%></td></tr><%rs.MoveNextLoop%></table></center></body></html>3、详细页面在指定大小的窗口中打开—index.asp<!--#INCLUDE FILE="odbc_connection.asp"--><html><head><title>我们的通讯录</title></head><body><h2 align="center">我们的通讯录</h2><center><table border="0" width="90%"><tr bgcolor="#B7B7B7" align="center"><td width=20%>姓名</td><td width=30%>电话</td><td width=30%>email</td></tr><%'建立Recordset对象Dim strSql,rsstrSql ="Select * From users"Set rs=db.execute(strSql)Do While Not rs.Eof%><tr bgcolor="#F2F2F2" align="center"><td><a href="#"onClick="open('particular.asp?id=<%=rs("id")%>','','resizable=0,scrollbars=1,st atus=no,toolbar=no,menu=no,width=500,height=300,left=150,top=150')"><%=rs ("name")%></a></td><td><%=rs("tel")%></td><td><%=rs("email")%></td></tr><%rs.MoveNextLoop%></table></center></body></html>4、按字段排序源代码:index.asp<!--#INCLUDE FILE="odbc_connection.asp"--><html><head><title>我们的通讯录</title></head><body><h2 align="center">我们的通讯录</h2><center><table border="0" width="90%"><tr bgcolor="#B7B7B7" align="center"><td width=10%><a href="index.asp?sortfield=id">编号</a></td><td width=10%><a href="index.asp?sortfield=name">姓名</a></td><td width=30%><a href="index.asp?sortfield=tel">电话</a></td><td width=30%><a href="index.asp?sortfield=email">email</a></td><td width=20%><a href="index.asp?sortfield=submit_date">提交日期</a></td></tr><%'这一段主要来获取排序字段,第一次打开时默认按提交日期到序排列,客户选择字段后按指定字段倒叙排列Dim sortfield '定义一个排序字段变量If Request.QueryString("sortfield")="" Then'该条件表示是第一次打开,则令排序字段为提交日期,并倒叙排列sortfield="submit_date DESC"Else'如果选择了其它排序字段,则按指定字段倒叙排列sortfield=Request.QueryString("sortfield") & " DESC"End If'建立Recordset对象,并按指定字段排序Dim strSql,rsstrSql ="Select * From users Order By " & sortfield '请注意By后面要有一个空格Set rs=db.execute(strSql)Do While Not rs.Eof%><tr bgcolor="#F2F2F2" align="center"><td><%=rs("id")%></td><td><%=rs("name")%></td><td><%=rs("tel")%></td><td><%=rs("email")%></td><td><%=rs("submit_date")%></td></tr><%rs.MoveNextLoop%></table></center></body></html>5、分页显示源代码---index.asp p596、分页显示改进源代码---index.asp p61-627、按单个关键字查询源代码---index.asp p638、按多个关键字查询源代码---index.asp<!--#INCLUDE FILE="odbc_connection.asp"--><html><head><title>我们的通讯录</title></head><body><%'这两个变量用来确定查找关键字和字段Dim keyword,fieldIf Trim(Request.Form("keyword"))<>"" Then'如果条件成立,表示客户输入了关键字。