PHP表单和填充下拉列表问题

时间:2011-12-16 21:02:52

标签: php mysql

我正在尝试连接到MySQL并将数据填充到Dropdown。这是我的代码。下拉列表没有填充的一些原因。请建议。

这是代码。

<html>
<body>

<?php
$mysqli_connection = new mysqli($db_host, $db_username, $db_password, $db_database);
if (isset($_POST['Submit_1'])) {
    require 'submit.php';
    require 'validate.php';
    if ($form_errors = validate_form()) {
        show_form($form_errors);
    }
    else
    {
        form_submit_1();
    }
}
else
{
    show_form();
}
function show_form($errors = '')
{
    // were there any errors?  
    if ($errors) {
        //show errors
    }

    ?>
<form name="myForm" id="myForm" method="post">
    <?php
    $sql = "SELECT id, code FROM table1";
    $result11 = $mysqli_connection->query($sql);
    echo " <select name = \"state1\" id=\"state1\">";
    while ($row = $result11->fetch_assoc()) {
        echo "<option value = $row[id]>$row[code]</option>";
    }
    echo "</select>";
    ?>
</form>
    </body>
</html>
<?php
} // End of show_form()
?>

2 个答案:

答案 0 :(得分:4)

这部分:

echo "<option value = $row[id]>$row[code]</option>";

无效,应该是这样的:

echo "<option value=\"{$row['id']}\">{$row['code']}</option>";

答案 1 :(得分:0)

你必须从字符串中逃回PHP层。

echo "<option value=\"".$row['id']."\">".$row['code']."</option>";

这样你就可以将变量的PHP值与你正在创建的字符串元素连接起来。