资源描述:
《如何做一个检索结果带链接检索?》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、如何做一个检索结果带链接的检索?具体代码和说明如下:<%data=request.form("search_data")'从FORM变量集得到要查询的文件名称所要包含的字符串p=search_folder(data,"http://jack/cgi-bin","c:intelswwwrootcgi-bin")'调用函数查询目标查询目录下的所有子目录(所有子树),方法:search_folder(要查询的字符串,查询目标的虚拟绝对路径,查询目标的真实绝对路径)%>functionsearch_folder(
2、search_data,v_path,c_path)dimfile_system,cur_folder,sub_folders,sub_files'目录检索函数ifnotisempty(search_data)andlen(search_data)>0then'确定查询字符串有效非空setfile_system=createobject("scripting.filesystemobject")'建立文件系统对象setcur_folder=file_system.getfolder(c_path)'建立建立当前目录对象setsub_folders=cur_folder.subfolders
3、'建立当前目录的子目录对象集合foreacheach_sub_folderinsub_folders'对子目录集合进行遍历ifeach_sub_folder.attributes=16then'确定子目录的属性为普通子目录sub_v_path=v_path&"/"&each_sub_folder.namesub_c_path=c_path&""&each_sub_folder.name'得到当前的子虚拟绝对路径与真实绝对路径,默认子目录与子虚拟目录级别名称完全相同p=search_file(search_data,sub_v_path,sub_c_path)'调用文件检索函数对当前子目录下
4、的文件进行字符串匹配检索p=search_folder(search_data,sub_v_path,sub_c_path)'递归检索当前子目录的下一级目录endifnextseteach_sub_folder=nothingsetsub_folders=nothingsetcur_folder=nothingsetfile_system=nothing'清空endifendfunction-----------------------------------------------------------------------------------------------------
5、---------------------------functionsearch_file(search_data,v_path,c_path)dimfile_system,sub_files,sub_file_v_path,sub_out_v_path'文件匹配检索函数ifnotisempty(c_path)then'确认路径不为空setfile_system=createobject("scripting.filesystemobject")setcur_folder=file_system.getfolder(c_path)setsub_files=cur_folder.files
6、'建立检索目录下的文件对象集合foreacheach_fileinsub_files'遍历文件对象集合ifinstr(each_file.name,search_data)<>0then'匹配字符串与文件名sub_file_v_path=v_path&"/"&each_file.name'建立可用链接,输出匹配文件sub_out_v_path=Replace(sub_file_v_path,"","%20")'替换路径及文件名中的空格,以便系统确定路径response.write("
"&sub_file_v_path&"")
7、endifnextsetsub_out_v_path=nothingsetsub_file_v_path=nothingseteach_file=nothingsetsub_files=nothingsetfile_system=nothingendifendfunction