我正在尝试从数据库加载实例,然后从中创建按钮,可以单击这些按钮以提交表单并添加单击任何按钮的名称$_SESSION['room']
。按钮显示正确,但isset()
功能未接收到正确的数据,因为单击按钮时没有输出。
<?php
if(isset($_GET['$room'])){
$_SESSION['room'] = $_GET['$room'];
echo $_SESSION['room'];
}
?>
<form method="get">
<?php
while($rooms > $count){
$room = mysqli_fetch_row($search_rooms)[0];
echo "<input type='submit' value='$room' name='$room'><br>";
$count = $count + 1;
};
?>
</form>
答案 0 :(得分:1)
name='$room'
这出现在引用"
个字符的字符串中,因此该变量将被插值。
这意味着您最终会看到类似以下内容的HTML:
name='a_room_name'>
...同时
isset($_GET['$room'])
...测试表单字段中提交的数据,名称以美元符号开头。它不是变量。您正在测试name='$room'>
的输入...您没有。
您需要为提交按钮使用固定名称。
name='room'
和isset($_GET['room'])
会很好。