首頁 > 後端開發 > PHP問題 > 怎麼用php寫的關鍵字查詢

怎麼用php寫的關鍵字查詢

藏色散人
發布: 2023-03-11 06:46:01
原創
3203 人瀏覽過

用php寫關鍵字查詢的方法:先取得從文字方塊輸入的關鍵字文字;然後連接資料庫進行查詢,並將書名中或描述中包含關鍵字文字的記錄查詢出來;最後把查詢到的結果循環顯示出來即可。

怎麼用php寫的關鍵字查詢

本文操作環境:windows7系統、PHP7.1版,DELL G3電腦

怎麼用php寫的關鍵字查詢?

PHP實現關鍵字搜尋後描紅功能:

在剛開始學習php的時候,就對搜尋過後的關鍵字描紅感到好奇,但是這幾天在鞏固php基礎的時候,就發現原來這樣的效果實現並不難。按照慣例,先給大家看看效果圖。

運行效果圖

怎麼用php寫的關鍵字查詢

#資料庫相關

  • 資料庫名稱是book,只有一個資料庫表,也是book,模擬了5個資料。
  • name欄位是書名,description欄位是書的描述

怎麼用php寫的關鍵字查詢

#程式碼

<!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">
  请输入关键字:<input type="text" name="keyword">
  <input type="submit" value="提交" />
</form>
<?php
  if(!empty($_POST[&#39;keyword&#39;])){
    $keyword = $_POST[&#39;keyword&#39;];//获取输入的关键字
    //进行数据库连接
    $conn = mysql_connect("localhost","root","1234");
    if(!$conn){
      die("数据库连接失败");
    }
    $flag = mysql_select_db("book",$conn);
    if(!$flag){
      die("数据库打开失败");
    }
    mysql_query("set names utf8");
    $sql = "select * from book where name like &#39;%$keyword%&#39; or description like &#39;%$keyword%&#39;";
    $result = mysql_query($sql,$conn);
    while($row = mysql_fetch_assoc($result)){
?>
<p style="width:300px;height:100px;background-color: #ccc;margin-bottom: 10px">
  <p>书名:<?php echo str_ireplace($keyword, "<font color=&#39;#f00&#39;>$keyword</font>",$row[&#39;name&#39;])?></p>
  <p>描述:<?php echo str_ireplace($keyword, "<font color=&#39;#f00&#39;>$keyword</font>",$row[&#39;description&#39;])?></p>
</p>
<?php
  }
}else{
  echo "很遗憾,没有找到书籍";
}
?>
</body>
</html>
登入後複製

最後說一下實現的原理,首先先獲取從文本框輸入的關鍵字文字,然後就是連接資料庫進行查詢,將書名中或者描述中包含關鍵字文字的記錄查詢出來,把查詢到的結果循環顯示出來,在顯示書名和描述的時候,用str_ireplace()函數將其中的關鍵字文字替換成帶有紅色的文字,就實現了關鍵字描紅的效果。

推薦學習:《PHP影片教學

以上是怎麼用php寫的關鍵字查詢的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板