PHP表單處理:表單資料查詢與篩選
以下是一個簡單的查詢與篩選表單的範例:
<form action="process.php" method="POST"> <label for="name">姓名:</label> <input type="text" id="name" name="name"> <label for="gender">性别:</label> <select id="gender" name="gender"> <option value="Male">男</option> <option value="Female">女</option> </select> <label for="age">年龄:</label> <input type="number" id="age" name="age"> <input type="submit" value="查询"> </form>
$name = $_POST['name']; $gender = $_POST['gender']; $age = $_POST['age'];
接下來,我們可以使用這些資料來查詢資料庫中的相關資訊。假設我們有一個學生表,包含姓名、性別、年齡等字段,下面是一個簡單的資料庫查詢範例:
// 连接数据库 $conn = mysqli_connect('localhost', 'username', 'password', 'database'); // 查询语句 $sql = "SELECT * FROM students WHERE 1=1"; // 添加查询条件 if (!empty($name)) { $sql .= " AND name LIKE '%$name%'"; } if (!empty($gender)) { $sql .= " AND gender='$gender'"; } if (!empty($age)) { $sql .= " AND age=$age"; } // 执行查询 $result = mysqli_query($conn, $sql); // 处理查询结果 if (mysqli_num_rows($result) > 0) { while ($row = mysqli_fetch_assoc($result)) { // 处理每一行数据 } } else { echo "没有找到相关记录"; } // 关闭数据库连接 mysqli_close($conn);
在上面的範例中,我們透過拼接SQL語句的方式實現了動態查詢。首先,我們定義一個初始的SELECT語句,然後根據表單提交的查詢條件,動態加入WHERE子句。
最後,我們使用mysqli_query函數執行查詢,並使用mysqli_num_rows函數來取得查詢結果的行數。如果有查詢結果,則可以使用mysqli_fetch_assoc函數逐行處理資料。
if (mysqli_num_rows($result) > 0) { echo "<table>"; echo "<tr><th>姓名</th><th>性别</th><th>年龄</th></tr>"; while ($row = mysqli_fetch_assoc($result)) { echo "<tr>"; echo "<td>".$row['name']."</td>"; echo "<td>".$row['gender']."</td>"; echo "<td>".$row['age']."</td>"; echo "</tr>"; } echo "</table>"; } else { echo "没有找到相关记录"; }
在上述程式碼中,我們透過循環遍歷查詢結果的每一筆記錄,並將其以表格的形式輸出。
事實上,表單處理和資料查詢是Web開發中常見的功能,本文只是提供了一個簡單的範例。在實際開發中,根據具體需求的複雜程度,可能需要更多的程式碼和技術。但是,透過掌握基本的處理流程和相關技術,可以為後續開發提供良好的基礎。
以上是PHP表單處理:表單資料查詢與篩選的詳細內容。更多資訊請關注PHP中文網其他相關文章!