您好,我想根据公司ID在下拉列表中显示课程列表。
我有8门课程。因为我有一个叫PEI Course(课程ID为33)的课程名称。当我尝试向用户分配课程时,该课程将仅针对公司PEI(公司ID为14)出现,并且我有另一个名为ppc course(课程ID为46)的课程。当我尝试将课程分配给用户时,该课程将仅对3家公司(即a(公司编号为19),b(公司编号为20),c(公司编号为26))显示。
我该怎么办,任何人都可以帮助我。
这是我的下拉代码:
<select name="courseid" id="courseid" class="form-control" required>
<?php
$sql = "select id,fullname from {course} where id NOT IN(1,33) ";
$courses = $DB->get_records_sql($sql);
?>
<option value="">Choose Course</option>
<?php
if (sizeof($courses)): foreach ($courses as $row):
$coursename = $row->fullname;
?>
<option value="<?php echo $row->id; ?>"><?php echo $row->fullname; ?></option>
<?php
endforeach;
endif;
?>
</select>
任何人都可以帮助我。
谢谢。
答案 0 :(得分:0)
我希望您按照我在评论部分中所述的方法走数据库路线。您可以在此期间尝试此操作:
$courses = [44, 52, 67];
$companyId = 14;
$pei = "<option value='33'>33</option>";
$ppc = "<option value='46'>46</option>";
?>
<select name="courseid" id="courseid" class="form-control" required>
<option value="">Choose Course</option>
<?php
if($companyId == 14){
echo $pei;
}elseif (in_array($companyId, array(19, 20, 26))) {
echo $ppc;
}
foreach ($courses as $row) {
?>
<option value="<?php echo $row; ?>"><?php echo $row; ?></option>
<?php
}
?>
</select>
Change the `$companyId` to 19 and test again.