Source Code Web Sekolah berbasis Codeigniter
untuk mendapatkan source code ini silahkan kontak kami dengan email.
rafaelnuanska@hotmail.com
Source Code Ujian Berbasis Web dengan Codeigniter
Computer Based Test
Release Information
Changelog and New Features
Server Requirements
Installation
License
Resources
Acknowledgement
Cara Menyembunyikan Controller dan Detail Codeigniter pada URL
![]() |
| Cara Menyembunyikan Controller dan Detail Codeigniter pada URL |
Apa itu Routing?
Routing adalah proses dimana suatu item dapat sampai ke tujuan dari satu lokasi ke lokasi lain. Beberapa contoh item yang dapat di-routing : mail, telepon call, dan data. Di dalam jaringan, Router adalah perangkat yang digunakan untuk melakukan routing trafik.Apa itu Framework?
Alasan Menggunakan Framework?
- Mempercepat dan mempermudah pembangunan sebuah aplikasi web.
- Relatif memudahkan dalam proses maintenance karena sudah ada pola tertentu dalam sebuah framework (dengan syarat programmermengikuti pola standar yang ada)
- Umumnya framework menyediakan fasilitas-fasilitas yang umum dipakai sehingga kita tidak perlu membangun dari awal (misalnya validasi, ORM, pagination, multiple database, scaffolding, pengaturan session, error handling, dll
- Lebih bebas dalam pengembangan jika dibandingkan CMS
Lalu apa itu Codeigniter?
Mari Kita Mulai Cara Routing Codeigniter
// Route Controller www.rafaelnuansa.com $route['product']='product';
// Route Controller, detail, dan slug www.rafaelnuansa.com $route['product/(:any)']='product/detail/$1'; // Route Controller dan detail www.rafaelnuansa.com $route['(:any)']='product/detail/$1';
Maka hasilnya bisa kalian lihat seperti ini, namun kita masih bisa memanggil URL yang asli dengan secara detil.
Source Code Website Sekolah Responsive Berbasis PHP Codeigniter
MSCHOOL adalah source code opensource yang dibangun mengunakan Codeigniter 3.1.9 dan Bootstrap 4.0.
MSCHOOL merupakan pengembangan dari project M-Sekolah. Dengan kata lain, MSCHOOL adalah versi 2.0 dari M-Sekolah.
MSCHOOL merupakan project open source untuk website profile sekolah SMP ataupun SMA dan sederajat untuk menunjang transparasi informasi dan promosi sekolah.
Backend dari Source Code ini dibangun menggunakan template AdminLTE, yaitu template yang sangat umum bagi developer web saat ini.
Selain itu, source code ini juga menggunakan Toast Message untuk menampilkan pesan pada bagian Backend.
Hal itulah yang membuat souce code ini menjadi sangat menarik.
Modul dan Fitur:
1. Dashboard (Unique Visitors Counter)
2. Manajemen artikel
3. Manajemen data siswa
4. Manajemen data guru
5. Manajemen data user
6. Manajemen agenda kegiatan
7. Manajemen pengumuman
8. Manajemen file materi pembelajaran
9. Manajemen data guru
10. Manajemen gallery photo
11. Manajemen pesan masuk (inbox)
12. Manajemen komentar
13. Sosial media share artikel
14. Nested Comments
15. SEO URL Friendly
DEMO - DOWNLOAD
Sumber : http://mfikri.com/sources/mschool-v2
Membuat Artikel atau Portal Berita dengan Codeigniter
Pada kesempatan kali ini, saya ingin sharing tentang bagaimana membuat portal berita dengan codeigniter nich. Tutorial ini akan sangat bermanfaat bagi anda yang ingin membuat website portal berita, company profile perusahaan, atau pun website yang membutuhkan post berita, artikel, story, atau pun tutorial.
Untuk membuat portal berita, tentu saja kita membutuhkan text editor yang memudahkan penulisan berita, seperti lataknya menulis di microsoft word.
Text editor web yang cukup populer dikalangan developer web adalah ckeditor. Ckeditor merupakan editor web WYSIWYG. WYSIWYG adalah singkatan dari What You See Is What You Get, artinya apa yang kamu lihat itulah yang kamu dapatkan.
Ok, tanpa basa-basi lagi langsung saja kita masuk kepembahasan. Pertama-tama siapkan terlebih dahulu codeigniter, bootstrap, jquery, dan ckeditor.
Setelah itu silahkan ikuti langkah berikut:
1. Buat database dan tabel dengan mengeksekusi query berikut:
CREATE DATABASE db_news; USE db_news; CREATE TABLE tbl_berita( berita_id INT PRIMARY KEY AUTO_INCREMENT, berita_judul VARCHAR(150), berita_isi TEXT, berita_image VARCHAR(40), berita_tanggal TIMESTAMP DEFAULT CURRENT_TIMESTAMP )ENGINE INNODB;
2. Install codeigniter
Extract codeigniter ke www (jika menggunakan wampserver) atau htdocs (jika menggunakan XAMPP). Kemudian rename project codeigniter anda sesuai dengan project Anda. Disini penulis memberi nama ci_news.
Setelah installasi, buat folder assets di dalam ci_news dan masukan ckeditor, jquery, serta bootstrap didalam folder assets. Kemudian buat folder images didalam folder assets. Sehingga terlihat struktur project kita seperti berikut:
aplication
assets
ckeditor
css
fonts
images
jquery
js
system
nah, folder ckeditor untuk editor WYSIWYG, sedangkan folder css, fonts, dan js adalah folder untuk bootstrap. Folder jquery adalah folder untuk menampung jquery. folder images ini nantinya kita gunakan untuk menampung images berita yang di upload.
Jika anda masih bingung dengan penjelasan diatas, jangan khawatir anda bisa mempelajarinya pada source code yang telah saya sediakan diakhir tutorial ini.
3. Konfigusai beberapa file berikut:
Buka application/config/autoload.php atur menjadi seperti berikut:
$autoload['libraries'] = array('database');
$autoload['helper'] = array('url');
Buka application/config/config.php dan atur menjadi seperti berikut:
$config['base_url'] = 'http://localhost/ci_news/';
Terakhir buka application/config/database.php
$active_group = 'default'; $query_builder = TRUE; $db['default'] = array( 'dsn' => '', 'hostname' => 'localhost', 'username' => 'root', 'password' => '', 'database' => 'db_news', 'dbdriver' => 'mysqli', 'dbprefix' => '', 'pconnect' => FALSE, 'db_debug' => (ENVIRONMENT !== 'production'), 'cache_on' => FALSE, 'cachedir' => '', 'char_set' => 'utf8', 'dbcollat' => 'utf8_general_ci', 'swap_pre' => '', 'encrypt' => FALSE, 'compress' => FALSE, 'stricton' => FALSE, 'failover' => array(), 'save_queries' => TRUE );
4. Buat model dengan nama M_berita.php dengan coding sebagai berikut:
<?php
class M_berita extends CI_Model{
function simpan_berita($jdl,$berita,$gambar){
$hsl=$this->db->query("INSERT INTO tbl_berita (berita_judul,berita_isi,berita_image) VALUES ('$jdl','$berita','$gambar')");
return $hsl;
}
function get_berita_by_kode($kode){
$hsl=$this->db->query("SELECT * FROM tbl_berita WHERE berita_id='$kode'");
return $hsl;
}
function get_all_berita(){
$hsl=$this->db->query("SELECT * FROM tbl_berita ORDER BY berita_id DESC");
return $hsl;
}
}
5. Buat controller dengan nama Post_berita.php dengan kode sebagai berikut:
<?php
class Post_berita extends CI_Controller{
function __construct(){
parent::__construct();
$this->load->model('m_berita');
$this->load->library('upload');
}
function index(){
$this->load->view('v_post_news');
}
function simpan_post(){
$config['upload_path'] = './assets/images/'; //path folder
$config['allowed_types'] = 'gif|jpg|png|jpeg|bmp'; //type yang dapat diakses bisa anda sesuaikan
$config['encrypt_name'] = TRUE; //nama yang terupload nantinya
$this->upload->initialize($config);
if(!empty($_FILES['filefoto']['name'])){
if ($this->upload->do_upload('filefoto')){
$gbr = $this->upload->data();
//Compress Image
$config['image_library']='gd2';
$config['source_image']='./assets/images/'.$gbr['file_name'];
$config['create_thumb']= FALSE;
$config['maintain_ratio']= FALSE;
$config['quality']= '60%';
$config['width']= 710;
$config['height']= 420;
$config['new_image']= './assets/images/'.$gbr['file_name'];
$this->load->library('image_lib', $config);
$this->image_lib->resize();
$gambar=$gbr['file_name'];
$jdl=$this->input->post('judul');
$berita=$this->input->post('berita');
$this->m_berita->simpan_berita($jdl,$berita,$gambar);
redirect('post_berita/lists');
}else{
redirect('post_berita');
}
}else{
redirect('post_berita');
}
}
function lists(){
$x['data']=$this->m_berita->get_all_berita();
$this->load->view('v_post_list',$x);
}
function view(){
$kode=$this->uri->segment(3);
$x['data']=$this->m_berita->get_berita_by_kode($kode);
$this->load->view('v_post_view',$x);
}
}
6. Buat buah 3 view. Buat view yang pertama dengan nama v_post_news.php dengan kode berikut:
<!DOCTYPE html>
<html>
<head>
<title>Post Berita</title>
<link rel="stylesheet" type="text/css" href="<?php echo base_url().'assets/css/bootstrap.css'?>">
</head>
<body>
<div class="container">
<div class="col-md-8 col-md-offset-2">
<h2>Portal Berita</h2><hr/>
<form action="<?php echo base_url().'index.php/post_berita/simpan_post'?>" method="post" enctype="multipart/form-data">
<input type="text" name="judul" class="form-control" placeholder="Judul berita" required/><br/>
<textarea id="ckeditor" name="berita" class="form-control" required></textarea><br/>
<input type="file" name="filefoto" required><br>
<button class="btn btn-primary btn-lg" type="submit">Post Berita</button>
</form>
</div>
</div>
<script src="<?php echo base_url().'assets/jquery/jquery-2.2.3.min.js'?>"></script>
<script type="text/javascript" src="<?php echo base_url().'assets/js/bootstrap.js'?>"></script>
<script src="<?php echo base_url().'assets/ckeditor/ckeditor.js'?>"></script>
<script type="text/javascript">
$(function () {
CKEDITOR.replace('ckeditor');
});
</script>
</body>
</html>
7. Buat view kedua dengan nama v_post_lists.php. view ini berfungsi untuk menampilkan berita dalam list. Adapun kode dari view ini adalah sebagai berikut:
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="<?php echo base_url().'assets/css/bootstrap.css'?>">
</head>
<body>
<div class="container">
<?php
function limit_words($string, $word_limit){
$words = explode(" ",$string);
return implode(" ",array_splice($words,0,$word_limit));
}
foreach ($data->result_array() as $i) :
$id=$i['berita_id'];
$judul=$i['berita_judul'];
$image=$i['berita_image'];
$isi=$i['berita_isi'];
?>
<div class="col-md-8 col-md-offset-2">
<h2><?php echo $judul;?></h2><hr/>
<img src="<?php echo base_url().'assets/images/'.$image;?>">
<?php echo limit_words($isi,30);?><a href="<?php echo base_url().'index.php/post_berita/view/'.$id;?>"> Selengkapnya ></a>
</div>
<?php endforeach;?>
</div>
<script src="<?php echo base_url().'assets/jquery/jquery-2.2.3.min.js'?>"></script>
<script type="text/javascript" src="<?php echo base_url().'assets/js/bootstrap.js'?>"></script>
</body>
</html>
8. Buat view ketiga dengan nama v_post_view.php. view ini berfungsi untuk menampilkan detail berita. Adapun kode dari view ini adalah sebagai berikut:
<?php $b=$data->row_array(); ?> <!DOCTYPE html> <html> <head> <title><?php echo $b['berita_judul'];?></title> <link rel="stylesheet" type="text/css" href="<?php echo base_url().'assets/css/bootstrap.css'?>"> </head> <body> <div class="container"> <div class="col-md-8 col-md-offset-2"> <h2><?php echo $b['berita_judul'];?></h2><hr/> <img src="<?php echo base_url().'assets/images/'.$b['berita_image'];?>"> <?php echo $b['berita_isi'];?> </div> </div> <script src="<?php echo base_url().'assets/jquery/jquery-2.2.3.min.js'?>"></script> <script type="text/javascript" src="<?php echo base_url().'assets/js/bootstrap.js'?>"></script> </body> </html>
9. Jalankan project dengan mengunjungi URL berikut:
http://localhost/ci_news/index.php/post_berita
Silahkan post satu berita, jika tidak ada error, berarti berhasil. Cek image yang diupload di folder assest/images.
Sekian tutorial tentang membuat portal berita dengan codeigniter. Jangan lupa share siapa tahu tutorial ini bermanfaat untuk teman Anda!
Sumber :http://mfikri.com/artikel/Membuat-portal-berita-sederhana-dengan-codeigniter-dan-bootstrap.html
Membuat Grafik atau Chart dengan Codeigniter
![]() |
| Membuat Grafik atau Chart dengan Codeigniter |
Chart atau grafik juga membantu mempermudah dalam memantau progress suatu bisnis. Seperti peningkatan penjualan, trafik pengunjung suatu website, dan lain sebagainya.
Untuk membuat chart atau grafik menggunakan codeigniter, kita memerlukan semacam library atau plugin. Disini penulis menggunakan chart.js.
Chart.js merupakan library javascript yang sangat banyak digunakan oleh developer web dalam mebuat grafik atau chart. Chart.js sangat mudah digunakan dan mudah di cutomize.
Ok, sekarang kita masuk ke proses coding!
1. Buat database dan tabel dengan mengeksekusi query berikut:
CREATE DATABASE db_chart;
USE db_chart;
CREATE TABLE barang(
barang_id INT PRIMARY KEY AUTO_INCREMENT,
nama_barang VARCHAR(100),
merk VARCHAR(30),
stok INT
)ENGINE=INNODB;
2. Insert beberapa data dengan mengeksekusi query berikut:
INSERT INTO barang(nama_barang,merk,stok) VALUES
('Aqua 1','Aqua',20),
('Aqua 2','Aqua',10),
('Aqua 3','Aqua',30),
('Aqua 4','Aqua',40),
('Aqua 5','Aqua',5),
('Wardah 1','Wardah',10),
('Wardah 2','Wardah',20),
('Wardah 3','Wardah',10),
('Wardah 4','Wardah',50),
('Inez 1','Inez',10),
('Inez 2','Inez',30),
('VIva 1','Viva',30),
('Coca-Cola 1','Coca-cola',10),
('Coca-Cola 2','Coca-cola',10),
('Coca-Cola 3','Coca-cola',30);
3. Instalasi codeigniter
Extract codeigniter ke folder webserver anda. Extract ke folder www jika anda menggunakan wampserver, extract ke folder htdocs jika anda menggunakan xampp.
Setelah di-extract, rename (ganti nama) menjadi ci_chart. Kemudian lakukan konfigurasi berikut:
Buka application/config/autoload.php atur menjadi seperti berikut:
$autoload['libraries'] = array('database');Buka application/config/config.php dan atur menjadi seperti berikut:
$autoload['helper'] = array('url');
$config['base_url'] = 'http://localhost/ci_chart/';Terakhir buka application/config/database.php
$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'root',
'password' => '',
'database' => 'db_chart',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
4. Buat folder dengan nama assets sejajar dengan folder application dan system. Kemudian extract file chartjs master kedalam folder assets. Sehingga terlihat struktur folder kita seperti berikut:
application
assets
Chartjs
Chart.min.js
system
5. Buat model dengan nama M_grafik.php dengan kode sebagai berikut:
<?php
class M_grafik extends CI_Model{
function get_data_stok(){
$query = $this->db->query("SELECT merk,SUM(stok) AS stok FROM barang GROUP BY merk");
if($query->num_rows() > 0){
foreach($query->result() as $data){
$hasil[] = $data;
}
return $hasil;
}
}
}
6. Buat controller dengan nama Grafik.php dengan kode sebagai berikut:
<?php
class Grafik extends CI_Controller{
function __construct(){
parent::__construct();
$this->load->model('m_grafik');
}
function index(){
$x['data']=$this->m_grafik->get_data_stok();
$this->load->view('v_grafik',$x);
}
}
7. Buat view dengan nama v_grafik.php dengan kode sebagai berikut:
<!DOCTYPE html>
<html>
<head>
<title>Grafik Stok Barang</title>
<?php
foreach($data as $data){
$merk[] = $data->merk;
$stok[] = (float) $data->stok;
}
?>
</head>
<body>
<canvas id="canvas" width="1000" height="280"></canvas>
<!--Load chart js-->
<script type="text/javascript" src="<?php echo base_url().'assets/chartjs/chart.min.js'?>"></script>
<script>
var lineChartData = {
labels : <?php echo json_encode($merk);?>,
datasets : [
{
fillColor: "rgba(60,141,188,0.9)",
strokeColor: "rgba(60,141,188,0.8)",
pointColor: "#3b8bba",
pointStrokeColor: "#fff",
pointHighlightFill: "#fff",
pointHighlightStroke: "rgba(152,235,239,1)",
data : <?php echo json_encode($stok);?>
}
]
}
var myLine = new Chart(document.getElementById("canvas").getContext("2d")).Line(lineChartData);
</script>
</body>
</html>
8. Kunjungi URL berikut untuk mengecek aplikasi nya berjalan dengan baik.
http://localhost/ci_chart/index.php/grafik
Ok, sekian tutorial kali ini. Jika anda merasa tutorial ini bermanfaat untuk anda, silahkan share siapa tau tutorial ini bermaanfaat untuk teman Anda!
Download Source Code








