【问题标题】:Get selected select option form database that have multiple select value Codeigniter获取具有多个选择值 Codeigniter 的选定选择选项表单数据库
【发布时间】:2017-10-24 08:56:03
【问题描述】:

这是我的表,你可以从我下面的表中看到,在 1 column 我们可以输入 2 values,我的问题是如何获取该值并将其放入正确的 select option

 No  |  Course_Code  | Course_Score |
  1  |  CC001,CC002  |     A, B     |
  2  |  CC003,       |     C,       | 

这是我的选择选项,你可以看到我有 4 个不同的选择,或者你称之为下拉菜单,当我点击 edit 按钮时,我想将第一个 course_code 放入正确的 @987654328 @select 并将course_score 放入正确的课程分数中,我该怎么做?

这就是我如何在我的表中放入 2 个值以及我的函数以获取 Course

public function save(id=null){
    'Course_code'=>$this->input->post("course_code1").', '.$this->input->post("course_code2"),
    'Course_Score'=>$this->input->post("course_score1").', '.$this->input->post("course_score2")
}
public function combo_course(){
    //GET ALL COURSE LIST
    $kodePro = $this->input->post('pro_id');//09
    $matkulCombo = $this->cms_matakuliah_m->getMatkul($this->session->userdata('kodePS'))->result();
    $list_combo = "";
    $list_combo .= "<option value='0'>Choose</option>";
    foreach($matkulCombo as $rows):
        $list_combo .="<option value='".$rows->Course_code."'>".$rows->Course_name."</option>";
    endforeach;
    echo $list_combo;
}

这是我的看法

<select  id="courseCode" class="form-control">
//I use AJAX to get the Course
</select>
<select disabled id="cScore" class="form-control">
   <option value="">Choose</option>
   <option value="A" <?php if(isset($matkul->Course_Score)) echo ($matkul->Course_Score == 1)?"selected":"" ?>>A</option>
   <option value="B" <?php if(isset($matkul->Course_Score)) echo ($matkul->Course_Score == 2)?"selected":"" ?>>B</option>
   <option value="C" <?php if(isset($matkul->Course_Score)) echo ($matkul->Course_Score == 3)?"selected":"" ?>>C</option>
   <option value="D" <?php if(isset($matkul->Course_Score)) echo ($matkul->Course_Score == 4)?"selected":"" ?>>D</option>
   <option value="E" <?php if(isset($matkul->Course_Score)) echo ($matkul->Course_Score == 5)?"selected":"" ?>>E</option>

【问题讨论】:

    标签: php jquery mysql codeigniter


    【解决方案1】:

    使用表单助手然后传递默认值

    echo form_dropdown('course_code1', $get_matkul, $currentValue, "id='courseCode' class='input-large'");
    
    • 第一个参数是元素的名称
    • 第二个是选项
    • 第三个是选定的值
    • 第四个是属性

    【讨论】:

    • 这次我不能用你的方式,因为我在做一些项目,所以当其他程序员的代码风格时我需要调整
    【解决方案2】:
    <?php 
    //    $get_matkul is course codes from database table. right?
    $get_scores = mysqli_fetch_array($result);//(a,b,c,d,...) from table
    $Course_codes = explode(',',$matkul->Course_code);
    $Course_Scores = explode(',',$matkul->Course_Score);?>
    <select  id="courseCode" class="form-control">
        <option value="">Choose</option>
        <?php foreach($get_matkul as $rows): 
            $selected = "";
            foreach($Course_codes as $Course_code){
                if($Course_code == $rows->Course_code){
                    $selected = "Selected";
                }
            }?>
        <option value="<?php echo $rows->Course_code?>" <?php echo $selected;?> >
            <?php echo $rows->Course_name ?>
        </option>
        <?php endforeach; ?>
    </select>
    <select disabled id="cScore" class="form-control">
        <option value="">Choose</option>
        <?php foreach($get_scores as $score): 
            $selected = "";
            foreach($Course_Scores as $Course_Score){
                if($Course_Score == $score->Course_Score){
                    $selected = "Selected";
                }
            }?>
        <option value="<?php echo $score->Course_Score;?>" <?php echo $selected ?>><?php echo $score->Course_Score;?></option>
        <?php endforeach; ?>
    </select>
    

    【讨论】:

    • 对不起,我只是在另一个项目上工作,你的代码给选择选项的 2 个相同的输出,所以它不起作用,也许你可以再看看我的问题,我做了调整
    • 是的,顺便说一句,我的course score(A,B,C,D,E) 下拉菜单不是来自数据库,而是手动填充
    • @romaltandel,我有疑问,如果我们只有一个下拉菜单,共四个怎么办?
    • @user9437856 获取选定值的通用代码。
    猜你喜欢
    • 1970-01-01
    • 2011-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-09
    • 2017-10-21
    • 1970-01-01
    相关资源
    最近更新 更多