php站内搜索并高亮显示关键字的实现代码_php技巧
require_once 'sqlTools.class.php';//封装类,可执行dql、dml语句
$info=$_POST['info'];
$sql="select name,password,email from user_500 where name like '%$info%' or password like '%$info%' or email like '%$info%'";
$sqlTools=new 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['password']);
$row['email']=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);//这种方式能对以空格隔开的关键字进行分割,再对分割后的结果挨个进行查询,同样,可以使用正则表达式函数进行替换工作,以高亮显示关键字
sqlTools.class.php的源代码:
class SqlTools{
private $host="localhost";
private $dbname="test";
private $dbuser="root";
private $dbpwd="";
private $conn;
public function __construct(){
$this->conn=mysql_connect($this->host,$this->dbuser,$this->dbpwd);
if(!$this->conn){
die("连接数据库失败".mysql_error());
}
mysql_select_db($this->dbname,$this->conn) or die("找不到该数据库".mysql_error());
mysql_query("set names utf8");
}
public function execute_dml($sql){
$bool=mysql_query($sql);
if ($bool){
if ($bool>0) {
return 1;
}else{
return 2;
}
}else {
return 0;
}
}
public function execute_dql($sql){
$res=mysql_query($sql);
return $res;
}
public function close_conn(){
mysql_close($this->conn);
}
}
?>
原创文章:WEB开发_小飞

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Bagaimana untuk menggunakan JavaScript untuk melaksanakan carian masa nyata dan menyerlahkan hasil? Dengan perkembangan pesat Internet dan data besar, fungsi carian telah menjadi bahagian yang sangat diperlukan dalam banyak laman web dan aplikasi. Fungsi carian tradisional sering menggunakan kaedah pengguna memasukkan kata kunci dan klik butang carian, dan kemudian halaman dimuat semula untuk memaparkan hasil carian. Walau bagaimanapun, pengalaman pengguna kaedah ini agak lemah, dan pengguna perlu menunggu halaman dimuat semula untuk melihat hasilnya. Untuk meningkatkan pengalaman pengguna, fungsi carian masa nyata wujud. carian masa sebenar

Analisis mendalam tentang peranan dan penggunaan kata kunci statik dalam bahasa C Dalam bahasa C, statik ialah kata kunci yang sangat penting, yang boleh digunakan dalam definisi fungsi, pembolehubah dan jenis data. Menggunakan kata kunci statik boleh menukar atribut pautan, skop dan kitaran hayat objek Mari analisa peranan dan penggunaan kata kunci statik dalam bahasa C secara terperinci. Pembolehubah statik dan fungsi: Pembolehubah yang ditakrifkan menggunakan kata kunci statik di dalam fungsi dipanggil pembolehubah statik, yang mempunyai kitaran hayat global

Tajuk: Adakah pergi kata kunci dalam bahasa C? Analisis terperinci Dalam bahasa C, "go" bukan kata kunci. Kata kunci dalam bahasa C ditentukan oleh piawaian C dan digunakan untuk mewakili struktur atau fungsi tatabahasa tertentu Ia mempunyai makna khas dalam pengkompil dan tidak boleh digunakan sebagai pengecam atau nama pembolehubah. Contohnya, kata kunci "int" mewakili jenis data integer, "jika" mewakili pernyataan bersyarat dan sebagainya. Jika kami ingin mengesahkan sama ada "go" ialah kata kunci dalam bahasa C, kami boleh menulis atur cara mudah untuk mengujinya. Berikut ialah contoh: #inc

Peranan dan contoh kata kunci var dalam PHP Dalam PHP, kata kunci var digunakan untuk mengisytiharkan pembolehubah. Dalam versi PHP sebelumnya, menggunakan kata kunci var ialah cara idiomatik untuk mengisytiharkan pembolehubah ahli, tetapi penggunaannya tidak lagi disyorkan. Walau bagaimanapun, dalam beberapa kes, kata kunci var masih digunakan. Kata kunci var digunakan terutamanya untuk mengisytiharkan pembolehubah tempatan dan secara automatik menandakan pembolehubah sebagai skop tempatan. Ini bermakna pembolehubah hanya boleh dilihat dalam blok kod semasa dan tidak boleh diakses dalam fungsi atau blok kod lain. Gunakan var

Terdapat 32 kata kunci dalam bahasa C Mengikut fungsi kata kunci, ia boleh dibahagikan kepada empat kategori: kata kunci jenis data, kata kunci pernyataan kawalan, kata kunci jenis storan dan kata kunci lain. Terdapat 12 kata kunci jenis data, termasuk char, double, float, int, dll. terdapat 12 kata kunci pernyataan kawalan, termasuk untuk, break, if, else, do, dll.; static , extern, dsb. terdapat 4 kata kunci lain, termasuk const, sizeof, dsb.

在go语言中,while不是关键字,可以用for语句加break来实现while循环的效果,例“for {sum++ if sum>10{break}else{...}}”。go语言有break、default 、func、select、case、defer、go、map、else、goto、for、if、var等25个关键字。

Penjelasan terperinci tentang peranan dan penggunaan kata kunci extends dalam PHP Dalam pengaturcaraan PHP, extends ialah kata kunci yang sangat penting, yang digunakan untuk melaksanakan warisan kelas. Melalui kata kunci extends, kita boleh mencipta kelas baharu yang boleh mewarisi sifat dan kaedah satu atau lebih kelas sedia ada. Warisan ialah konsep penting dalam pengaturcaraan berorientasikan objek, yang menjadikan penggunaan semula dan sambungan kod lebih mudah dan fleksibel. Artikel ini akan memperkenalkan secara terperinci fungsi dan penggunaan kata kunci extends. memanjang

Kata kunci bahasa Go ialah: kata kunci asas: const, func, type, var, if, else, for, return Kata kunci berkaitan jenis data: bool, string, int, float64, antara muka{}, map, slice kata kunci lain :break, teruskan, tangguh, pergi, pilih, julat
