1.PHP站内搜索 分类: PHP开发实例 2015-07-31 22:48 4人阅读 评论(0) 收藏

PHP站内搜索:多关键字、加亮显示

1、SQL语句中的模糊查找

$sql = "SELECT * FROM `message` WHERE `content`like '%$k[0]%' and `content`like '%$k[0]%'";

2、多个关键字搜索的原理和技巧

3、替换关键字高亮显示

$r[content] = preg_replace("/($_GET[key])/i", "<font color = red><b>\1</b></font>", $r[content]);

代码实例:

<?php
include("26_mysql_class.php");
header("Content-type:text/html;charset=utf-8");
error_reporting(0);
$db = new mysql('localhost','root','','message_board','utf8');

if($_GET[key]){
	$k = explode ( " ", $_GET[key]);

	$sql = "SELECT * FROM `message` WHERE `content`like '%$k[0]%' and `content`like '%$k[0]%'";
	echo "GET内容:".$_GET[key]."<br>"."<hr>搜索结果<br>";
	$q = $db->query($sql);
	while ($r = mysql_fetch_array($q)) {
		$r[content] = preg_replace("/($k[0])/i", "<font color = red><b>\1</b></font>", $r[content]);
		$r[content] = preg_replace("/($k[1])/i", "<font color = red><b>\1</b></font>", $r[content]);
		echo $r[content]."<br>";
	}
}
?>

<form action="" method="get">
	关键字:
	<input type = "text" name="key"/>
	<input type = "submit" name="sub" value="全站搜索"/>
</form>


版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/chenyigen/p/4702968.html