您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)php實現(xiàn)按條件查詢的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
php按條件查詢的實現(xiàn)方法:首先調(diào)取之前封裝好的類;然后利用關(guān)鍵詞模糊查詢;接著創(chuàng)建表單,將數(shù)據(jù)提交到當(dāng)前頁面,提取關(guān)鍵字查詢;最后用PHP代碼遍歷表中元素,將關(guān)鍵字變?yōu)榧t色即可。
一、單條件查詢,就是只有一個條件的查詢:
1.首先調(diào)取之前封裝好的類,然后利用關(guān)鍵詞模糊查詢:
<?php //單查詢 require "DBDA.class.php";//調(diào)取封裝類 $db=new DBDA; $Sname="";//創(chuàng)建變量,為了后面可以讓Sname在表單中顯示 $sql="select * from t_student"; if(!empty($_POST["Sname"]))//確定是否存在數(shù)據(jù) { $Sname=$_POST["Sname"]; $sql="select * from t_student where Sname like '%{$Sname}%' ";//模糊查詢 } ?>
2、創(chuàng)建表單,將數(shù)據(jù)提交到當(dāng)前頁面,提取關(guān)鍵字查詢:
<form action="chaxun.php" method="post"><!--因為查詢數(shù)據(jù)在當(dāng)前頁面,所以提交到當(dāng)前頁面--> <div>姓名:<input type="text" name="Sname" value="<?php echo $Sname ?>" /> <input type="submit" value="查詢" /></div> </form><br /> <table width="100% " border="1" cellpadding="0" cellspacing="0"> <tr> <td>姓名</td> <td>性別</td> <td>班級</td> </tr>
3、遍歷表中元素,將關(guān)鍵字變?yōu)榧t色:
<?php $arr=$db->query($sql); foreach($arr as $v) { $str = str_replace($Sname,"<span style='color:red'>{$Sname}</span>",$v[1]);//用span標(biāo)簽使關(guān)鍵字變?yōu)榧t色, echo "<tr> <td>{$str}</td> <td>{$v[2]}</td> <td>{$v[4]}</td> </tr>"; } ?>
最終結(jié)果:
二、多條件查詢:
1、先做一個表單,并創(chuàng)建表格將表顯示出來:
<table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>代號</td> <td>名稱</td> <td>系列</td> <td>上市時間</td> <td>價格</td> </tr> </table>
2、調(diào)取封裝類,并創(chuàng)造相應(yīng)條件,并檢驗數(shù)據(jù)是否為空:
<?php require "DBDA.class.php"; $db=new DBDA();//1.如果沒有提交數(shù)據(jù),顯示所有//2.如果有提交數(shù)據(jù),根據(jù)關(guān)鍵字查詢顯示$name=""; $tj1=" 1=1 "; //第一個條件,對應(yīng)名稱,要用空格隔開$tj2=" 1=1 ";//第二個條件,對應(yīng)系列,要用空格隔開if(!empty($_POST["name"])) { $name = $_POST["name"]; $tj1 = " name like '%{$name}%' "; }if(!empty($_POST["brand"])) { $brand = $_POST["brand"]; $tj2 = " brand = '{$brand}' "; }//總條件$tj=" {$tj1}and{$tj2} "; $sql="select * from car where".$tj;?>
3、用php代碼遍歷數(shù)據(jù)庫的表,將關(guān)鍵字變?yōu)榧t色(php要嵌在table里):
<?php $arr = $db->query($sql);foreach($arr as $v) { $str = str_replace($name,"<span style='color:red'>{$name}</span>",$v[1]); echo "<tr> <td>{$v[0]}</td> <td>{$str}</td> <td>{$v[2]}</td> <td>{$v[3]}</td> <td>{$v[7]}</td> </tr>";}?>
最終結(jié)果為:
關(guān)于php實現(xiàn)按條件查詢的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。