2013-09-14 3 views
2

В приведенном ниже коде есть 2 раскрывающихся списка текстовых и двух полей. Это обновление, когда я выбираю код курса из тематической таблицы курса, и он публикует значения в раскрывающемся списке тематического кода и обновляется до mysql, но когда я выбираю код курса из раскрывающегося списка, перекрывает таблицу. Моя идея состоит в том, чтобы заполнить значения в текстовом коде и обновить в mysql.опубликовать значение в раскрывающемся списке и обновить до mysql

Контроллер: Student_site

function studentupdate() 
    { 
     $data = array(); 
     $exam_name = $this->input->post('exam_name'); 
     $course_name = $this->input->post('course_name'); 
     if($query = $this->student_model->get_exam_data()) 
     { 
      $data['exam_data'] = $query; 
     } 
     if($query = $this->student_model->get_records($exam_name)) 
     { 
      $data['records'] = $query; 
     } 
       if($query = $this->student_model->get_course_code_records($exam_name)) 
     { 
      $data['course_records'] = $query; 
     } 
     if($query = $this->student_model->get_all_coursesubject_records()) 
     { 
      $data['all_coursesubject_records'] = $query; 
     } 
     $this->load->view('student_detail_view', $data); 
    } 

function manage_student() 
    { 
     $data['title']="Manage Student"; 
      //query model to get data results for form 
      $data=array(); 
      if($query=$this->student_model->get_student_records()){ 
      $data['records']=$query; 
      } 
      $editstudent = $this->input->post('editstudent'); 
      if($this->input->post('editstudent') != false){ 
      foreach($editstudent as $row_id) 
       { 
       $this->form_validation->set_rules("register_number_" . $row_id, "register_number", "required|min_length[2]"); 
       } 
      } 
      if ($this->form_validation->run() == FALSE){ 
      $data["message"]=""; 

       //$this->load->view("master_data/view_master_data_header",$data); 
       //$this->load->view("master_data/view_master_data_nav"); 
       $this->load->view("student_detail_view",$data); 
       //$this->load->view("master_data/view_master_data_footer"); 

      } else { 
       // single update - working 
       if($this->input->post('editstudent') != false) 
       { 
        foreach ($editstudent as $row_id) 
        { 
         $data = array( 
         'register_number' => $this->input->post('register_number_'.$row_id), 
         'name' => $this->input->post('name_'.$row_id), 
         'course_code' => $this->input->post('course_code_id'.$row_id), 
         'subject_code' => $this->input->post('subject_code_id'.$row_id), 

         ); 

         $this->student_model->update_student_records($row_id, $data); 
         redirect('student_site','refresh'); 
        } 
        $this->session->set_flashdata('dbaction', 'Selected Records have been updated successfully'); 


        } 

      } 
    } 

Модель: student_model

function get_records($exam_name) 
    { 
     $this->db->where('exam_name',$exam_name); 
     $query = $this->db->get('student_table'); 
     return $query->result(); 
    } 

function get_course_code_records($course_name) 
    { 
     $query = $this->db->get('coursesubject'); 
     return $query->result(); 
    } 

function get_all_coursesubject_records() 
    { 
     //echo "exam_name inside get_subject_records".$exam_name; 
     $this->db->select('course_code'); 
     $this->db->select('subject_code'); 
     $query = $this->db->get('coursesubject'); 
     return $query->result(); 
    } 
function get_subject_records($exam_name,$course_name) 
    { 
     //echo "exam_name inside get_subject_records".$exam_name; 
     //$this->db->select('course_code,subject_code'); 
     //$this->db->where('exam_name',$exam_name); 
     $this->db->where('course_code',$course_name); 
     $query = $this->db->get('coursesubject'); 
     return $query->result(); 
    } 

вид: subject_detail_view:

