Upload de foto com falha no Codeigniter

Este é o meu código, minha foto não pode ser inserida no banco de dados.

Na verdade, eu quero fazer um exame on-line com o codeigniter. Quero fazer o upload da pergunta com a foto. mas quando tentei fazer o upload da imagem, o código não está funcionando.

mas a pergunta sucesso inserida no banco de dados. apenas a imagem falhou ao carregar

Controlador:

function insert(){
		$nama_asli = $_FILES['userfile']['name'];
		$config ['file_name'] = $nama_asli;
		$config ['upload_path'] = './images';
		$config ['allowed_types'] = 'gif|jpg|png|jpeg';
		$config ['max_size'] = '2500';
			
		$this->load->library('upload', $config);
			
		$upload_data = $this->upload->data();
		$file_name = $upload_data['file_name'];	
		
		$id_soal = '';
		$soal = $_POST['soal'];
		$a = $_POST['a'];
		$b = $_POST['b'];
		$c = $_POST['c'];
		$d = $_POST['d'];
		$kunci = $_POST['kunci'];
		$status = $_POST['status'];

		$data = array(
			'id_soal' => $id_soal,
			'soal' => $soal,
			'a' => $a,
			'b' => $b,
			'c' => $c,
			'd' => $d,
			'kunci' => $kunci,
			'status' => $status,
			'foto' => $file_name,
			);

		$hasil = $this->soal_model->Simpan('soal', $data);

		if($hasil>=1){
			redirect('dashboard/index', $data);
		}
	}

Modelo:

class Soal_model extends Ci_Model {

  public function Ambil($where= "") {
    $data = $this->db->query('select * from soal '.$where);
    return $data;
  }
  
  public function Simpan($tabel, $data){
    $res = $this->db->insert($tabel, $data);
    return $res;
  }

Visão:

<form role="form" action="<?php echo base_url(); ?>dashboard/insert" method="POST" enctype="multipart/form-data">
<form class="form-horizontal" method="post" style = "margin : 10px;">
		<div class = "row">
		<div class = "col-sm-offset-3 col-sm-6">
		<div class="form-group">
		<label>Soal :</label>
		<textarea type="text" class="form-control" name="soal" id="soal" required></textarea>
		</div>
		
		<div class="form-group">
		<label>Jawaban A :</label>
		<input type="text" class="form-control" 
		placeholder="Type Here" name="a" id="a" required/>
		</div>
		
		<div class="form-group">
		<label>Jawaban B :</label>
		<input type="text" class="form-control" 
		placeholder="Type Here" name="b" id="b" required/>
		</div>
		
		<div class="form-group">
		<label>Jawaban C :</label>
		<input type="text" class="form-control" 
		placeholder="Type Here" name="c" id="c" required/>
		</div>
		
		<div class="form-group">
		<label>Jawaban D :</label>
		<input type="text" class="form-control" 
		placeholder="Type Here" name="d" id="d" required/>
		</div>
		
		<div class="form-group">	
		<label>Kunci :</label>
		<select name="kunci" id="kunci" class="form-control">
		<option>Select</option> 
		<option>A</option>  
		<option>B</option> 
		<option>C</option>
		<option>D</option>
		</select> 
		</div>
		
		<div class="form-group">	
		<label>Status :</label>
		<select name="status" id="status" class="form-control">
		<option value="">Select</option> 
		<option value="tampil">Tampil</option>  
		<option value="tidak">Tidak</option> 
		</select> 
		
		<div class="form-group">	
		<label>Photo :</label>
		<input type="file" name="foto" id="foto" size="20"/>
		</div>
		<br>
		
		<div class="form-group">	
        <button type="submit" class="btn btn-default">Simpan</button>
		<button type="reset" class="btn btn-default">Hapus</button>
		</div>
		</div>
		</div>
	</form>
	

Base de dados:

questionAnswers(1)

yourAnswerToTheQuestion