Maison > Article > développement back-end > Comment implémenter une requête conditionnelle en php
Comment implémenter une requête conditionnelle en PHP : appelez d'abord la classe précédemment encapsulée ; puis utilisez une requête floue par mot-clé ; puis créez un formulaire, soumettez les données à la page actuelle, extrayez la requête par mot-clé et enfin utilisez le code PHP ; Parcourez les éléments du tableau et transformez les mots-clés en rouge.
Recommandé : "Tutoriel vidéo PHP"
1. La requête est une requête avec une seule condition :
1. Appelez d'abord la classe précédemment encapsulée, puis utilisez des mots-clés pour effectuer une requête floue :
<?php //单查询 require "DBDA.class.php";//调取封装类 $db=new DBDA; $Sname="";//创建变量,为了后面可以让Sname在表单中显示 $sql="select * from t_student"; if(!empty($_POST["Sname"]))//确定是否存在数据 { $Sname=$_POST["Sname"]; $sql="select * from t_student where Sname like '%{$Sname}%' ";//模糊查询 } ?>
2. Créez un formulaire, soumettez les données à la page actuelle et extrayez les requêtes de mots-clés :
<form action="chaxun.php" method="post"><!--因为查询数据在当前页面,所以提交到当前页面--> <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. Parcourez les éléments du tableau et transformez les mots-clés en rouge :
<?php $arr=$db->query($sql); foreach($arr as $v) { $str = str_replace($Sname,"<span style='color:red'>{$Sname}</span>",$v[1]);//用span标签使关键字变为红色, echo "<tr> <td>{$str}</td> <td>{$v[2]}</td> <td>{$v[4]}</td> </tr>"; } ?>
Résultat final :
2. Requête multi-conditions :
1. Créez d'abord un formulaire et créez un tableau pour afficher le tableau :
<table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>代号</td> <td>名称</td> <td>系列</td> <td>上市时间</td> <td>价格</td> </tr> </table>
2. Appelez la classe d'encapsulation, créez les conditions correspondantes et vérifiez si les données. est vide :
<?php require "DBDA.class.php"; $db=new DBDA();//1.如果没有提交数据,显示所有//2.如果有提交数据,根据关键字查询显示$name=""; $tj1=" 1=1 "; //第一个条件,对应名称,要用空格隔开$tj2=" 1=1 ";//第二个条件,对应系列,要用空格隔开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. Utilisez le code PHP pour parcourir la table de la base de données et transformer les mots-clés en rouge (php doit être intégré dans la 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>";}?>
Le résultat final est :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!