<form
action="地址"
method="post"
name="searchform">
<input
type="text"
name="search">
<input
type="submit"
value="搜索">
</form>
然后呢,当你点击搜索的时候,将包含name属性的属性值也就是你输入的搜索的内容,通过method指定的方式发送到action指定的页面。
在action指定的页面接受获得的具有name属性的属性值,然后根据脚本的不同,搜索数据,然后返回到一个页面进行显示。流程和原理就是这样了。
你这里还有单选或复选,原理是一样的,判断哪个选择了,然后提交页面另一个页面根据选择的进行筛选罢了。
希望我的答案能让你满意
可以用JS建立数据结构,然后在相应的结构中搜索。
静态网页用javascript来实现站内搜索的一个小功能,参考例子如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
function encode(s){
return s.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/([\\\.\*\[\]\(\)\$\^])/g,"\\$1")
}
function decode(s){
return s.replace(/\\([\\\.\*\[\]\(\)\$\^])/g,"$1").replace(/>/g,">").replace(/</g,"<").replace(/&/g,"&")
}
function highlight(s){
if (s.length==0){
alert('搜索关键词未填写!')
return false
}
s=encode(s)
var obj=document.getElementsByTagName("body")[0]
var t=obj.innerHTML.replace(/<span\s+class=.?highlight.?>([^<>]*)<\/span>/gi,"$1")
obj.innerHTML=t
var cnt=loopSearch(s,obj)
t=obj.innerHTML
var r=/{searchHL}(({(?!\/searchHL})|[^{])*){\/searchHL}/g
t=t.replace(r,"<span class='highlight'>$1</span>")
obj.innerHTML=t
alert("搜索到关键词"+cnt+"处")
}
function loopSearch(s,obj){
var cnt=0
if (obj.nodeType==3){
cnt=replace(s,obj)
return cnt
}
for (var i=0,cc=obj.childNodes[i]i++){
if (!c.className||c.className!="highlight")
cnt+=loopSearch(s,c)
}
return cnt
}
function replace(s,dest){
var r=new RegExp(s,"g")
var tm=null
var t=dest.nodeValue
var cnt=0
if (tm=t.match(r)){
cnt=tm.length
t=t.replace(r,"{searchHL}"+decode(s)+"{/searchHL}")
dest.nodeValue=t
}
return cnt
}
</script>
<style type="text/css">
.highlight{background:greenfont-weight:boldcolor:white}
</style>
</head>
<body>
<form onsubmit="highlight(this.s.value)return false">
<p><input name="s" id="s" title="搜索内容:"/><input type="submit" value="搜索"/></p>
</form>
<div id="content">
内容
内容
内容
内容
内容
</div>
</body>
</html>
有三种常见的方式1、自己设计表单、编程、与数据库链接检索。
2、在百度或谷歌注册申请站内搜索功能。获得代码,添加到自己的页面中。
3、使用第三方的工具软件,搭建检索功能
下面是制作’PHP搜索’功能
准备:
数据库(mysql):一个数据库(search),库里面一个表(title),表里面一个字段(name).
PHP页面:两个页面(index.php search.php)
制作工具:Dreamweaver
开始:
——————————————————
第一步.创建数据库.(目前大家应该都是用的phpmyadmin来 *** 作数据库的吧?)
建立一个数据库.
第二步.建表
在刚建立的search数据库里插入一个名字为title的表.建表时让你选插入几个字段.写1就可以了.
第三步.建字段
插入的字段命名为name,长度值20就可以了.
—–数据库部分已经做完,接下来是网页部分—–
第四步.建立两个页面
建立两个文件:index.php和search.php可以使用记事本等文本工具直接建立.我使用的工具是Dreamweaver(方便嘛.呵呵).
第五步.index.php的页面制作.
这个页面是用来传递你搜索的关键字的.代码如下:
<form method=”post” action=”search.php” name=”search”>
<input name=”search” type=”text” value=”" size=”15″><input type=”submit” value=”Search”>
</form>
这段代码是建立一个FORM表单.专门用来提交数据的.
第一行是FORM表单的开始.它的传递方式是post,传递到search.php这个页面.表单名为name.
第二行是文本域和提交按钮.文本域命名为search,按钮默认就可以了.
第三行是FORM表单的结束语句.
第五步.search.php的页面制作.
这个页面很关键.因为他是获取index页面传递过来的值,然后导出搜索的数据.
首先要绑定你建立的search数据库,我用的DW生成的.
上一个页面传送的文本域是search.所以,这里需要建立一个search变量.来接收你输入的关键词.用以下语句定义变量:
<?php
$searchs = $_POST['search']
?>
然后建立一个记录集,选择高级.SQL语句中填写:
SELECT *
FROM title
WHERE name like ‘%$searchs%’
这句的意思是选择title表里面的所有字段(*),然后查询name中的$searchs变量。这个变量也就是你在index中输入的值啦。
然后在BODY里面绑定一个动态文本。选择NAME。
—–网页部分完成.真个搜索功能也就完成了—–
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)