ホームページ  >  記事  >  バックエンド開発  >  PHPサイト内のキーワードを検索および強調表示するための実装コードを表示します。

PHPサイト内のキーワードを検索および強調表示するための実装コードを表示します。

WBOY
WBOYオリジナル
2016-07-29 08:47:301146ブラウズ

コードをコピーします コードは次のとおりです:


require_once 'sqlTools.class.php';//カプセル化クラス、実行可能DQL、DMLステートメント
$info=$_POST['info '];
$sql="user_500 から名前、パスワード、電子メールを選択します。名前は '%$info%'、パスワードは '%$info%'、または電子メールは '%$info%' です。"; SqlTools() ;
$res=$sqlTools->execute_dql($sql);
while ($row=mysql_fetch_assoc($res)){
$row['name']=preg_replace("/($info)/ i", "\1",$row['name']);
$row['password']=preg_replace("/($info) /i" ,"\1",$row['パスワード']);
$row['メール']=preg_replace("/($info )/i ","\1",$row['email']);
echo $row['name']."--> ".$ row['password']."-->".$row['email']."
";
}
?>

アイデア分析:
含まれる %$ を変更するSQL ステートメント内 info% が実行のために DBMS に渡されると、フィールド内の変数 $info の値を含む情報が検索されます。
%$info---> の値で終わる情報を検索します。 $info
$info%---> $info の値で始まる情報を検索します
通常の関数 preg_replace() を使用して検索されたキーワードを強調表示します (例:
) $row['name']=preg_replace("/( $info)/i"," \1",$row['name']);
意味: POST 側を通じて受け取った値 $infoは追加されたスタイル (赤い太字) に置き換えられ、結果を $row['name'] に再割り当てします
複数のキーワードを検索したい場合は、受け取った値 $info を $info_more=explode(" " のように分割できます) ,$info );//このメソッドは、キーワードをスペースで区切って分割し、その分割結果を 1 つずつクエリして、キーワードを強調表示する置換を実行できます。
sqlTools のソース コード。

コードをコピーします コードは次のとおりです:

class SqlTools{
private $host="localhost";
private $ dbuser="; root";
private $dbpwd="";
private $conn;
public function __construct(){
$this->c
if(!$this->conn){
die("データベースの接続に失敗しました" .mysql_error());
}
mysql_select_db($this->dbname,$this->conn) または die("データベースが見つかりません".mysql_error());
mysql_query("set names utf8"); ;
}
パブリック関数execute_dml($sql){
$bool=mysql_query($sql);
if ($bool>0) {
}else{
return 2;
}
}else {
return 0;
}
}
public functionexecute_dql($sql){
$res=mysql_query($sql);
return $res(){
mysql_close( $this->conn);
}
}
?>元の記事: WEB Development_Xiao Fei

以上、PHPサイト検索とキーワードハイライト表示の実装コードを表示内容も含めて紹介しましたので、PHPチュートリアルに興味のある友人の参考になれば幸いです。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。