使用select表单可以实现根据特定条件输出特定行的功能。下面是一个示例代码:
<!DOCTYPE html>
<html>
<head>
<title>Select表单输出特定行</title>
</head>
<body>
<form action="" method="post">
<label for="condition">选择条件:</label>
<select name="condition" id="condition">
<option value="name">按姓名</option>
<option value="age">按年龄</option>
<option value="gender">按性别</option>
</select>
<br><br>
<input type="submit" value="查询">
</form>
<?php
// 假设有一个名为"users"的数据库表,包含字段:id, name, age, gender
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
// 创建数据库连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 处理表单提交
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$condition = $_POST["condition"];
// 构建SQL查询语句
$sql = "SELECT * FROM users WHERE $condition = ?";
// 使用预处理语句防止SQL注入攻击
$stmt = $conn->prepare($sql);
$stmt->bind_param("s", $value);
// 根据选择的条件设置查询参数
if ($condition == "name") {
$value = "John";
} elseif ($condition == "age") {
$value = 25;
} elseif ($condition == "gender") {
$value = "Male";
}
// 执行查询
$stmt->execute();
$result = $stmt->get_result();
// 输出查询结果
if ($result->num_rows > 0) {
echo "<table>";
echo "<tr><th>ID</th><th>Name</th><th>Age</th><th>Gender</th></tr>";
while ($row = $result->fetch_assoc()) {
echo "<tr><td>".$row["id"]."</td><td>".$row["name"]."</td><td>".$row["age"]."</td><td>".$row["gender"]."</td></tr>";
}
echo "</table>";
} else {
echo "没有匹配的行。";
}
// 关闭查询和数据库连接
$stmt->close();
$conn->close();
}
?>
</body>
</html>
上述代码实现了一个简单的表单,用户可以选择不同的条件(姓名、年龄、性别),提交表单后,根据选择的条件从数据库中查询匹配的行,并将结果以表格形式输出。
请注意,上述代码中的数据库连接信息($servername、$username、$password、$dbname)需要根据实际情况进行修改。此外,还需要根据实际的数据库表结构和字段名进行相应的调整。
推荐的腾讯云相关产品:腾讯云数据库MySQL、腾讯云云服务器CVM。
腾讯云数据库MySQL产品介绍链接地址:https://cloud.tencent.com/product/cdb
腾讯云云服务器CVM产品介绍链接地址:https://cloud.tencent.com/product/cvm
领取专属 10元无门槛券
手把手带您无忧上云