Isset 以 html 形式使用 php 变量
Isset to use php variable in html form
我正在尝试从数据库加载实例,然后从中创建按钮,可以单击这些按钮提交表单并将单击的任何按钮的名称添加到 $_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>
name='$room'
这出现在用 "
个字符引用的字符串中,因此变量将被插入。
这意味着您最终会得到 HTML,类似于:
name='a_room_name'>
同时……
isset($_GET['$room'])
… 测试从名称以美元符号开头的表单字段提交的数据。它不是一个变量。您正在测试 name='$room'>
的输入……您没有。
您需要为提交按钮使用固定名称。
name='room'
和 isset($_GET['room'])
都可以。
我正在尝试从数据库加载实例,然后从中创建按钮,可以单击这些按钮提交表单并将单击的任何按钮的名称添加到 $_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>
name='$room'
这出现在用 "
个字符引用的字符串中,因此变量将被插入。
这意味着您最终会得到 HTML,类似于:
name='a_room_name'>
同时……
isset($_GET['$room'])
… 测试从名称以美元符号开头的表单字段提交的数据。它不是一个变量。您正在测试 name='$room'>
的输入……您没有。
您需要为提交按钮使用固定名称。
name='room'
和 isset($_GET['room'])
都可以。