“PHP查询及多条件查询教程” 在PHP中,数据库查询是Web开发中一个非常重要的部分。这里我们将探讨如何进行单条件查询以及如何扩展到多条件查询。本示例将使用MySQLi扩展,它是PHP中用于与MySQL数据库交互的一个组件。 首先,让我们来看一下单条件查询的基本步骤: 1. 创建数据展示表格:在HTML中,我们可以创建一个简单的表格来显示数据库中的数据。例如,我们有一个名为`contacts`的表,包含编号、姓名、电话和分组等字段。以下代码显示了如何在网页上展示这些数据: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <table border="1" cellspacing="0" cellpadding="0"> <tr> <td width="200">编号</td> <td width="200">姓名</td> <td width="200">电话</td> <td width="200">分组</td> </tr> <?php $db = new mysqli("localhost", "root", "12345678", "heiheihei"); $sql = "SELECT * FROM contacts"; $result = $db->query($sql); while ($row = $result->fetch_assoc()) { echo "<tr><td>" . $row['编号'] . "</td><td>" . $row['姓名'] . "</td><td>" . $row['电话'] . "</td><td>" . $row['分组'] . "</td></tr>"; } ?> </table> </body> </html> ``` 2. 添加搜索表单:为了允许用户根据特定条件查询数据,我们需要在页面上添加一个表单。用户可以输入名字来筛选结果: ```html <form action="shouye.php" method="post"> <div> 输入名字:<input type="text" name="name" /> <input type="submit" value="查询" /> </div> </form> ``` 3. 处理查询请求:在服务器端(如`shouye.php`),我们需要检查是否有POST数据,并根据情况进行查询。如果没有POST数据,显示所有记录;如果有,根据用户输入的名字进行查询: ```php <?php $db = new mysqli("localhost", "root", "12345678", "heiheihei"); if (!isset($_POST['name'])) { $sql = "SELECT * FROM contacts"; } else { $name = $_POST['name']; $sql = "SELECT * FROM contacts WHERE `姓名` LIKE '%$name%'"; } $result = $db->query($sql); // 显示结果 while ($row = $result->fetch_assoc()) { echo "<tr><td>" . $row['编号'] . "</td><td>" . $row['姓名'] . "</td><td>" . $row['电话'] . "</td><td>" . $row['分组'] . "</td></tr>"; } ?> ``` 在上述代码中,我们使用了`LIKE`操作符来实现模糊匹配,允许用户输入的部分名称出现在数据库记录的“姓名”字段中。 扩展到多条件查询,你可以增加更多的表单字段,并在SQL语句中添加相应的WHERE条件。例如,如果要根据电话和分组进行查询,可以在表单中添加相应字段,并在PHP代码中合并多个条件: ```php // ... if (isset($_POST['name']) && isset($_POST['phone']) && isset($_POST['group'])) { $name = $_POST['name']; $phone = $_POST['phone']; $group = $_POST['group']; $sql = "SELECT * FROM contacts WHERE `姓名` LIKE '%$name%' AND `电话` LIKE '%$phone%' AND `分组` LIKE '%$group%'"; } else { // ... } // ... ``` 这样,你就可以构建一个支持多条件查询的系统,满足用户根据不同标准筛选数据的需求。记住,为了防止SQL注入,你应该始终对用户输入进行适当的清理和转义,或者使用预处理语句。在这个例子中,我们没有演示这些安全措施,但在实际应用中,这是必须考虑的重要环节。
![](https://csdnimg.cn/release/download_crawler_static/13720289/bg1.jpg)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)