Php 使用一个提交按钮处理多个选择选项
我使用mysql将数据插入下拉菜单。我有多个下拉菜单-每个下拉菜单都有名称Php 使用一个提交按钮处理多个选择选项,php,html,mysql,Php,Html,Mysql,我使用mysql将数据插入下拉菜单。我有多个下拉菜单-每个下拉菜单都有名称id-我从数据库($stmt)获取的信息。我通过另一个mysql查询获得的每个下拉菜单的内容$stmt2。 我需要确定在每个下拉菜单中设置了哪个id。这些值我以后需要使用。这是我的解决方案,它不起作用。它不会打印任何东西 echo "<table class ='centered_div' border='1px solid black'>"; echo "<tr><td>ID</
id
-我从数据库($stmt
)获取的信息。我通过另一个mysql查询获得的每个下拉菜单的内容$stmt2
。
我需要确定在每个下拉菜单中设置了哪个id
。这些值我以后需要使用。这是我的解决方案,它不起作用。它不会打印任何东西
echo "<table class ='centered_div' border='1px solid black'>";
echo "<tr><td>ID</td><td>food</td><td>g</td></tr>";
while($rows = $stmt->fetch()){
echo "<tr><td>" . $rows['id'] . "</td><td>".$rows['food'];
echo "<form action='upravit_plan.php' method='post'><select name =".$rows['id']." > ";
$stmt2 = $db->query($q2);
echo "<option value ='nothing'> choose one </option>";
while($rows2 = $stmt2->fetch())
{
echo '<option value = '.$rows2['id'].'>'.$rows2['food'].'</option>';
}
echo "</select></form>";
echo "</td> <td>" . $rows['g'] . "g</td></tr><br> ";
};
echo "<tr><td colspan='3'><form action='upravit_plan.php' method='post'><input name = 'go' type='submit' value='OK'/></form></td></tr>";
echo "</table>";
if(isset($_POST['go']))
{
$stmt = $db->query($q);
while ($rows = $stmt->fetch())
{
echo $_POST[$rows['id']]; // trying to print values
}
}
echo”“;
回声“IDfoodg”;
而($rows=$stmt->fetch()){
回显“$rows['id']”..$rows['food'];
回声“;
$stmt2=$db->query($q2);
呼应“选择一个”;
而($rows2=$stmt2->fetch())
{
回声“.$rows2[“食物]”;
}
回声“;
回显“.$rows['g']”g
“;
};
回声“;
回声“;
如果(isset($_POST['go']))
{
$stmt=$db->query($q);
而($rows=$stmt->fetch())
{
echo$_POST[$rows['id']];//正在尝试打印值
}
}
您需要将所有元素都放在一个表单中。您还应该尝试将PHP与HTML分开,这可能是一个好的开始,但仍然需要类似的东西。特别注意和的使用
身份证件
食物
G
G
我怀疑“它不会打印出任何内容”。您将
元素放在单独的表单中,然后将提交按钮放在单独的表单中。它们都需要以一种形式出现。@miken32如果它们以一种形式出现——以一个id
命名——我将能够识别哪个值被设置为下拉菜单。不知道你是否理解我的问题。
<form action='upravit_plan.php' method='post'>
<table class ='centered_div' border='1px solid black'>
<tr>
<th>ID</th>
<th>food</th>
<th>g</th>
</tr>
<?php while($rows = $stmt->fetch()):?>
<tr>
<td><?=$rows['id']?></td>
<td>
<?=$rows['food']?>
<select name="<?=$rows['id']?>">
<option value ='nothing'> choose one </option>
<?php while($rows2 = $stmt2->fetch()):?>
<option value="<?=$rows2['id']?>"><?=$rows2['food']?></option>
<?php endwhile;?>
</select>
</td>
<td><?=$rows['g']?>g</td>
</tr>
<?php endwhile;?>
<tr>
<td colspan='3'><input name='go' type='submit' value='OK'/></td>
</tr>
</table>
</form>
<?php
if(isset($_POST['go']))
{
$stmt = $db->query($q);
while ($rows = $stmt->fetch())
{
echo $_POST[$rows['id']]; // trying to print values
}
}
?>