php站内搜索关键词变亮的实现方法
本文实例讲述了php站内搜索关键词变亮的实现方法。分享给大家供大家参考。具体分析如下:
我们这个做法是把搜索结果出来,与搜索关键词相同的替换成高亮的字, 我们会用到str_replace(你找的关键字,<带有高亮的html标签>你找的关键字,$str);
就这么容易了,好了下面我们来看一个实例吧.
先创建一个数据库:create database 'searchKey';
再创建表,SQL建库代码如下:
复制代码 代码如下:
CREATE TABLE `fangke_cc`.`search` (
`id` INT( 4 ) NOT NULL AUTO_INCREMENT ,
`keyword` VARCHAR( 20 ) NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM
`id` INT( 4 ) NOT NULL AUTO_INCREMENT ,
`keyword` VARCHAR( 20 ) NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM
我们导入一些数据,SQL建库代码如下:
复制代码 代码如下:
INSERT INTO `search` (`id`, `keyword`) VALUES
(1, '中国脚本编程第一站www.jb51.net'),
(2, '中国脚本编程第一站www.jb51.net'),
(3, '中国脚本编程第一站www.jb51.net'),
(4, '中国脚本编程第一站www.jb51.net');
(1, '中国脚本编程第一站www.jb51.net'),
(2, '中国脚本编程第一站www.jb51.net'),
(3, '中国脚本编程第一站www.jb51.net'),
(4, '中国脚本编程第一站www.jb51.net');
好了下面我们就来执行查询操作,实例代码如下:
复制代码 代码如下:
if( $_POST) {
$db ='fangke_cc';
mysql_pconnect('localhost','root','root') or die(mysql_error());
mysql_select_db($db);
mysql_query("set names 'gbk'");
$key = $_POST['keyword'];
$sql = "Select * from search where keyword like '%$key%'";
$query = mysql_query($sql);
while( $rs = mysql_fetch_array( $query ) )
{
echo str_replace($key,"<b>$key</b>",$rs['keyword']),'<br />';
}
}
?>
<form name="form1" method="post" action="">
<label>
<input name="keyword" type="text" id="keyword">
</label>
<label>
<input type="submit" name="Submit" value="提交">
</label>
</form>
$db ='fangke_cc';
mysql_pconnect('localhost','root','root') or die(mysql_error());
mysql_select_db($db);
mysql_query("set names 'gbk'");
$key = $_POST['keyword'];
$sql = "Select * from search where keyword like '%$key%'";
$query = mysql_query($sql);
while( $rs = mysql_fetch_array( $query ) )
{
echo str_replace($key,"<b>$key</b>",$rs['keyword']),'<br />';
}
}
?>
<form name="form1" method="post" action="">
<label>
<input name="keyword" type="text" id="keyword">
</label>
<label>
<input type="submit" name="Submit" value="提交">
</label>
</form>
希望本文所述对大家的php程序设计有所帮助。