I am making a student management system and I want to update record, all code works fine but update operation is not done also, all select elements like dropdown, radio button are not checked as data in database.
Code for controller:
//code to edit student record.
public function edit($stu_id)
{
$this->load->model('model_editstudent');
$data['r'] = $this->model_editstudent ->get_student_row($stu_id);
$this->load->view('view_editstudent', $data);
}
#update query.
function update()
{
$stu_id = $this->input->post('stu_id');
$data = array(
'name' => $this->input->post('name'),
'address' => $this->input->post('address'),
'sex' => $this->input->post('sex'),
'yop' => $this->input->post('yop'),
'interest' => $this->input->post('interest')
);
$this->db->where('stu_id', $stu_id);
$this->db->update('stu_record', $data);
redirect('Student_Controller/');
}
Code for Model:
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Model_EditStudent extends CI_Model
{
function get_student_row($stu_id)
{
$this->db->where('stu_id', $stu_id);
$query = $this->db->get('stu_record');
#will return only one record(row)
return $query->row();
}
}
Code for view:
<form method="POST" action='<?php echo site_url("student_controller/update"); ?>'>
<b>Student ID:</b><br>
<input type="text" Name="name" readonly value="<?php echo $r->stu_id ?>"><br><br>
<b>Name of the Student:</b><br>
<input type="text" Name="name" value="<?php echo $r->name ?>"><br><br>
<b>Address:</b><br>
<textarea name="address" rows="5" cols="22" ><?php echo $r->address ?></textarea><br><br>
<b>Gender:</b><br>
<input type="radio" name="sex" value="<?php if($r->sex=='Male') ?>">Male<br>
<input type="radio" name="sex" value="<?php if($r->sex=='Female') ?>">Female<br><br>
<b>Expected Year of Passing:</b><br>
<select name="yop" value="<?php echo $r->yop ?>">
<option value="0">Select Year</option>
<option value="2010">2010</option>
<option value="2011">2011</option>
<option value="2012">2012</option>
<option value="2013">2013</option>
<option value="2014">2014</option>
<option value="2015">2015</option>
</select><br><br>
<b>Extra Curricular Interests:</b><br>
<input type="checkbox" name="interest" value="Sports"><label>Sports</label><br/>
<input type="checkbox" name="interest" value="Programming"><label>Programming</label><br/>
<input type="checkbox" name="interest" value="Arts"><label>Arts</label><br/>
<input type="checkbox" name="interest" value="Music"><label>Music</label><br/>
<br><input type="submit" value="Update">  
<a href='<?php echo site_url('student_controller/'); ?>'>Cancel</a>
</form>
first thing change you select to
<select name="yop">
<option value="0">Select Year</option>
<option value="2010" <?php if($r->yop=="2010"){echo "selected=selected";}?>>2010</option>
<option value="2011" <?php if($r->yop=="2011"){echo "selected=selected";}?>>2011</option>
<option value="2012" <?php if($r->yop=="2012"){echo "selected=selected";}?>>2012</option>
<option value="2013" <?php if($r->yop=="2013"){echo "selected=selected";}?>>2013</option>
<option value="2014" <?php if($r->yop=="2014"){echo "selected=selected";}?>>2014</option>
<option value="2015" <?php if($r->yop=="2015"){echo "selected=selected";}?>>2015</option>
</select>
radio button to
<input type="radio" name="sex" value="Male" <?php if($r->sex=='Male') echo "checked";?>">Male<br>
<input type="radio" name="sex" value="Female" <?php if($r->sex=='Female') echo "checked"; ?>">Female<br><br>