我是PHP的新手,因此我还没能弄清楚如何根据我们选择的复选框运行不同的代码片段。所以我恳请你帮忙。
在我的第一个页面中,我有两个复选框,它们是从mySQL数据库中填充的值。这两个值取自一个名为"校园"的数据库表。这是第一页的代码:
<html>
<body>
<form action="functions_two.php" method="POST">
<div id="collegelane">College Lane campus:</div>
<?php
// to connect to database
require("user_connection.php");
$q = mysqli_query($connect, "SELECT * FROM `campus`");
while ($line = mysqli_fetch_assoc($q)) {
echo '<input type="checkbox" name="car"
value="'.$line['room'].'">'.$line['room'].'</br>';
}
?>
</br>
</br>
<input type="submit" name="next" Value="next"/>
</form>
</body>
</html>
这是上面代码的输出https://i.stack.imgur.com/Rlj1n.png
现在,正如您所看到的,它有两个复选框值"C450"answers"E300"。当我选择这两个值中的任何一个时,它会将我带到第二页,在那里该值会被回显。然而,我想让它根据我所做的选择来回应另一段代码。
假设如果我选择"C450",我希望它运行下面的代码,这将使用我已经创建的名为C450的数据库表中的值创建另一个复选框:
<form action="final_page.php" method="POST">
<?php
// to connect to database
require("user_connection.php");
// checkbox populated with values from database
$r = mysqli_query($connect, "SELECT * FROM `C450`");
while ($line = mysqli_fetch_assoc($r)) {
echo '<input type="checkbox" name="bike"
value="'.$line['computer_no'].'"><label>'.$line['computer_no'].'</label></br>';
}
?>
</br>
<input type="submit" name="next" Value="next"/>
</form>
</body>
</html>
然而,如果我选择"E300",我希望它运行下面的代码,这也会创建复选框,其值来自名为E300的数据库表。
<form action="final_page.php" method="POST">
<?php
// to connect to database
require("user_connection.php");
// checkbox populated with values from database
$s = mysqli_query($connect, "SELECT * FROM `E300`");
while ($line = mysqli_fetch_assoc($s)) {
echo '<input type="checkbox" name="bike"
value="'.$line['computer_no'].'"><label>'.$line['computer_no'].'</label></br>';
}
?>
</br>
<input type="submit" name="next" Value="next"/>
</form>
</body>
</html>
在第二页中使用以下if条件
// checks for the post method
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$checked_value = $_POST['car']; // replace car to what ever it is in html form
}
// checkbox populated with values from database
$s = mysqli_query($connect, "SELECT * FROM {$checked_value}");