在mysqli生成的下拉框

时间:2015-07-10 23:45:22

标签: php html mysqli

使用mysqli代码,我已经能够使用mysql数据库中的数据创建一个下拉框。 sql语句从数据库中选择userId,f_Name和l_Name。此列表是表单的一部分,当用户选择名称时,我想通过$ _Post方法仅传递userId。怎么办?再次感谢你的帮助。

<select name="names">
    <option value = "">---Select---</option>
    <?php
        $queryusers = 'SELECT userID, f_Name, l_Name FROM users';
        $db = mysqli_query($mysqli, $queryusers);
        while ( $names=mysqli_fetch_assoc($db)) {
           echo "<option value='{".$names['f_Name']."}' . 
                {".$names['l_Name']."}'>".$names['f_Name']. " " .
                $names['l_Name']."</option>";
        }
    ?>
</select>

1 个答案:

答案 0 :(得分:0)

做这样的事情:

echo '<option value="'.$names['userID'].'" >'.$names['f_Name'].' '. $names['last_nm'] . '</option>';

成为选项的值,即提交的内容。

修改

这是您使用此

的代码
<select name="names">
    <option value = "">---Select---</option>
    <?php
        $queryusers = 'SELECT userID, f_Name, l_Name FROM users';
        $db = mysqli_query($mysqli, $queryusers);
        while ( $names=mysqli_fetch_assoc($db)) {
           echo '<option value="'.$names['userID'].
            '" >'.$names['f_Name'].' '. $names['last_nm'] . '</option>';
        }
    ?>
</select>

显示mysqli预备语句示例的另一个编辑

假设您将这些相同的值插入表中,您只需这样做:

你的mysqli连接会是这样的:

$conn = new mysqli($host, $username, $password, $dbname)

然后你就像这样插入(假设userID是一个自动增量键)

$stmt = $dbc->prepare("insert into users (userID, f_name, L_name)
                       values (NULL, ?, ?)");
$stmt->bind_param("ss", $names['f_name'],$names['l_name'])
$stmt->execute();
$stmt->close();

"ss"只意味着两个变量都是字符串;如果它们是整数,则您使用i。如果您正在进行更新,则只需将您在插入中使用的任何变量替换为?个占位符。它的工作方式相同。

这是手册:mysqli prepared statements