我在表单上有两个下拉/选择输入, 房间类型 和 访客数量 它们连接到mysql。
如何使 来宾数 的值自动更改为 房间类型 <所连接的数据/强>
例如, 房间类型A 最多只能有 2位客人 ,并且在mysql上有房间类型的桌子,有房间数量和客人数限制。
如何回应 来宾 限制 来宾 输入表格?
这是 ROOM TYPE 代码:
<h5>Room Type</h5>
<select id="category" name="category" required="">
<?php
include 'connect.php';
$room= "SELECT * FROM roomtype";
$resroom = $conn->query($room);
while($roomtype = $resroom->fetch_assoc()){
?>
<option value="<?php echo $roomtype['roomtype'];?>" ><?php echo $roomtype['roomtype'];?></option>
<?php
$max = $roomtype['guests'];
}?>
</select>
这是 来宾人数 代码:
<h5>Number of Guests *</h5>
<select id="category1" name="guests" required="">
<?php
include 'connect.php';
$inc = 1;
if(isset($_POST))
{
$category = $_POST['category'];
}
$guest = "SELECT * FROM roomtype WHERE roomtype = $category";
$g = $conn->query($guest);
while($guest1 = $g->fetch_assoc()){
while ($guest1 ['guests'] < 0){
?>
<option value="1"><?php echo $inc; $inc = $inc + 1; }}?></option>
</select>
我的 连接/数据库 代码:
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "booking";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
?>
roomtypetable有三列 id , roomtype ,来宾。
答案 0 :(得分:0)
你需要在JQuery而不是php的帮助下实现同样的目标。因为此操作将在客户端进行。
你可以做的是在选择名为value的选项中添加一个comman attr,其中包含你将从mysql中获取的id。
除此之外,您需要处理onselect事件,您需要更改numberofguest中的值。
了解更多详情:how to change a selections options based on another select option selected?
答案 1 :(得分:0)
首先,您必须选择每个房间的客人数量的房间数据..
现在像这样编码
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h5>Room Type</h5>
<select id="category" name="category" required="">
<option value="0">Room Number</option>
<?php
include 'connect.php';
$room= "SELECT * FROM roomtype";
$resroom = $conn->query($room);
while($roomtype = $resroom->fetch_assoc())echo '
<option value="'.$roomtype['roomtype'].'" data-limit="'.$roomtype['guests'].'" >'.$roomtype['roomtype'].'</option>';
?>
</select><br>
<h5>Number of Guests</h5>
<select id="guests" name="guest"><option value="">Number of Guests</option></select>
<强>的jQuery 强>
<script>
$('#category').change(function(e) {
var limit = parseInt($(this).find(':selected').data('limit')); //get data-limit of selected option
var html = '<option value="">Number of Guests</option>';
for(i=1;i<=limit;i++)html = html+'<option value="'+i+'">'+i+' Guest(s)</option>'; //this loop run from 1 to max numbers of guest
$('#guests').html(html);
});
</script>