Faber Nainggolan Blog's

Artikel, Tutorial Pemrograman, Tutorial database, PHP dan Framework

LightBlog

Pada artikel sebelumnya Memulai Project CodeIgniter : Part 6 CRUD , kita lanjutkan kembali setelah kita buat controller nya mari kita buat ...

Memulai Project CodeIgniter : Part 6 CRUD bagian 2

Pada artikel sebelumnya Memulai Project CodeIgniter : Part 6 CRUD, kita lanjutkan kembali setelah kita buat controller nya mari kita buat sebuah model nya beri nama Mbarang.php dan simpan di folder ./application/models/ buat script nya seperti dibawah ini
<?php
class Mbarang extends CI_Model {
    var $tabel = 'tb_barang'; //variabel nama tabel

    function __construct() {
        parent::__construct();
    }

    function getallbarang() { //query semua data di tabel barang
        $this->db->from($this->tabel);
        $this->db->order_by('kode_brg','DESC');
        $query = $this->db->get();

        //cek apakah ada barang
        if ($query->num_rows() > 0) {
            return $query->result();
        }
    }

    function getbarangbyid($id) { //query berdasarkan id barang tabel barang

        $this->db->from($this->tabel);
        $this->db->where('kode_brg', $id);

        $query = $this->db->get();
        if ($query->num_rows() == 1) {
            return $query->row();
        }
    }

    function getinsert($data){ //query insert data
        $this->db->insert($this->tabel, $data);
        return TRUE;
    }

    function getupdate($id,$data) { //query update data
        $this->db->where('kode_brg', $id);
        $this->db->update($this->tabel, $data);
        return TRUE;
    }

    function delbarang($id) { //query hapus data
        $this->db->where('kode_brg', $id);
        $this->db->delete($this->tabel);
        if ($this->db->affected_rows() == 1) {
            return TRUE;
        }
        return FALSE;
    }
}
?>


selanjutnya kita akan membuat views  pada tampilannya kita akan membuat 3 halaman baru yaitu halaman barang vbarang.php, halaman form vformbarang.php dan halaman detail vdetailbarang.php agar lebih rapi saya buat dalam satu folder ./barang/ dan posisi nya di folder ./application/views/barang/ otomatis kita harus sesuaikan pemanggilan views di controller nya dengan menambahkan folder barang/_nama_views setiap memanggil views nya, bisa dilihat pada controllernya.

vbarang.php
<section>
<div class="container"> 
 <h1>Data Barang</h1>
  <a href="<?php echo base_url();?>barang/tambah" class="button">Tambah</a>
  <div class="pesan-sukses"><?php echo $this->session->flashdata("pesan");?></div>	
  <table class="table">
  	<tr>
  		<th>No</th>
  		<th>Kode</th>
  		<th>Barcode</th>
  		<th>Nama Barang</th>
  		<th>Harga </th>
  		<th>Jenis </th>
  		<th>Satuan </th>
  		<th>Stok </th>
  		<th>Keterangan </th>
  		<th></th>
  	</tr>
  	<?php if(!$querybarang){?>
  	 <tr><td colspan="9">Data Masih Kosong</td>	</tr>
  	<?php }else{
  	  $no =0;	
  	  foreach ($querybarang as $rstbrg) {$no++;
  	?>
  	<tr>
  		<td><?php echo $no;?></td>
  		<td>#<?php echo $rstbrg->kode_brg;?></td>
  		<td><?php echo $rstbrg->barcode;?></td>
  		<td><?php echo $rstbrg->nama_brg;?></td>
  		<td><?php echo $rstbrg->harga_brg;?></td>
  		<td><?php echo $rstbrg->jenis;?></td>
  		<td><?php echo $rstbrg->satuan;?></td>
  		<td><?php echo $rstbrg->stok_brg;?></td>
  		<td><?php echo $rstbrg->keterangan;?></td>
  		<td><a href="<?php echo base_url()?>barang/edit/?id=<? echo $rstbrg->kode_brg;?>">Edit</a>
  			<a href="<?php echo base_url()?>barang/detail/?id=<? echo $rstbrg->kode_brg;?>">Detail</a>
  			<a onclick="return KonfirmasiHapus()" href="<?php echo base_url()?>barang/hapus/?id=<? echo $rstbrg->kode_brg;?>">Hapus</a>
  		</td>
  	</tr>
  	<?php }}?>
  </table>
