|
楼主 |
发表于 2005 年 12 月 7 日 06:52:39
|
显示全部楼层
Asp站内搜索关键字上色
<!--#include file="conn.asp"-->
<!------------------------------------
Asp站内搜索的关键字上色!
文章作者:Jony[E.S.T]
信息来源:邪恶八进制信息安全团队[E.S.T]&新龙门博客
技术重点:replace的应用
------------------------------------->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>设计自己的搜索网站</title>
<style type="text/css">
<!--
body,td,th {
font-size: 12px;
}
-->
</style>
<script type="text/javascript">
function Checktext()
{
if (document.from.text.value.length == 0 )
{
alert("搜索关键字不能为空!");
document.from.text.focus();
return false;
}
return true;
}
</script>
</head>
<body>
<form action="?act=search" name="from" method="post" onClick="return Checktext();">
<input name="text" type="text" id="text" />
<input type="submit" name="Submit" value="搜索" />
</form>
</body>
</html>
<%
function FontToColor(Str)
'定义一个字符转换的过程
if not isnull(str) then
str = replace(str,request("text"),"<font color=red>"&request("text")&"</font>")
'转换str中符合request("text")的字符为 <font color=red>字符</font>
FontToColor = str
end if
end function
if request("act")="search" then
set rs=server.CreateObject("adodb.recordset")
rs.open"select * from list where text like '%"&request("text")&"%' order by time desc",conn,1,1
if rs.eof and rs.bof then
response.write"没有记录!"
response.end
else
do while not rs.eof
response.write"<table width='600' border='0' cellspacing='0' cellpadding='0'><br><tr width='600'><td>"
response.write FontToColor(rs("text"))
'查找rs("text")中包含的request("text")字符,并替换
response.write"</td></tr>"
rs.movenext
loop
rs.close
set rs=nothing
end if
end if
%> |
|