javascript - Codeigniter - 将教师仅限于他们所教的科目
问题描述
我有一个表格,可以让老师给他们的学生寄作业。对于每位教师来说,仅限于他们所教的课程和科目是至关重要的。
但是,当老师想要提交或搜索作业时,他们可以查看该课程的所有科目。就隐私而言,这确实是有问题的客栈。曾有老师不小心删除其他老师的作业的案例。
我想通过允许教师只查看他们所教的科目来防止这一切。
看法
<div class="col-sm-4">
<div class="form-group">
<label for="pwd"><?php echo $this->lang->line('subject') ?></label><small class="req"> *</small>
<select class="form-control" name="modal_subject_id" id="modal_subject_id">
<option value=""><?php echo $this->lang->line('select') ?></option>
</select>
<span id="name_add_error" class="text-danger"><?php echo form_error('modal_subject_id'); ?></span>
</div>
</div>
我认为这是脚本
$(document).ready(function (e) {
getSectionByClass("<?php echo $class_id ?>", "<?php echo $section_id ?>", 'secid');
getSubjectGroup("<?php echo $class_id ?>", "<?php echo $section_id ?>", "<?php echo $subject_group_id ?>", 'subject_group_id')
getsubjectBySubjectGroup("<?php echo $class_id ?>", "<?php echo $section_id ?>", "<?php echo $subject_group_id ?>", "<?php echo $subject_id ?>", 'subid');
修改的
教师与他们在 subject_timetable 中教授的科目相关联
主题时间表
CREATE TABLE `subject_timetable` (
`id` int(11) NOT NULL,
`day` varchar(20) CHARACTER SET latin1 DEFAULT NULL,
`class_id` int(11) DEFAULT NULL,
`section_id` int(11) DEFAULT NULL,
`subject_group_id` int(11) DEFAULT NULL,
`subject_group_subject_id` int(11) DEFAULT NULL,
`staff_id` int(11) DEFAULT NULL,
`time_from` varchar(20) CHARACTER SET latin1 DEFAULT NULL,
`time_to` varchar(20) CHARACTER SET latin1 DEFAULT NULL,
`room_no` varchar(20) CHARACTER SET latin1 DEFAULT NULL,
`session_id` int(11) DEFAULT NULL,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
模型
public function get($id)
{
$this->db->select('subject_timetable.*,subject_group_subjects.subject_id,subjects.name,subjects.code,subjects.type');
$this->db->from('subject_timetable');
$this->db->join('subject_group_subjects', 'subject_timetable.subject_group_subject_id = subject_group_subjects.id');
$this->db->join('staff', 'staff.id = subject_timetable.staff_id');
$this->db->join('subjects', 'subjects.id = subject_group_subjects.subject_id');
$this->db->where('subject_timetable.id', $id);
$query = $this->db->get();
return $query->row();
}
解决方案
为此,您必须在选择每个选择选项后使用所选值作为您的条件进行 ajax 调用。
推荐阅读
- tcl - 通信两个 IVR 应用程序
- python - ImportError:从 C++ 运行 python 文件时无法在 Visual Studio 调试控制台中导入名称“etree”
- javascript - 由于 .classList.toggle,按钮的行为很奇怪
- javascript - 持续检测鼠标移动 JavaScript
- azure-data-lake - Azure Synapse Serverless - SQL 查询为每个文件返回目录中的行
- tfs - TFS 代码审查自动设置了 Closed By 字段,这阻止我访问代码审查
- excel-formula - 提取以 " 引号开头的单词
- intellij-idea - IDEA 无法识别 typegoose 类型的模型
- python - Python Altair - 条形图 - 比例绑定
- apache-spark - Spark Structured Streaming 自定义分区目录名