Tatacara instalasi hmvc pada codeigniter

Friday, June 11th, 2021

Download codeigniter versi 3

Buat folder di C:xampp\htdocs dengan nama codeigniter, atau bebas dengan nama lain asalkan tidak ada spasi.

Isi folder codeigniter adalah extract dari yang sudah didownload tadi. Lihat gambar di atas

Cek dulu di browser apakah instalasinya sudah benar, buka browser kemudian ketik alamat localhost/codeigniter

Masuk ke alamat hmvc extension di https://github.com/5112n4/wiredesignz-codeigniter-modular-extensions
Kemudian download zip code nya

Gambar di atas adalah hasil extract hmvc yang sudah dodownload sesuai nomor 5, copy folder dan file di atas ke folder application di dalam project codeigniter yang sudah disiapkan di htdocs tadi. Lihat gambar di bawah

Cek Kembali dengan melakukan Langkah yang sama dengan nomor 4.

error pertama

Jika muncul error seperti di atas anda tidak perlu khawatir.
Buka file berikut: C:\xampp\htdocs\codeigniter\application\third_party\MX\Router.php

Cari function berikut:

public function set_class($class)
	{
		$suffix = $this->config->item('controller_suffix');
		if (strpos($class, $suffix) === FALSE)
		{
			$class .= $suffix;
		}
		parent::set_class($class);
	}

Ubah menjadi function berikut, jadi function di atas boleh dihapus dulu kemudian timpa dengan function berikut:

public function set_class($class)
	{
		$suffix = $this->config->item('controller_suffix');
		if( $suffix && strpos($class, $suffix) === FALSE) 
		{
			$class .= $suffix;
		}
		parent::set_class($class);
	}

Jalankan Kembali browser, lihat apakah ada error.

error kedua

Karena masih ada error maka buka file berikut: C:\xampp\htdocs\codeigniter\application\third_party\MX\Loader.php

Cari baris fungsi ini:

public function view($view, $vars = array(), $return = FALSE)
	{
		list($path, $_view) = Modules::find($view, $this->_module, 'views/');

		if ($path != FALSE)
		{
			$this->_ci_view_paths = array($path => TRUE) + $this->_ci_view_paths;
			$view = $_view;
		}

		return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_object_to_array($vars), '_ci_return' => $return));
	}

Ada yang salah dengan fungsi di atas, hapus dan gantikan dengan fungsi di bawah ini:

public function view($view, $vars = array(), $return = FALSE)
	{
		list($path, $_view) = Modules::find($view, $this->_module, 'views/');

		if ($path != FALSE)
		{
			$this->_ci_view_paths = array($path => TRUE) + $this->_ci_view_paths;
			$view = $_view;
		}

		if (method_exists($this, '_ci_object_to_array'))
		{
				return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_object_to_array($vars), '_ci_return' => $return));
		} else {
				return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_prepare_view_vars($vars), '_ci_return' => $return));
		}
	}

Jalankan Kembali browsernya, cek apakah masih ada error.

Final

Selamat anda telah selesai konfigurasi HMVC. Posting artikel berikutnya kita mulai persiapkan modularnya.


Leave a Reply

Your email address will not be published. Required fields are marked *

494post_id=494
Eka Angga v2 said: "[…] Klik link di bawah untuk panduan tertulis:http://ekaangga.net/2021/06/tatacara-instalasi-hmvc-pada-codeigniter/ […]".