PHP實(shí)現(xiàn)關(guān)鍵字搜索后描紅功能示例
本文實(shí)例講述了PHP實(shí)現(xiàn)關(guān)鍵字搜索后描紅功能。分享給大家供大家參考,具體如下:
在剛開始學(xué)習(xí)php的時(shí)候,就對搜索過后的關(guān)鍵字描紅感到好奇,但是這幾天在鞏固php基礎(chǔ)的時(shí)候,就發(fā)現(xiàn)原來這樣的效果實(shí)現(xiàn)并不難。按照慣例,首先給大家看看效果圖吧。
運(yùn)行效果圖

數(shù)據(jù)庫相關(guān)
- 數(shù)據(jù)庫名是book,只有一個(gè)數(shù)據(jù)庫表,也是book,模擬了5條數(shù)據(jù)。
- name字段是書名,description字段是書的描述

代碼
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title></title>
<link rel="stylesheet" href="">
</head>
<body>
<form action="14.php" method="post">
請輸入關(guān)鍵字:<input type="text" name="keyword">
<input type="submit" value="提交" />
</form>
<?php
if(!empty($_POST['keyword'])){
$keyword = $_POST['keyword'];//獲取輸入的關(guān)鍵字
//進(jìn)行數(shù)據(jù)庫連接
$conn = mysql_connect("localhost","root","1234");
if(!$conn){
die("數(shù)據(jù)庫連接失敗");
}
$flag = mysql_select_db("book",$conn);
if(!$flag){
die("數(shù)據(jù)庫打開失敗");
}
mysql_query("set names utf8");
$sql = "select * from book where name like '%$keyword%' or description like '%$keyword%'";
$result = mysql_query($sql,$conn);
while($row = mysql_fetch_assoc($result)){
?>
<div style="width:300px;height:100px;background-color: #ccc;margin-bottom: 10px">
<p>書名:<?php echo str_ireplace($keyword, "<font color='#f00'>$keyword</font>",$row['name'])?></p>
<p>描述:<?php echo str_ireplace($keyword, "<font color='#f00'>$keyword</font>",$row['description'])?></p>
</div>
<?php
}
}else{
echo "很遺憾,沒有找到書籍";
}
?>
</body>
</html>
最后說一下實(shí)現(xiàn)的原理,首先先獲取從文本框輸入的關(guān)鍵字文字,然后就是連接數(shù)據(jù)庫進(jìn)行查詢,將書名中或者描述中包含關(guān)鍵字文字的記錄查詢出來,把查詢到的結(jié)果循環(huán)顯示出來,在顯示書名和描述的時(shí)候,用str_ireplace()函數(shù)將其中的關(guān)鍵字文字替換成帶有紅色的文字,就實(shí)現(xiàn)了關(guān)鍵字描紅的效果。
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php+mysql數(shù)據(jù)庫操作入門教程》、《php+mysqli數(shù)據(jù)庫程序設(shè)計(jì)技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
- php站內(nèi)搜索并高亮顯示關(guān)鍵字的實(shí)現(xiàn)代碼
- PHP獲取搜索引擎關(guān)鍵字來源的函數(shù)(支持百度和谷歌等搜索引擎)
- PHP自定義函數(shù)獲取搜索引擎來源關(guān)鍵字的方法
- PHP使用微信開發(fā)模式實(shí)現(xiàn)搜索已發(fā)送圖文及匹配關(guān)鍵字回復(fù)的方法
- javascript、php關(guān)鍵字搜索函數(shù)的使用方法
- PHP 搜索查詢功能實(shí)現(xiàn)
- php啟用sphinx全文搜索的實(shí)現(xiàn)方法
- php 搜索框提示(自動完成)實(shí)例代碼
- jquery+php實(shí)現(xiàn)搜索框自動提示
- ThinkPHP讓分頁保持搜索狀態(tài)的方法
- PHP查找與搜索數(shù)組元素方法總結(jié)
相關(guān)文章
php的$_FILES的臨時(shí)儲存文件與回收機(jī)制實(shí)測過程
上傳文件是怎么個(gè)原理,大概的想了下,應(yīng)該是一種回收機(jī)制:點(diǎn)擊了臨時(shí)文件空間,那么,php自身應(yīng)該自己維護(hù)這塊空間的回收,具體的測試過程如下,感興趣的朋友可以參考下哈2013-07-07
PHP中str_replace函數(shù)使用小結(jié)
在實(shí)際的程序開發(fā)中,執(zhí)行字符串替換操作是一件非常經(jīng)常的事,對str_replace函數(shù)的實(shí)用也會非常頻繁。2008-10-10
php實(shí)現(xiàn)基于PDO的預(yù)處理示例
這篇文章主要介紹了php實(shí)現(xiàn)基于PDO的預(yù)處理,結(jié)合實(shí)例形式分析了php實(shí)現(xiàn)pdo預(yù)處理的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2017-03-03

