PHP Crud更新选择显示重复

时间:2015-09-05 08:44:13

标签: php mysql crud

我有一个PHP Crud系统。创建新记录时的一个选项是具有两个选项的选择框。 Netman和管理员。当我更新记录时,我看到了该选项,但它重复了,它有另一个选项, 像这样Duplicate selection。我无法看到如何从数据库和其他选项中显示记录。这可能吗?

    <?php
    include "config.php";
    include "header.php";
    if(isset($_GET['u'])):
    if(isset($_POST['bts'])):
    $stmt = $mysqli->prepare("UPDATE passwordtable SET school=?,usertype=?, password=?, notes=? WHERE id_personal=?");
    $stmt->bind_param('sssss', $nm, $gd, $tl, $ar, $id);

    $nm = $_POST['nm'];
    $gd = $_POST['gd'];
    $tl = $_POST['tl'];
    $ar = $_POST['ar'];
    $id = $_POST['id'];

    if($stmt->execute()):
    echo "<script>location.href='index.php'</script>";
    else:
    echo "<script>alert('".$stmt->error."')</script>";
    endif;
    endif;
    $res = $mysqli->query("SELECT * FROM passwordtable WHERE id_personal=".$_GET['u']);
    $row = $res->fetch_assoc();
    ?>

选择框代码我们

    <label for="gd">User Type</label>
    <select class="form-control" id="gd" name="gd">
    <option><?php echo $row['usertype'] ?></option>
    <option>Administrator</option>
    <option>NetMan</option>
    </select>

1 个答案:

答案 0 :(得分:1)

如果您仍未找到答案,请查看以下代码

 <?php
    $usertypes = array('Administrator' => 'Administrator', 'NetMan' => 'NetMan');
    $selcted_usertype = !empty($row['usertype']) ? $row['usertype'] : "";
    ?>
    <label for="gd">User Type</label>
    <select class="form-control" id="gd" name="gd">
        <?php
        foreach ($usertypes as $user_type_val => $usertype_txt) {
            $selected = ($user_type_val == $selcted_usertype) ? "selected='selected'" : "";
            ?>
            <option <?php echo $selected; ?> value="<?php echo $user_type_val; ?>"><?php echo $usertype_txt; ?></option>
        <?php }
        ?>

    </select>

您需要为选项赋值属性。