【发布时间】:2020-09-02 13:44:38
【问题描述】:
我有一个表格,允许教师向学生发送作业。每位教师都必须仅限于他们所教的课程和科目。
但是,当教师想要提交或搜索家庭作业时,他们可以查看该课程的所有科目。就隐私而言,这确实是有问题的客栈。曾有老师不小心删除其他老师作业的案例。
我想通过允许教师只查看他们所教的科目来防止这一切。
查看
<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 中教授的科目相关联
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();
}
【问题讨论】:
-
分享你查询db的相关表详细信息和代码
-
至少让我们看看作业表
-
修改了帖子
-
在
session中存储班级和学科教师教授的课程或在此URL上获取该数据,然后使用ajax显示带有class id和subject id的查询数据.
标签: javascript php html codeigniter