<?php $data = array(); 
    if(isset($records)){ 
     foreach ($course_records as $row) 
     { 
      $data[$row->course_code] = $row->course_code; 
     } 

     $subject_data = array(); 
     foreach ($all_coursesubject_records as $row) 
      { 
       $subject_data[$row->subject_code] = $row->subject_code; 
       } 
     } 
    ?> 
    <div id="Processy "> 
<table class="display table table-bordered table-striped" id='studenttable'> 
<thead> 
<tr font style='font-size:13px'> 
<th>&nbsp;</th> 
<th>&nbsp;</th> 
<th>Register Number</th> 
<th>Name </th> 
<th>Course Code</th> 
<th>Subject Code</th> 
</tr></thead> 
<?php if(isset($records)) : foreach($records as $row) : ?> 
<tr > 
<td> 
<?php echo anchor('student_site/delete/'.$row->id, 'Delete',array('onClick'=>"return confirm('Are you sure want to delete..?')")); ?> 
</td> 
<td id="rowUpdate"> 
<input type=checkbox name="editstudent[]" id="editstudent[]" value="<?php echo $row->id ?>"> 
</td> 
<td ><input class="inputmedium span2" type="text" name="register_number_<?php echo $row->id ?>" id="register_number_<?php echo $row->id ?>" value="<?php echo $row->register_number; ?>" ></td> 
<td ><input class="inputmedium span2" type="text" name="name_<?php echo $row->id ?>" id="name_<?php echo $row->id ?>" value="<?php echo $row->name; ?>" ></td> 

<td > 
<?php 

     $js = 'class="dropdown_class" id="course_code_id'.$row->id.'" onChange=" get_subjectdetails112('.$row->id.')" '; 
     $js_name = 'course_code_id'.$row->id; 
     echo form_dropdown($js_name, $data, $row->course_code, $js); 
     echo"hai"; 
     var_dump ($row->course_code); 
?> 
<input type="hidden" name="index" id="index" value="<?php echo $row->id; ?>"/> 
</td> 
<td>  
    <div id="subject_code_id<?php echo $row->id; ?>" ></div> 
    <input type="hidden" name="subject_code_id" id="subject_code_id" value="subject_code_id<?php echo $row->id; ?>"/> 
</td></tr> 

вид: Subj ect_update

<script type="text/javascript" charset="utf-8"> 

function get_subjectdetails112(index) { 
alert ("enter firstMAIN"); 
    //var index = jQuery('#index').val(); 
    //alert("index"+index); 
    var course_name = jQuery('#course_code_id'+index).val(); 
    alert("course_name"+course_name); 
    //var exam_name = jQuery('#course_name_id>option:selected').text(); 
    var exam_name = jQuery('#exam_name_id').val(); 
    var subject_code = jQuery('#subject_code_id'+index).val(); 
    alert(subject_code); 
    //var partsArray = exam_name.split('.'); 
    //alert("ssubject_code"+ssubject_code); 
    //alert("course_name"+course_name); 
    //alert("exam_name"+exam_name); 
    jQuery.ajax({ 
     data: 'exam_name='+exam_name+'&course_name=' + course_name, 
     type: 'POST', 
     url: 'student_site/studentupdate ', 
     success: function(data){ 
     //alert("inside change"); 
      console.log(data); 
      //alert ("data"+data); 
      //for(var j = course_name; j < ssubject_code; j++) 
     //{ 
      jQuery('#subject_code_id'+index).empty().append(data); 
     //} 
     } 

    }); 
} 
</script> 
+0

я наклоняю возможность popoulate значение в теме кода –

ответ

0

Вы ссылаетесь на subject_code_id_ поле, но имя поля и идентификатор не имеют суффикс.

Эта линия

<input type="hidden" name="subject_code_id" id="subject_code_id" value="subject_code_id<?php echo $row->id; ?>"/> 

Должно быть так, чтобы включить индекс в поле ID и имя

<input type="hidden" name="subject_code_id<?php echo $row->id; ?>" id="subject_code_id<?php echo $row->id; ?>" value="subject_code_id<?php echo $row->id; ?>"/> 
Смежные вопросы