プロジェクト構造:
検索開始: ここでキーワードを検索 (「大きい」「これ」)
検索結果: ハイライト
プロジェクトに必要なデータベース構造:
実装コード:
conn.php
コードをコピー コードは次のとおりです:
$conn = @ mysql_connect("localhost", "root", "" )または die("データベース リンク エラー");
mysql_select_db("form", $conn);
searchAndDisplayWithColor.php
; コードは次のとおりです: include 'conn.php';
"get " キーワード: < ;/td>
cellspacing="1 " bgcolor="#add3ef">
//キーワードが空でない場合にのみ関連検索を実行します
if($_GET['keyWord']){
//キーワードはスペースで区切ります
$key =explode(' ', $_GET[keyWord]);
$sql="タイトルが「$key[0]」、タイトルが「$key[1]」、コンテンツが「$ key[0」のメッセージから * を選択します) ]' または '%$key[1]%'" のようなコンテンツ;
$query=mysql_query($sql);
while ($row=mysql_fetch_array($query)){
//キーワードを置換し、キーワードを強調表示します
$row[title]=preg_replace("/$key[0]/i", "$key[0]< /font>", $ row[title]);
$row[title]=preg_replace("/$key[0]/i", "$key[1]< /font>", $row[title]);
$row[content]=preg_replace("/$key[0]/i", " $key[0]< ;/b>", $row[content]);
$row[content]=preg_replace("/$key[1]/i", " $key[1]", $row[content]);
?>
=$row[title]?> ユーザー:=$row[user ] ?> /font>
内容: =$row[content]? |
;/tr> } ?> |
注: この小さなプログラムでは、単語を区切って 2 つのキーしか検索できないという点があります。 「big」などのキーワードのみで検索すると
文字化けが表示されます...^|_|^、これは次のコードの結果によるものです:
コードをコピーします
コードは次のとおりです:
//キーワードをスペースで区切ります
$key=explode(' ', $_GET[keyWord]); 改善したい場合は、次のようにする必要があります。後でここで判断してください。
上記は、PHP の複数キーワードの強調表示の実装コードを、強調表示の内容も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。
声明:この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。