</div>
</section>
<script type="text/javascript">
function KonfirmasiHapus() {
  return confirm("Apa anda yakin akan menghapus data ini?");
}
</script>
 
 
vformbarang.php
<?php 
if($aksi=='aksi_tambah'){
	$kode = "";
	$bkode = @$abkode;
	$nama = @$anama;
	$harga = @$aharga;
	$stok = @$astok;
	$jenis = @$ajenis;
	$satuan = @$asatuan;
	$keterangan = @$aket;
}elseif($aksi=='aksi_edit'){
	$kode = $row->kode_brg;
	$bkode = $row->barcode;
	$nama = $row->nama_brg;
	$harga = $row->harga_brg;
	$stok = $row->stok_brg;
	$jenis = $row->jenis;
	$satuan = $row->satuan;
	$keterangan = $row->keterangan;
}
?>
<section>
<div class="container"> 
 <h1>Form Barang</h1>
 	<div class="form">
 	<div class="pesan-error"><?php echo $this->session->flashdata("pesan");?></div>	
	<form method="post" action="<?php echo base_url()?>barang/<?php echo $aksi;?>">	
		<label>Barcode Barang</label>
  		<input type="text" name="barcode" class="w4" value="<?php echo $bkode;?>">
  		<label>Nama Barang</label>
  		<input type="text" name="nama" value="<?php echo $nama;?>">
  		<label>Harga Barang</label>
  		<input type="text" name="harga" class="w3" value="<?php echo $harga;?>">
  		<label>Stok Barang</label>
  		<input type="text" name="stok" class="w3" value="<?php echo $stok;?>">
  		<label>Jenis</label>
  		<input type="text" name="jenis" class="w3" value="<?php echo $jenis;?>">
  		<label>Satuan</label>
  		<input type="text" name="satuan" class="w2" value="<?php echo $satuan;?>">
  		<label>Keterangan</label>
  		<textarea name="keterangan"><?php echo $keterangan;?></textarea>
  		<input type="submit" class="button" name="simpan" value="Simpan">
  		<a href="<?php echo base_url();?>barang" class="button2">Kembali</a>
  		<input type="hidden" name="kode" value="<?php echo $kode;?>">

  	</form>
  	
  </div>
</div>
</section>

vdetailbarang.php
<section>
<div class="container"> 
 <h1>Detail Barang</h1>
 <table>
 	<tr>
 		<td>Kode Barang</td>
 		<td>:</td>
 		<td>#<?php echo $rowbarang->kode_brg;?>
 	</tr>
 	<tr>
 		<td>Barcode Barang</td>
 		<td>:</td>
 		<td><?php echo $rowbarang->barcode;?>
 	</tr>
 	<tr>
 		<td>Nama Barang</td>
 		<td>:</td>
 		<td><?php echo $rowbarang->nama_brg;?>
 	</tr>
 	<tr>
 		<td>Stok</td>
 		<td>:</td>
 		<td><?php echo $rowbarang->stok_brg;?>
 	</tr>
 	<tr>
 		<td>Jenis</td>
 		<td>:</td>
 		<td><?php echo $rowbarang->jenis;?>
 	</tr>
 	<tr>
 		<td>Satuan</td>
 		<td>:</td>
 		<td><?php echo $rowbarang->satuan;?>
 	</tr>
 	<tr>
 		<td>Keterangan</td>
 		<td>:</td>
 		<td><?php echo $rowbarang->keterangan;?>
 	</tr>
 </table>
 <a href="<?php echo base_url()?>barang">Kembali</a>
</div>
</section>

