我需要将listbox项的多个元素存储到数据库中,但我无法将元素从html表单传递给php。请帮忙
<html>
<head>
</head>
<body>
<form method="post" action="Save.php">
<select name="country[]" multiple="multiple">
<option value="Belgium">Belgium</option>
<option value="France">France</option>
<option value="Germany">Germany</option>
<option value="Holland">Holland</option>
<option value="Greece">Greece</option>
</select>
<input type="Submit" value="Submit" />
</form>
</body>
</html>
<?php
if(isset($_POST['submit']))
{
$con = $_POST['country'];
foreach($con as $selected)
{
echo 'selected'.$selected;
}
?>
答案 0 :(得分:1)
此代码将解决您的问题
<?php
if(isset($_POST['submit']))
{
if (isset($_POST['country'])){
$con = $_POST['country'];
foreach($con as $selected)
echo 'selected'.$selected;
}
}
?>
<html>
<head>
</head>
<body>
<form method="post" action="Save.php">
<select name="country[]" multiple="multiple">
<option value="Belgium">Belgium</option>
<option value="France">France</option>
<option value="Germany">Germany</option>
<option value="Holland">Holland</option>
<option value="Greece">Greece</option>
</select>
<input type="Submit" value="Submit" name="submit" />
</form>
</body>
</html>
答案 1 :(得分:0)
//the post request takes the Tag NAMES only
<input type="Submit" value="Submit" name="submit"/>
答案 2 :(得分:0)
您的POST
索引submit
因此isset()
失败。在代码示例中,您还缺少if
语句的右括号。我已修改您的示例,以便$_POST['country']
使用isset()
。就返回选定的值而言,这一点对我有用:
<html>
<head>
</head>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<select name="country[]" multiple="multiple">
<option value="Belgium">Belgium</option>
<option value="France">France</option>
<option value="Germany">Germany</option>
<option value="Holland">Holland</option>
<option value="Greece">Greece</option>
</select>
<input type="Submit" value="Submit" />
</form>
</body>
</html>
<?php
if(isset($_POST['country']))
{
$con = $_POST['country'];
foreach($con as $selected)
{
echo 'selected'.$selected;
}
}
?>