php - How to make if some condition, checkbox to be checked -



php - How to make if some condition, checkbox to be checked -

i have show students checkboxes , if definite teacher teaches these students, must ckeched. if these students not students, has not checked. have 2 queries copmare 2 values, in case when equal, students aren't checked in ckechboxes, written: checked="checked" > >. , how close checkbox, shown > > > before names of students.

my view is:

class="snippet-code-html lang-html prettyprint-override"><?php foreach($select_students $student) { ?> <tr><td class='col-md-2'> <input type="checkbox" name="student[]" value="<?php echo $student->user_id; ?>" <?php foreach($select_teachers_students $select) { echo $student->user_id == $select->student_id ? 'checked="checked"' : '' ; ?> > <?php } echo $student->username; ?> </td><td>

my model is:

class="snippet-code-html lang-html prettyprint-override">public function select_students() { $this->db->select('users.user_id, users.username, users.school_id, users.class, users.division, users.role_id, schools.school_name, schools.region,class_divisions.division'); $this->db->from('users'); $this->db->join('class_divisions','class_divisions.id=users.division','left'); $this->db->join('schools','schools.school_id=users.school_id','left'); $this->db->where('(users.deactivated_at = "0000-00-00 00:00:00" or users.deactivated_at null) , users.role_id = 1 '); $this->db->where('users.school_id',$this->uri->segment(4) ); $result=$this->db->get(); homecoming $result->result(); } public function edit_students() { $submit=$this->input->post('change'); $date = new datetime("now"); if(isset($submit)&&($submit=='Промени ученици')) { if($this->input->post('student')) { foreach($this->input->post('student') $student) { $data = array( 'student_id' => $student, // 'teacher_id' => $this->uri->segment(3), 'created_at' => $date->format('y-m-d h:i:s') ); $this->db->where('teacher_id',$this->uri->segment(3)); $this->db->update('teacher_student_conn', $data); if($this->db->affected_rows() > 0) { homecoming true; } homecoming false; } } } }

my controller is:

class="snippet-code-html lang-html prettyprint-override"> public function edit_students() { if($this->admin_model->edit_students()) { echo "tou changed teacher successfully!"; $teacher_id = $this->uri->segment(3); $school_id = $this->uri->segment(4); header('refresh: 2; url=/survey/index.php/admin/edit_students/'.$teacher_id .'/' .$school_id); } else { $data['dynamic_view'] = 'edit_students'; $data['select_students']=$this->admin_model->select_students(); $data['select_teachers_students']=$this->admin_model->select_teachers_students(); $data['teacher_name']=$this->admin_model->teacher_name(); $data['menu']=$this->menu_model->get_menu(); $this->load->view('templates/main',$data); } } edited model , is: class="snippet-code-html lang-html prettyprint-override">public function select_teachers_students() { $this->db->select('*'); $this->db->from('teacher_student_conn'); $this->db->where('teacher_student_conn.teacher_id',$this->uri->segment(3) ); $result=$this->db->get(); homecoming $result->result(); } public function edit_students() { $submit=$this->input->post('change'); $date = new datetime("now"); if(isset($submit)&&($submit=='Промени ученици')) { if($this->input->post('student')) { foreach($this->input->post('student') $student) { if($this->input->post('student')==$this->select_teachers_students()) { $data = array( 'student_id' => $student, 'created_at' => $date->format('y-m-d h:i:s') ); $this->db->where('teacher_id',$this->uri->segment(3)); $this->db->update('teacher_student_conn', $data); } else if($this->input->post('student')!=$this->select_teachers_students()) { $data = array( 'student_id' => $student, 'teacher_id' => $this->uri->segment(3), 'created_at' => $date->format('y-m-d h:i:s') ); $this->db->insert('teacher_student_conn', $data); } } if($this->db->affected_rows() > 0) { homecoming true; } homecoming false; } } }

but inserts rows have already. tried create check function select_teachers_students() , if there, don't want insert 1 time again - want update them. , how set value checkboxes when checked, insert value="<?php echo $student->user_id; ?>" when, checkbox not checked , force submit button, insert value='0'. if aren't there, want insert.

only 1 checked="checked" required each input element. then, first calculate if pupil checked, , later (when build output) utilize that.

<?php foreach ( $select_students $student ) { $checked = false; foreach ( $select_teachers_students $select ) { if ( $student->user_id == $select->student_id ) { $checked = true; break; } } printf( '<tr><td class="col-md-2">' . '<input type="checkbox" name="student[]" value="%s" %s />' . '</td><td>%s</td></tr>', $student->user_id, $checked ? 'checked="checked"' : '', $student->username ); } ?>

php codeigniter if-statement checkbox checked

Comments

Popular posts from this blog

java - How to set log4j.defaultInitOverride property to false in jboss server 6 -

c - GStreamer 1.0 1.4.5 RTSP Example Server sends 503 Service unavailable -

Using ajax with sonata admin list view pagination -