如何从mysql数据库填充下拉列表并且不应该重复值

Posted

技术标签:

【中文标题】如何从mysql数据库填充下拉列表并且不应该重复值【英文标题】:how to populate drop down list from mysql database and should don't repeat values 【发布时间】:2019-08-05 04:01:30 【问题描述】:

我从 mysql 数据库填充下拉列表,它不应该包含重复的值。

我尝试使用 distinct 关键字但未能使用。我应该使用什么逻辑?

示例: 我在下拉选项中有两个学士学位和两个机械学士学位,我想在其他课程中显示一个学士学位和一个下拉列表。

我的 codeigniter 查询无法正常工作。下拉选项是动态选择的。如何解决?

这是我的控制器

$courserecord = $this->front->get_data_wheree('tbl_course_offered.course_offrd_name');
$data['collg_id'] = json_decode(json_encode($courserecord), True);
if (empty($data['collg_id'])) 
  $data['collg_id'] = json_decode(json_encode($courserecord), True);
 else 
  $courserecord = $this->front->get_data_wheree('tbl_course_offered.course_offrd_name');
  $data['collg_id'] = json_decode(json_encode($courserecord), True);

这是我的视图文件

<div class="col-md-2">
  <div class="form-group">
    <div class="col-md-12">
      <select name="course_offrd_name" id="course_offrd_name" onchange='' class="form-control ui fluid dropdown">
        <option value="">Select Course</option>
        <?php foreach($coursedata as $val)
      
      ?>
        <option value="<?php echo $val->course_id?>" <?php if(isset($course_offrd_name))  if($course_offrd_name==$val->course_id)  ?>selected
          <?php  ?> >
          <?php echo $val->course_id;?>

        </option>
        <?php ?>
      </select>
    </div>
  </div>
</div>

这是我的模型文件

function get_data_wheree($table,$where)

  return $this->db->distinct($table,$where)->result();

这是表格文件或结构

这是我的前端下拉选项

【问题讨论】:

在您的 SQL 查询中,在 id 字段之前添加 DISTINCT @Pupil 如何在 id 字段前添加 DISTINCT。 ***.com/a/656710/1841760 @Pupil 如何在我的代码中做到这一点......我的代码哪里错了 【参考方案1】:

您可以在 cat_id 上使用 group by 来获取唯一值。根据您的附件,cat_id 也会重复,并且对于相应的 course_id 也是相同的。

function get_data_wheree($table,$where)

  $this->db->group_by("cat_id");
  return $this->db->get($table,$where)->result();

【讨论】:

调用未定义的方法 CI_DB_mysqli_result::group_by() @DiwakarYadav 我编辑了我的查询。请检查一下

以上是关于如何从mysql数据库填充下拉列表并且不应该重复值的主要内容,如果未能解决你的问题,请参考以下文章

如何通过从另一个下拉列表中选择值来填充下拉列表?

Excel Add-On 显示来自(Mysql 数据库)的数据

如何根据使用 jQuery/AJAX 和 PHP/MySQL 选择的第一个下拉列表填充第二个下拉列表?

如何使用基于另一个下拉值填充下拉列表

html向下钻取下拉选定值未插入MYSQL

使用In-cell下拉列表中的值自动填充单元格 - VBA