style.css
untuk css tampilannya di edit saya buka file style.css pada folder ./assets/ dan buat seperti dibawah ini
body{
	color: #333;
	font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
	font-size:16px;
}
header{
	background: #111;
	padding: 20px;
}
header h3{
	float: left;
	color: #FFF;
}
header nav{
	float: right;
	margin-top: 10px;
}
header nav ul{
	padding: 0;	
	margin: 0;
}
header nav ul li{
	float: left;
	list-style: none;
}
header nav ul li a{
	padding: 15px;color: #fff;text-decoration: none;}
header nav ul li a:hover{color: yellow;}
footer{ background: #111;padding: 20px;color: #fff;}
footer a{color: #fff;text-decoration: none;}
footer a:hover{	color: yellow;}
section{padding: 20px;min-height: 300px;}
.clear{	clear: both;}
.container{margin: 0px auto;width: 1100px;}
.table {border-collapse: collapse; width: 100%;}
.table td, .table th {border: 1px solid #ddd;padding: 8px; font-size: 14px;}
.table tr:nth-child(even){background-color: #f2f2f2;}
.table tr:hover {background-color: #ddd;}
.table th { padding-top: 12px;padding-bottom: 12px;text-align: left;background-color: #4CAF50;color: white;}
.button {background-color: #F00;/* Green */border: none;color: white;padding: 10px 20px;
	text-align: center;text-decoration: none;display: inline-block;font-size: 16px;
	border-radius: 4px;
}
.button:hover{background-color: #FE0; color: #444;}
.button2{
	padding: 12px; text-align: center;background-color: #CCC;
	color: #666; text-decoration: none;
	display: inline-block;
	border-radius: 4px;
}
input[type=text], select ,textarea{
	width: 100%;
	padding: 12px 10px;
	margin: 8px 0;
	display: inline-block;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-sizing: border-box;
}

input[type=submit] {
	background-color: #4CAF50;
	color: white;
	padding: 14px 20px;
	margin: 8px 0;
	border: none;
	border-radius: 4px;
	cursor: pointer;
}

input[type=submit]:hover {
	background-color: #45a049;
}
label{width: 100%!important; display: inline-block;}
.form {
	width: 50%;
	border-radius: 5px;
	background-color: #f2f2f2;
	padding: 20px;
}
.w1{
	width: 100%!important;
}
.w2{width: 50%!important;}
.w3{width: 33.33%!important;}
.w4{width: 25%!important;}
.w5{width: 12.5%!important;}
.w1:after,.w2:after,.w3:after,.w4:after,{clear: both!important;}
input[type=text]:after{clear: both;}
.pesan-error{color:#F00; padding: 10px; font-style: italic;}
.pesan-sukses{padding: 10px; color: #48C50A;font-style: italic;}

sampai disini kita sudah selesai membangun sebuah crud codeigniter mari kita lihat hasil nya

gambar tampilan ketika aplikasi diakses

Tampilan form ketika di klik tambah

Validasi muncul ketika kita klik simpan padahal form belum di isi

Tampilan data berhasil di tambah

Oke demikian tutorial mengenai crud codeigniter ini silakan dicoba berulang2 sampai mengerti dan jika terjadi error atau kesulitan bisa buat komentar.
Untuk demo dan source code nya bisa dilihat pada link dibawah ini

DEMO | Download

0 comments:

Salam koding, kembali lagi bersama saya di artikel mengenai codeigniter jika kita membahas membangun sebuah project berarti kita tidak lepas...

Memulai Project CodeIgniter : Part 6 CRUD

Salam koding, kembali lagi bersama saya di artikel mengenai codeigniter jika kita membahas membangun sebuah project berarti kita tidak lepas harus membuat yang nama pengelolaan data yaitu Create, Read ,Update dan Delete (CRUD) nah pada artikel kali ini kita akan bahas CRUD. Mari kita mulai


Persiapan

Untuk package codeigniter kita buat dari artikel-artikel sebelumnya kalo belum baca bisa dibaca dibawah ini :

Memulai Project CodeIgniter
Memulai Project CodeIgniter : Part 2
Memulai Project CodeIgniter : Part 3 Menghilangkan Index.php
Memulai Project CodeIgniter : Part 4 User Agent
Memulai Project CodeIgniter : Part 5 Template


Nah ambil artikel Memulai project CodeIgniter : Part 5 Tamplate, core packagenya dan script yang kita kerjakan sudah saya sisipkan dan bisa didownload pada link tersebut. Setelah didownload silakan di ekstrak lalu beri nama folder nya ./ci-crud (atau terserah kawan mau dibuat nama foldernya) kalo saran saya sih disamakan aja agar seragam dalam menjalankan projectnya nanti nya

Konfigurasi

config.php
Edit file config.php pada folder ./application/config/ buat seperti script dibawah
$config['base_url'] = '';
atau
$config['base_url'] = 'ci-projectpertama';

ubah menjadi

$config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http");
$config['base_url'] .= "://".$_SERVER['HTTP_HOST'];
$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);

script diatas berfungsi mengambil nama folder project kita secara otomatis, jadi kita tidak usah capek lagi mengubahnya base url nya sesuai domain jika suatu saat nanti akan upload ke project kita hostingan.

autoload.php
kemudian masi pada folder ./application/config/ buka file autoload.php 
pada bagian libarary

$autoload['libraries'] = array();
ubah menjadi
$autoload['libraries'] = array('database');

selanjutnya pada bagian helper buat seperti berikut
$autoload['helper'] = array('url','form'); 

kemudian pada bagian model buat seperti ini
$autoload['model'] = array('mbarang'); 

pada file autoload ini setiap yang kita includekan berarti ini akan otomatis di load pada class project kita nantinya

routes.php
selanjutnya masi difolder ./application/config/ buka file routes.php ubah seperti dibawah ini
$route['default_controller'] = 'welcome';
ubah menjadi
$route['default_controller'] = 'barang';
baris ini akan mengatur default controller yang akan diakses dimana pada script akan otomatis memanggil controller barang.

database.php
selanjutnya konfigurasi database, buka file database.php pada folder ./application/config/ settingan sesuaikan dengan webserver yang kawan2 punya, seperti pada settingan server saya seperti dibawah ini

$db['default'] = array(
  'dsn'      => '',
  'hostname' => 'localhost',
  'username' => 'root',
  'password' => '',
  'database' => 'db_crud',
  '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
);

Implementasi

Database
Buat database terlebih beri nama db_crud lalu copykan query dibawah ini
CREATE TABLE `tb_barang` (
  `kode_brg` int(5) NOT NULL AUTO_INCREMENT,
  `barcode` varchar(20) NOT NULL,
  `nama_brg` varchar(150) NOT NULL,
  `harga_brg` int(10) NOT NULL,
  `keterangan` tinytext NOT NULL,
  `jenis` varchar(30) DEFAULT NULL,
  `satuan` varchar(30) DEFAULT NULL,
  `stok_brg` int(5) DEFAULT NULL,
  PRIMARY KEY (`kode_brg`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=latin1

Controller
Lalu buat sebuah controller dan beri nama Barang.php dan buat script seperti dibawah ini
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Barang extends CI_Controller {
/******************************************************
  | CRUD barang
  | controller barang view, create, update, delete
  | by gTech
  *****************************************************/
  public function __construct() {
    parent::__construct();
  }
  
    //fungsi awal ketika kita panggil controller barang
  public function index(){
      $data['judul'] = 'CRUD CodeIgniter Studi Kasus Barang'; //judul title
      $data['querybarang'] = $this->mbarang->getallbarang(); //model semua barang
      
      //template views
      $this->load->view('header',$data);
      $this->load->view('barang/vbarang',$data); //load views vbarang
      $this->load->view('footer',$data);
    }
    //fungsi form tambah ketika kita panggil pada link 
    public function tambah(){     
      $data['judul'] = 'Tambah barang';
      $data['aksi'] = 'aksi_tambah';

        //template views
      $this->load->view('header',$data);
      $this->load->view('barang/vformbarang',$data);
      $this->load->view('footer',$data);
    }
    //fungsi form edit ketika kita panggil pada link
    public function edit(){
      $id = $this->input->get('id');
      $data['row'] = $this->mbarang->getbarangbyid($id);
      $data['judul'] = 'Edit barang';
      $data['aksi']  = 'aksi_edit';

        //template views
      $this->load->view('header',$data);
      $this->load->view('barang/vformbarang',$data);
      $this->load->view('footer',$data);
    }
    //fungsi untuk menangani pemanggilan aksi tambah ketika form barang di submit
    public function aksi_tambah(){
        //deklarasikan variabel dari form
      $barcode     = addslashes($this->input->post('barcode'));
      $nama     = addslashes($this->input->post('nama'));
      $jenis     = addslashes($this->input->post('jenis'));
      $keterangan    = addslashes($this->input->post('keterangan'));
      $satuan        = addslashes($this->input->post('satuan'));
      $harga        = addslashes($this->input->post('harga'));
      $stok        = addslashes($this->input->post('stok'));

        //validasi 
        $this->form_validation->set_rules('barcode', 'Barcode Barang', 'required'); //kode
        $this->form_validation->set_rules('nama', 'Nama Barang', 'required'); //nama
        $this->form_validation->set_rules('jenis', 'Jenis Barang', 'required'); //jenis
        if ($this->form_validation->run() == TRUE) {
          $data = array(
            'barcode'   => $barcode,
            'nama_brg'  => $nama,
            'harga_brg' => $harga,
            'keterangan'=> $keterangan,
            'satuan'    => $satuan,
            'jenis'     => $jenis,
            'stok_brg'  => $stok
          );
          $this->mbarang->getinsert($data); //model insert data barang
          $this->session->set_flashdata("pesan", "Data berhasil di insert"); //pesan yang tampil setalah berhasil di insert
          redirect('barang');
        }else{
          //ini berfungsi agar field form tidak menjadi kosong, dibuat dalam array
          //variabel akan tetap dibawa jika error terjadi pada saat validasi
          $info = array(
            'abkode'=>$barcode,
            'anama'=>$nama,
            'aharga'=>$harga,
            'asatuan'=>$satuan,
            'ajenis'=>$jenis,
            'astok'=>$stok,
            'aket'=>$keterangan,
            'judul' => 'Tambah barang',
            'aksi' => 'aksi_tambah'

          );
          $err = validation_errors(); //error validasi akan dimunculkan pada pesan

          $this->session->set_flashdata("pesan", "Data Gagal di insert
".$err);

          //ketika error terjadi halaman akan tetap di form barang
          $this->load->view('header',$info); 
          $this->load->view('barang/vformbarang',$info);
          $this->load->view('footer',$info); 
        }
      }

    //fungsi untuk menangani pemanggilan aksi edit ketika form barang di submit
    public function aksi_edit(){
      //ambil variabel dari form
        $kode       = addslashes($this->input->post('kode'));
        $barcode     = addslashes($this->input->post('barcode'));
        $nama     = addslashes($this->input->post('nama'));
        $jenis     = addslashes($this->input->post('jenis'));
        $keterangan    = addslashes($this->input->post('keterangan'));
        $satuan        = addslashes($this->input->post('satuan'));
        $harga        = addslashes($this->input->post('harga'));
        $stok        = addslashes($this->input->post('stok'));

        $data = array(
          'barcode'   => $barcode,
          'nama_brg'  => $nama,
          'harga_brg' => $harga,
          'keterangan'=> $keterangan,
          'satuan'    => $satuan,
          'jenis'     => $jenis,
          'stok_brg'  => $stok
        );
        $this->mbarang->getupdate($kode,$data); //modal update data barang
        $this->session->set_flashdata("pesan", "Data berhasil diupdate"); //pesan yang tampil setelah berhasil di update
        redirect('barang'); 
    }
    //fungsi untuk menangani pemanggilan link detail barang
    public function detail(){ //dengan membawa variabel id
      $id = $this->input->get('id');
        $data['judul'] = 'Detail Barang'; //judul title
        $data['rowbarang'] = $this->mbarang->getbarangbyid($id); //query model barang sesuai id
        //template views
        $this->load->view('header',$data);
        $this->load->view('barang/vdetailbarang',$data); //meload views detail barang
        $this->load->view('footer',$data);
      }
    //fungsi untuk menangani apabila hapus barang
    public function hapus(){
        $id = $this->input->get('id'); //variabel id dari url
        $this->mbarang->delbarang($id);
        $this->session->set_flashdata("pesan", "Barang berhasil dihapus");
        redirect('barang');
    }
}

/* End of file barang.php */
/* Location: ./application/controllers/barang.php */

pada script saya buatkan juga komentar keterangan agar lebih mudah dipahami

bersambung ke bagian 2 Memulai Project CodeIgniter : Part 6 CRUD bagian 2

0 comments:

Pernahkah  sobat melihat testimonial yang berbaganti-ganti secara statis pada tampilan awal sebuah website? Jika belum pernah kali saya akan...

Membuat Text Slider Testimonial dengan JQuery Cycle Plugin

Pernahkah  sobat melihat testimonial yang berbaganti-ganti secara statis pada tampilan awal sebuah website? Jika belum pernah kali saya akan berbagi artikel tentang slider text dengan jquery Cycle Plugin.

Testimonial kita ketahui sangat perlu dibuat pada sebuah website sebagai feedback kita dapatkan dari publik tentang produk ataupun perusahaan kita. Baik mari kita mulai

Langkah 1 : Buat database


CREATE TABLE `testimonial` (
`idtest` INT( 5 ) NOT NULL AUTO_INCREMENT ,
`nama` VARCHAR( 30 ) NOT NULL ,
`isitest` TEXT NOT NULL ,
`kota` VARCHAR(20) NOT NULL ,
PRIMARY KEY ( `idtest` )
) ENGINE = MYISAM ;
 

kemudian insertkan datanya seperti dibawah ini

INSERT INTO `testimonial` (`idtest` ,`nama` ,`isitest` ,`kota`) VALUES 
( '' , 'GooLanz', 'Terkadang didalam hidup, seseorang harus bersedia mundur selangkah untuk mempersiapkan diri melangkah kedepan.', 'Medan' ), 
( '', 'Agus Han', 'Seorang pemenang itu ibarat rajawali yang mengepakan sayapnya terbang di angkasa menerjang segala rintangan.', 'Papua'), 
( '', 'Budi', 'Sebagai pemimpin, kita hidup bagaikan dibawah mikroskop. Segala hal yang kita lakukan atau katakana, tidak terlepas dari pengamatan pengikut kita.', 'Makassar'), 
('', 'Faber', 'Kebahagian tidak datang begitu saja. tidak ada orang yang dikaruniai kebahagian. kita harus mencari kebahagian kita sendiri, melauli sikap berpikir kita dan kesediaan kita untuk bersyukur.', 'Medan');
 

Langkah 2 : Download Plugin Cycle dan JQuery


Jquery bisa didownload di website jquery.com sedangkan untuk plugin cyclenya bisa disini

Langkah 3 : Style CSS


untuk mempercantik tampilanya buat skrip untuk style cssnya, beri nama style.css

/* CSS Document */
#testimonials {
width:500px;
background:#E7E9E6 ;
border:1px solid #D8D9D6;
margin:5px 0 ; height:auto;
}
#blockquote{
padding:5px;
width:400px; height:auto;
font-family:Georgia, "Times New Roman", Times, serif;
font-style:italic;
color:#808080;
}
 
#isi{ text-align:justify;
    padding:10px; width:380px;
}
#cite {
font-style: normal;
display: block;
 
text-transform: uppercase;
font-weight: bold;
font-style:italic;
color: #555;
padding-left:5px;
margin-top:10px;
}

Langkah 4 : Buat file tampilan slider


Untuk tampilannya beri nama testimonial.php, buat seperti skrip dibawah ini

<?php
//menghilangkan pesan error
//jika ingin ditampilkan kasi komentar saja
error_reporting(0);

//koneksi server
mysql_connect("localhost","root","password");
mysql_select_db("nama_database");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- include jQuery library -->
<script type="text/javascript" src="js/jquery.min.js"></script>
<!-- include Cycle plugin -->
<script type="text/javascript" src="js/jquery.cycle.all.latest.js"></script>
<script type="text/javascript">
$(document).ready(function() {
   $('#testimonials')
 .before('<div id="nav">')
 .cycle({
        fx: 'fade', // bisa anda pilih tipe transition, contoh : fade, scrollUp, scrollRight, shuffle
  pager:  '#nav'
     });
});
</script>
<link href="style.css" type="text/css" media="screen" rel="stylesheet" />
<title>Slider Testimonials With jQuery Cycle</title>
</head>

<body>
<? $mysql=mysql_query("SELECT*FROM testimonial");?>
<h1>Slider Testimonials With jQuery Cycle</h1>
<div id="testimonials">
 <? while($qMysql=mysql_fetch_array($mysql)){?>
 <div id="blockquote">
    <div id="isi">"<?php print $qMysql[2];?>"</div>
       <div id="cite">&ndash;<?=$qMysql[1]?> - <?=$qMysql[3]?></div>
    
  </div>
 <? }?>
</div><!--end testimonials-->
</body>
</html>


Gambar Tampilan output yang diihasilkan dari skrip diatas.

Demikian tutorial kali ini semoga bermanfaat.

Source Code

0 comments:

Pada CodeIgniter pembuatan template cukup mudah dan penggunaan menggunakan metode include yang akan menghasilkan halaman yang dinamis tanpa ...

Memulai Project CodeIgniter : Part 5 Menggunakan Template

Pada CodeIgniter pembuatan template cukup mudah dan penggunaan menggunakan metode include yang akan menghasilkan halaman yang dinamis tanpa harus mengulang-ulang script. Jadi bagian struktur website kita bagi menjadi 3 bagian yaitu header, content, dan footer.  Untuk lebih jelas kita langsung mulai.

Kita lanjutkan dari project sebelumnya jika belum membaca silakan dibaca pada link dibawah

Memulai Project CodeIgniter
Memulai Project CodeIgniter : Part 2
Memulai Project CodeIgniter : Part 3 Menghilangkan Index.php


pertama buka file config.php pada folder ./application/config/ kemudian ubah pad bagian berikut
$config['base_url'] = '';
 
ubah menjadi
$config['base_url'] = 'http://localhost/ci-projectpertama/';
 
atau sesuaikan dengan nama folder project anda


kemudian kita buat sebuah controller beri nama Chome.php pada folder application/controllers/ dan tuliskan script berikut

<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Chome extends CI_Controller{

 function __construct(){
  parent::__construct();
  $this->load->helper('url'); //kita load helper url karena kita akan menggunakan dalam pemanggilan url seperti link ke menu lain, pemanggilan style css dll
 }

 public function index(){
  $data['judul'] = "Template Codeigniter"; //kita deklrasikan variabel judul
  $this->load->view('vhome',$data); // template view vhome kita panggil dengan membawa array $data
 }
}
/* End of file Chome.php */
/* gtech labs
/* Location: ./application/controllers/Chome.php */
 

Kemudian buat sebuah file view, beri nama vhome.php tempatkan di folder ./application/views/ dan tuliskan script berikut
<!doctype html>
<html>
<head>
 <meta charset="UTF-8">
 <title><?=$judul?></title> 
 <link rel="stylesheet" type="text/css" href="<?php echo base_url()?>assets/style.css">
</head>
<body>
 <header>
 <div class="container"> 
 <h3><?php echo $judul;?></h3>
  <nav>
  <ul>
   <li><a href="<?php echo base_url().'chome' ?>">Home</a></li>
   <li><a href="<?php echo base_url().'chome/about' ?>">Tentang</a></li>
  </ul>
  </nav>
   <div class="clear"></div>
   </div>
  </header>
  <section>
   <div class="container"> 
  <h1></h1>
  <p>
   Selamat datang di project pertama codeigniter.<br>
   Pada tutorial kali kita akan membuat templating pada codeigniter<br>
   <b>Header, Content, Footer</b>
  </p>
  </div>
  </section>
  <footer> 
  <div class="container">      
   <a href="https://www.fabernainggolan.com">gTech Labs</a>
   </div>  
  </footer>
 
</body>
</html>

kemudian tambahkan script css nya beri nama style.css dan tambahkan/buat folder diroot beri nama ./assets/ 

body{color: #333; font-family: Arial; font-size:16px; }
header{ background: #111; padding: 20px; }
header h3{ float: left; color: #FFF; } 
header nav{ float: right; margin-top: 10px; }
header nav ul{  padding: 0; margin: 0; }
header nav ul li{ float: left; list-style: none; }
header nav ul li a{ padding: 15px; color: #fff; text-decoration: none; }
header nav ul li a:hover{ color: yellow; }
footer{ background: #111; padding: 20px; }
footer a{ color: #fff; text-decoration: none; }
section{ padding: 20px; min-height: 300px; }
.clear{ clear: both; }
.container{ margin: 0px auto; width: 1100px;}
 
nah setelah script selesai kita tulis mari kita jalankan di browser maka tampil output nya seperti gambar dibawah ini:



nah pada script vhome.php diatas kita telah membuat templatenya secara keseluruhan, kemudian agar template nantinya menjadi dinamis kita akan memecah bagian tag html vhome.php tersebutnya menjadi 3 bagian, yaitu header.php, vhome.php dan footer.php

Untuk header.php buat seperti berikut

<!doctype html>
<html>
<head>
 <meta charset="UTF-8">
 <title><?=$judul?></title> 
 <link rel="stylesheet" type="text/css" href="<?php echo base_url()?>assets/style.css">
</head>
<body>
<header>
 <div class="container"> 
 <h3><?php echo $judul;?></h3>
 <nav>
  <ul>
   <li><a href="<?php echo base_url().'chome' ?>">Home</a></li>
   <li><a href="<?php echo base_url().'chome/about' ?>">Tentang</a></li>
  </ul>
 </nav>
 <div class="clear"></div>
 </div>
</header>
 

Untuk vhome.php modifikasi seperti berikut :

<section>
<div class="container"> 
 <h1></h1>
 <p>
  Selamat datang di project pertama codeigniter.<br>
  Pada tutorial kali kita akan membuat templating pada codeigniter<br>
  <b>Header, Content, Footer</b>
 </p>
</div>
</section>
 

dan untuk footer.php buat seperti berikut

<footer> 
 <div class="container">      
  <a href="https://www.fabernainggolan.com">gTech Labs</a> &copy; 2018
 </div>  
</footer> 
</body>
</html>
 

Kemudian pada controller Chome.php nya kita modifikasi sedikit kita tambahkan lagi beberapa script buat seperti berikut :

<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Chome extends CI_Controller{

 function __construct(){
  parent::__construct();
  $this->load->helper('url'); //kita load helper url karena kita akan menggunakan dalam pemanggilan url seperti link ke menu lain, pemanggilan style css dll
 }

 public function index(){
  $data['judul'] = "Halaman Beranda"; //kita deklrasikan variabel judul
  $this->load->view('header',$data); // template header  
  $this->load->view('vhome',$data); // template vhome, nah pada bagian ini yang akan berubah ubah nanti disesuaikan dengan template yg pengen dibuat
  $this->load->view('footer',$data); // template footer 
 }
}
/* End of file Chome.php */
/* gtech labs
/* Location: ./application/controllers/Chome.php */
 


Nah jika kita menambahkan page untuk about maka kita tinggal menambahkan sebuah view untuk about, contoh kita buat nama filenya vabout.php  dan ditempatkan di folder /application/views/ buat script seperti dibawah

<section>
 <div class="container"> 
  <h1></h1>
  <p>
   Ini adalah About.<br>
   Selamat datang dihalaman about
  </p>
 </div>
</section>
   
 

kemudian tambahkan script dibawah ini pada controller Chome.php untuk menangani pemanggilan class about nanti nya

public function about(){
 $data['judul'] = "Halaman About"; //kita deklrasikan variabel judul
 $this->load->view('header',$data); // template header
 $this->load->view('vabout',$data); // template vabout
 $this->load->view('footer',$data); // template footer
}
 

dan berikut script lengkap contoller Chome.php
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Chome extends CI_Controller{

 function __construct(){
  parent::__construct();
  $this->load->helper('url'); //kita load helper url karena kita akan menggunakan dalam pemanggilan url seperti link ke menu lain, pemanggilan style css dll
 }

 public function index(){
  $data['judul'] = "Halaman Beranda"; //kita deklrasikan variabel judul
  $this->load->view('header',$data); // template header  
  $this->load->view('vhome',$data); // template vhome, nah pada bagian ini yang akan berubah ubah nanti disesuaikan dengan template yg pengen dibuat
  $this->load->view('footer',$data); // template footer 
 }
 public function about(){
  $data['judul'] = "Halaman About"; //kita deklrasikan variabel judul
  $this->load->view('header',$data); // template header
  $this->load->view('vabout',$data); // template vabout
  $this->load->view('footer',$data); // template footer
 }
}
/* End of file Chome.php */
/* gtech labs
/* Location: ./application/controllers/Chome.php */
 

Setelah selesai maka coba jalankan dibrowser dan hasilnya akan muncul seperti gambar dibawah
gambar halaman home/beranda

gambar halaman about/tentang


Untuk source code dari Part 1 sampai dengan Part 5 bisa didownload pada link dibawah 


Demikian artikel kali ini semoga bermanfaat...
Terima kasih telah berkunjung :D

Sumber Referensi :
1. https://www.codeigniter.com/user_guide/
2. https://www.w3schools.com/css/default.asp

0 comments: