Php PDO Mysql选定值下拉列表

Php PDO Mysql选定值下拉列表,php,mysql,Php,Mysql,我正在尝试制作一个更新表单。在这个更新表单中,是一个下拉列表,其中填充了mysql表中的值。现在我得到了期望值,但无法得到要选择的正确值(属于ID的值) 例如: co_id=联系人的记录,即我正在更新的记录 co_cs_id=属于该co_id的公司的id,这应该是所选的值 我得到了以下代码: echo "<td style width='30%'><select type='text' data-live-search='true' required data-live-sea

我正在尝试制作一个更新表单。在这个更新表单中,是一个下拉列表,其中填充了mysql表中的值。现在我得到了期望值,但无法得到要选择的正确值(属于ID的值)

例如:

  • co_id=联系人的记录,即我正在更新的记录
  • co_cs_id=属于该co_id的公司的id,这应该是所选的值
  • 我得到了以下代码:

    echo "<td style width='30%'><select type='text' data-live-search='true' required data-live-search-style='startsWith' class='selectpicker form-control' name='co_cs_id' value='$contacts->co_cs_id'>";
    $query = "  SELECT cs_id, cs_name
                FROM customers_suppliers            
                WHERE cs_status=0 
                ORDER BY cs_name";
    
    
                $stmt = $db->prepare($query);
                $stmt->execute();
    
    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)){
        extract($row);
        echo "<option value='{$cs_id}'>{$cs_name}</option>";
    }
    echo "</select>";
    
    echo”“;
    $query=“选择cs\U id、cs\U名称
    来自客户和供应商
    其中cs_status=0
    按cs_名称订购”;
    $stmt=$db->prepare($query);
    $stmt->execute();
    而($row=$stmt->fetch(PDO::fetch\U ASSOC)){
    摘录(行);
    回显“{$cs_name}”;
    }
    回声“;
    
    这是一个示例记录:


    您可以看到公司值不同。

    您可以使用
    selected
    属性

    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)){
        extract($row);
        if($cs_id == $co_cs_id) {
            echo "<option value='{$cs_id}' selected>{$cs_name}</option>";
        } else {
            echo "<option value='{$cs_id}'>{$cs_name}</option>";
        } 
    }
    
    while($row=$stmt->fetch(PDO::fetch_ASSOC)){
    摘录(行);
    如果($cs\u id=$co\u cs\u id){
    回显“{$cs_name}”;
    }否则{
    回显“{$cs_name}”;
    } 
    }
    
    还是一行

    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)){
        extract($row);
        echo "<option value='{$cs_id}'".(($cs_id == $co_cs_id) ? "selected" : "").">{$cs_name}</option>";
    }
    
    while($row=$stmt->fetch(PDO::fetch_ASSOC)){
    摘录(行);
    回显“{$cs_name}”;
    }
    
    没有值属性。但我不确定这是否会把事情搞砸。生成的HTML是什么样子的?您是否尝试过从select元素中删除该值。到目前为止,我看不到任何导致此错误的原因。页面如下所示:问题是,现在选择了test1,而根据此记录,它应该是test 3。@C.Jacobs我无法查看该链接。此链接如何?