无法将多个列表框项目传递给php

时间:2014-02-27 02:53:33

标签: php html listbox

我需要将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;

    }
    ?>

3 个答案:

答案 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"/>

see this phpfiddle it is working fine only

答案 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;
        }
    }
?>