PHP實(shí)現(xiàn)關(guān)鍵字搜索后描紅功能示例
本文實(shí)例講述了PHP實(shí)現(xiàn)關(guān)鍵字搜索后描紅功能。分享給大家供大家參考,具體如下:
在剛開始學(xué)習(xí)php的時(shí)候,就對(duì)搜索過后的關(guān)鍵字描紅感到好奇,但是這幾天在鞏固php基礎(chǔ)的時(shí)候,就發(fā)現(xiàn)原來這樣的效果實(shí)現(xiàn)并不難。按照慣例,首先給大家看看效果圖吧。
運(yùn)行效果圖
數(shù)據(jù)庫(kù)相關(guān)
- 數(shù)據(jù)庫(kù)名是book,只有一個(gè)數(shù)據(jù)庫(kù)表,也是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"> 請(qǐng)輸入關(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ù)庫(kù)連接 $conn = mysql_connect("localhost","root","1234"); if(!$conn){ die("數(shù)據(jù)庫(kù)連接失敗"); } $flag = mysql_select_db("book",$conn); if(!$flag){ die("數(shù)據(jù)庫(kù)打開失敗"); } 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ù)庫(kù)進(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ù)庫(kù)操作入門教程》、《php+mysqli數(shù)據(jù)庫(kù)程序設(shè)計(jì)技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家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 搜索框提示(自動(dòng)完成)實(shí)例代碼
- jquery+php實(shí)現(xiàn)搜索框自動(dòng)提示
- ThinkPHP讓分頁保持搜索狀態(tài)的方法
- PHP查找與搜索數(shù)組元素方法總結(jié)
相關(guān)文章
php的$_FILES的臨時(shí)儲(chǔ)存文件與回收機(jī)制實(shí)測(cè)過程
上傳文件是怎么個(gè)原理,大概的想了下,應(yīng)該是一種回收機(jī)制:點(diǎn)擊了臨時(shí)文件空間,那么,php自身應(yīng)該自己維護(hù)這塊空間的回收,具體的測(cè)試過程如下,感興趣的朋友可以參考下哈2013-07-07PHP中str_replace函數(shù)使用小結(jié)
在實(shí)際的程序開發(fā)中,執(zhí)行字符串替換操作是一件非常經(jīng)常的事,對(duì)str_replace函數(shù)的實(shí)用也會(huì)非常頻繁。2008-10-10XAMPP升級(jí)PHP版本實(shí)現(xiàn)步驟解析
這篇文章主要介紹了XAMPP升級(jí)PHP版本實(shí)現(xiàn)步驟解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09php實(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簡(jiǎn)單實(shí)用的PHP防注入類實(shí)例
這篇文章主要介紹了簡(jiǎn)單實(shí)用的PHP防注入類實(shí)例,以兩個(gè)簡(jiǎn)單的防注入類為例介紹了PHP防注入的原理與技巧,對(duì)網(wǎng)站安全建設(shè)來說非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-12-12