Kamis, 21 Maret 2013

Kisah Cinta Sejati Seorang Pria Baik

Hi para insan muda, kali ini ane mau berbagi cerita tentang kisah cinta yang cukup........... cukup menggugah, terutama nih buat cewe-cewe. Wajib baca..... nih judulnya "Kisah Cinta Sejati Seorang Pria Baik".

Ini tentang kisah cinta sepasang laki-laki dan perempuan pastinya, sebut saja Jhon dan Jessica, mereka telah berumah tangga selama 7 tahun...... CEKIDOT.............

--------------------------------------------------------------------------------------------------------
       Mereka saling mencintai, namun Jessica sejak awal menutupi semua perasaan cintanya terhadap John.. Ia begitu takut apabila John mengetahui betapa ia mencintai pria itu, John lantas meninggalkannya sebagaimana kekasih kekasihnya selama ini.Tapi tidak bagi John..Ia selalu menyatakan perasaan cintanya kepada Jessica dengan tulus dan begitu terbuka. Setiap saat ketika bersama Jessica, John selalu menunjukkan cintanya yang besar,seolah-olah itulah saat akhir John bersama Jessica.

Jessica selalu bersikap tidak menyenangkan terhadap John. Setiap saat dia selalu mencoba menguji seberapa besar cinta John terhadapnya. Jessica selalu mencoba melakukan hal-hal yang keterlaluan dan diluar batas kepada John. Meski Jessica tahu betapa hal itu sungguh salah, namun melihat sikap John yang tetap berlaku baik padanya, membuat Jessica tetap bertahan untuk melihat seberapa besar kesungguhan cinta pria yg dinikahinya itu.

Hari pertama pernikahan mereka. Jessica bangun siang. Dia tidak sempat menyiapkan sarapan untuk John ketika John hendak berangkat kerja. Namun John tetap tersenyum dan mengatakan,
“ Tidak apa-apa..Nanti aku bisa sarapan di kantor..”

Saat John pulang dari kantor, Jessica tidak sengaja memasak makanan yang tidak disukai John. Meski menyadari hal itu, Jessica tetap memaksakan agar suaminya mau makan makanan itu. John tetap tersenyum dan berkata, ” Wah..sepertinya sudah saatnya aku belajar menghadapi tantangan, Masakanmu sepertinya tantangan yang hebat, sayang..Aku sudah tidak sabar untuk menyantapnya. ” Jessica terkejut, tapi tidak mengatakan apa-apa.

Tetapi Malaikat tahu betapa malam malam saat Jessica terlelap John memanjatkan doa, “Tuhan…. Di pagi pertama pernikahan kami Jessica tidak membuatkanku sarapan. Padahal aku begitu ingin bercakap-cakap di meja makan bersamanya sambil membicarakan betapa indah hari ini, di hari pertama kami menjalani kehidupan baru sebagai suami istri.. Tapi tidak apa-apa,Tuhan.. Karena sepertinya Jessica kelelahan setelah resepsi pernikahan kami tadi malam,Bantulah kekasih hatiku ini, Tuhan agar dia boleh punya tenaga yang cukup untuk menghadapi hari baru bersamaku besok..Tuhan, Engkau tau betapa aku tidak bisa makan spaghetti karena pencernaanku yang tidak begitu baik..Tapi sepertinya Jessica sudah bekerja keras untuk masak makanan itu..Mampukan aku untuk menghargai setiap apa yang dilakukan istriku kepadaku, Tuhan..Jangan biarkan aku menyakiti perasaannya meski itu tidak mengenakkan bagiku..”

Tahun kedua pernikahan mereka, John membangunkan Jessica pagi-pagi untuk berdoa bersama.. Namun Jessica menolak dan lebih memilih melanjutkan tidurnya. John tersenyum dan akhirnya berdoa seorang diri. Sore hari sepulang kantor, John mengajak Jessica berjalan-jalan ke taman.. Meski terpaksa, Jessica akhirnya mau juga ke tempat dimana dulu perasaannya begitu berbunga-bunga saat bersama John.. Tetapi Jessica menolak rangkulan John, dan berkata, “Jangan, John.. Aku malu.. ”John tersenyum dan berkata, “Ya, aku mengerti..” Jessica melihat kekecewaan dimata John, namun tidak melakukan apapun untuk menghilangkan kekecewaan itu..

Tetapi Malaikat tahu betapa malam-malam setelah Jessica terlelap, John memanjatkan doanya.. ” Tuhan.. Ampuni aku yang tidak bisa membawa istriku untuk lebih dekat padaMU pagi hari ini.. Mungkin tidurnya kurang karena pikirannya yang sedang berat.. Tapi aku yakin, Tuhan besok Jessica mau bersama-sama denganku bercakap-cakap kepadaMu.. Tuhan, Engkau juga tahu kesedihanku saat Jessica meolak kurangkul ketika ke taman hari ini. Tapi tidak apa-apa Dia sedang datang bulan, mungkin karena itu perasaannya juga jadi lebih sensitive. Mampukan aku untuk melihat suasana hati istriku, Tuhan. ”

Tahun ketiga pernikahan mereka. Mereka kini mempunyai seorang putera bernama Mark. Jessica menjadi tidak pernah lagi meneruskan kebiasaannya membaca bersama John sebelum tidur. Jessica semakin sering menolak ciuman John. Jessica memarahi John habis-habisan sore itu ketika John lupa mencuci tangan saat akan menggendong Mark ketika John pulang kerja.. Jessica tahu betapa hal itu membuat John terpukul.. Namun idealismenya terhadap mendidik Mark membuat Jessica mengabaikan perasaan John.. Dan John tetap tersenyum..

Tetapi Malaikat tahu betapa malam-malam setelah Jessica terlelap, John memanjatkan doanya.. “Tuhan, Engkau tahu betapa sedih hatiku saat ini.. Semenjak kelahiran Mark, aku kehilangan begitu banyak waktu bersama Jessica.. Aku merindukan saat-saat kami membaca bersama sebelum tidur dan menciuminya sebelum ia tertidur.. Tapi tidak apa-apa.. Dia begitu capek mengurusi Mark seharian saat aku bekerja di kantor.. Hanya saja, biarkanlah dia tetap terus tertidur dalam pelukanku, Tuhan …. Karena aku begitu mencintainya. Sore tadi Jessica memarahiku karena aku lupa mencuci tangan saat menggendong Mark, Tuhan.. Aku begitu kangen pada anakku sehingga teledor melakukan sebagaimana yang diminta istriku.. Engkau tahu betapa aku terluka akan kata-kata Jessica, Tuhan..Tapi tidak apa-apa.. Jessica mungkin hanya kuatir terhadap kesehatan anak kami Mark apabila aku langsung menggendongnya.. Kesehatan Mark lebih penting daripada harga diriku. ”

Tahun keempat pernikahan mereka. Jessica tidak ingat memasak makanan kesukaan John di hari ulang tahunnya.. Jessica terlalu sibuk belanja sehingga lupa bahwa John selalu minta dibuatkan Blackforest dengan taburan coklat dan ceri diatasnya setiap ulang tahunnya tiba. Jessica juga lupa menyetrika kemeja John yang menyebabkan John terlambat ke kantor pagi itu karena John terpaksa menyetrika sendiri kemejanya.. Jessica tau kesalahannya, namun tidak menganggap hal itu sebagai sesuatu hal yang penting.

Tetapi Malaikat tahu betapa malam-malam setelah Jessica terlelap, John memanjatkan doanya.. “Tuhan, Untuk kali pertama Jessica lupa membuatkan Blackforest kesukaanku di hari ulang tahunku ini.. Padahal aku sangat menyukai kue buatannya itu. Menikmati kue Blackforest buatannya membuatku bersyukur mempunyai istri yang pandai memasak sepertinya, dan merasakan cintanya padaku.. Namun tahun ini aku tidak mendapatinya. Tapi tidak apa-apa.. Mungkin lebih banyak hal-hal lain yang jauh lebih penting daripada sekedar Blackforest itu. Paling tidak, aku masih mendapatkan senyuman dan ciuman darinya hari ini. Ampuni aku, Tuhan apabila tadi pagi aku lupa tersenyum kepada Jessica.. Aku terlalu sibuk menyetrika bajuku dan memikirkan pekerjaanku di kantor.. Jessica sepertinya lupa untuk melakukan hal itu, meski aku sudah meminta tolong padanya tadi malam. Jangan biarkan aku melampiaskan emosiku karena dampratan atasanku
akibat keterlambatanku hari ini kepada Jessica, Tuhan.. Jessica mungkin keliru menyetrika kemeja mana yang seharusnya kupakai hari ini.. Lagipula, sepatuku begitu mengkilap.. Aku yakin Jessica sudah berusaha keras agar aku kelihatan menarik saat presentasiku tadi.. Terima kasih untuk kebaikan istriku, Tuhan. ”

Tahun kelima pernikahan mereka. Jessica menampar dan menyalahkan John karena Mark sakit sepulang mereka berenang.. John terlalu asyik bermain-main dengan Mark sehingga tidak menyadari betapa Mark sangat sensitive terhadap dinginnya air kolam renang, yang mengakibatkan Mark terpaksa dirawat dirumah sakit …. Jessica mengancam akan meninggalkan John apabila terjadi apa-apa dengan Mark.. Jessica melihat genangan air mata di mata John,namun kekerasan hatinya lebih menguasainya ketimbang perasaan John.

Tetapi Malaikat tahu betapa saat itu John lantas menuju ke Kapel rumah sakit dan memanjatkan doanya sambil menangis.. ”Tuhan.. Tadi Jessica menamparku karena kelalaianku menjaga Mark sehingga dia sakit.. Belum pernah Jessica bersikap dan berkata sekasar itu padaku, Tuhan.. Tapi tidak apa-apa.. Jessica benar-benar kuatir terhadap anak kami sehingga ia bersikap demikian.. Tapi Tuhan, aku begitu terluka saat ia mengatakan akan meninggalkanku. Engkau tahu betapa ia adalah belahan jiwaku.

Jangan biarkan hal itu terjadi, Tuhan.. Mungkin dia begitu dikuasai kekuatiran sehingga melampiaskannya padaku.. Tidak apa-apa,Tuhan.. Tidak apa-apa. Asal dia mendapat ketenangan, aku akan merasa bersyukur sekali.. Dan sembuhkanlah putera kami, Mark agar dia boleh kembali dapat ceria dan bermain-main bersama kami lagi, Tuhan.. ”

Tahun keenam pernikahan mereka. Jessica semakin menjaga jarak dengan John setelah kehadiran Rebecca, puteri mereka.. Jessica tidak pernah lagi menemani John makan malam karena menjaga puteri mereka yang baru berusia 5 bulan..

Jessica juga menjual kalung berlian pemberian John dan menggantinya dengan perhiasan lain yang lebih baru. Ketika John mengetahui hal itu, Jessica tau John menahan amarahnya, namun Jessica berdalih, “John, itu hanya kalung berlian biasa. Lagipula,aku bukan menjualnya, melainkan menukarnya dengan perhiasan yang lebih baru.. ”

Tetapi Malaikat tahu betapa malam-malam setelah Jessica terlelap,John memanjatkan doanya.. “Tuhan, Aku begitu kesepian melewatkan makan malam sendirian tanpa Jessica bersamaku..
Aku begitu ingin terus bercerita dan tertawa bersamanya di meja makan.. Engkau tau, itulah penghiburanku untuk melepas kepenatanku setelah seharian bekerja di kantor.. Tapi tidak apa-
apa.. Rebecca tentu lebih membutuhkan perhatiannya daripadaku. Lagipula, Mark kadang-kadang mau menemaniku.. Hanya saja,jangan biarkan aku memendam sakit hati kepada Jessica karena menjual kalung pemberianku. . Engkau tau begitu lama aku menabung dan bekerja ekstra demi menghadiahinya kalung itu, hanya untuk membuktikan terima kasihku padanya atas kesetiaan dan pengabdiannya sebagai istriku dan ibu dari anak-anakku.

Ampuni aku apabila tadi aku sempat berpikir untuk marah padanya.. ”Tahun ketujuh pernikahan mereka.. Jessica sama sekali tidak mengindahkan kebiasaannya membelai kepala John dan mencium kening suaminya sebelum John berangkat kantor.. Padahal Jessica tau, selama ini apabila dia lupa melakukannya, John selalu kembali kerumah siang hari demi mendapatkan belaian dan ciuman Jessica untuknya.. Karena John tidak akan pernah tenang bekerja apabila hal itu belum dilakukan Jessica padanya.. Jessica tidak mengucapkan I LOVE YOU untuk kali pertama dalam 7 tahun pernikahan mereka..

Dan di tahun ketujuh itu pula, John mengalami kecelakaan saat akan berangkat ke kantor.. Ia mengalami pendarahan yang hebat yang membuatnya terbaring tidak sadarkan diri di ranjang rumah sakit..
Jessica begitu terguncang dan terpukul.. Ia begitu takut kehilangan John, suami yang dicintainya. . Yang selalu ada kapan saja dia butuhkan.. Yang selalu dengan tersenyum menampung semua emosi dan kemarahannya. Yang tak pernah berhenti mengatakan betapa John mencintainya. . Tak sedikitpun Jessica beranjak dari sisi tempat tidur John.. Tangannya menggenggam erat jemari suaminya yang terbaring lemah tak sadarkan diri.. Bibirnya terus mengucapkan I LOVE YOU, karena ia ingat kalau ia belum mengatakan kalimat itu hari ini..

Karena begitu sedih dan lelah menunggui John, Jessica tertidur..Dalam tidurnya, malaikat yang selama ini mendengar doa-doa John pada Tuhan membawa Jessica melihat setiap malam yg John lewatkan untuk mendoakan Jessica.. Ia menangis sedih melihat ketulusan dan rasa cinta yg besar dari John padanya.. Tak sedikitpun John menyalahkannya atas semua sikapnya yang tidak mempedulikan perasaan dan harga diri John selama ini.. Alih-alih demikian, John malahan menyalahkan dirinya sendiri.. Jessica menangis menahan perasaannya. Dan untuk kali pertama dalam hidupnya, Jessica berdoa, “Tuhan, ampuni aku
yang selama ini menyia-nyiakan rasa cinta suamiku terhadapku. Ampuni aku yang tidak memahami perasaan dan harga dirinya selama ini.. Beri aku kesempatan untuk menunjukkan cintaku pada suamiku, Tuhan.. Beri aku kesempatan untuk meminta maaf dan melayaninya sebagai suami yang kucintai.. ”

Dan ketika Jessica terbangun, Ia melihat pancaran kasih suaminya menatapnya.. ”Kamu keliatan begitu lelah, sayang.. Maafkan aku yang tidak berhati-hati menyetir sehingga keadaannya mesti jadi begini dan membuatmu kuatir.. Aku tidak konsentrasi saat menyetir karena memikirkan bahwa kau lupa mengatakan I LOVE YOU padaku. Belum selesai John berbicara, Jessica lantas menangis keras dan menghambur ke pelukan suaminya..

“Maafkan aku, John..Maafkan aku.. I LOVE YOU..I really Love you.. Kaulah matahariku, John..Aku tidak bisa bertahan tanpamu..Aku berjanji tidak akan pernah lupa lagi mengatakan betapa aku mencintaimu. . Aku berjanji tidak akan pernah mengabaikan perasaan dan harga dirimu lagi.. I LOVE YOU, John.. I LOVE YOU. ”


Renungkan!
Berapa banyak diantara kita yg menjadi seperti Jessica? Yang mengabaikan perasaan kekasih hati kita demi kepentingan dan harga diri kita sendiri? Jangan sampai terjadi sesuatu yang berat untuk kita lalui demi menyadari betapa berharganya orang-orang yang mengasihi kita. Lebih dari itu, cinta yang sesungguhnya adalah ketika kita bisa seperti John, yang mengabaikan kepentingan dirinya dan perasaannya demi menjaga dan menunjukkan cintanya kepada pasangannya. Yang menjadikan pasangan hidup kita sebagai subjek untuk dikasihi dan dilayani, bukan sebaliknya.


sumber

Kamis, 26 Juli 2012

BEKERJA DENGAN FRAMEWORK : CODEIGNITER



CodeIgniter adalah salah satu framework yang dapat digunakan untuk membangun aplikasi web menggunakan PHP. Tujuan utamanya adalah agar developer dapat bekerja dengan cepat pada proyek yang dikerjakan daripada harus menulis kode dari awal. CodeIgniter telah menyediakan library yang untuk pekerjaan yang biasa dilakukan secara umum.
CodeIgniter menggunakan pendekatan MVC (Model View Controller) yang berarti adanya pemisahan antara logika aplikasi dan presentasinya kepada user.
Hal-hal yang dibahas dalam tutorial ini adalah dasar penggunaan CodeIgniter.
Hal-hal yang perlu dipersiapkan untuk menggunakan CodeIgniter adalah:
1.      CodeIgniter
CodeIgniter yang digunakan dalam tutorial ini adalah CodeIgniter V 1.7.2
PHP version 4.3.2 atau yang lebih baru
2.      Database
Database dibutuhkan untuk semua web programming. Database yang didukung oleh CodeIgniter antara lain MySQL (4.1+), MySQLi, MS SQL, Postgres, Oracle, SQLite, and ODBC. Dalam tutorial ini, kita akan bekerja dalam localhost. Aplikasi yang dipakai dalam tutorial ini adalah XAMPP 1.7.7.
3.      Netbeans 7.1
Aplikasi ini digunakan sebagai IDE.
1.     Buka file config.php yang berada pada direktori config. Kemudian isi array $config[‘base_url’] dengan http://localhost/namaProject. $config[‘base_url’] berguna untuk menetapkan halaman load utama.

Description: C:\Users\Ayunisa\Desktop\Training\config.jpg
Gambar 1. config.php
2.       Buka file routes.php yang berada pada direktori config. Kemudian isi array $route[‘default_controller’] dengan nama file controller yang kamu buat (misalkan nama file controller tersebut adalah ‘province’).
Description: C:\Users\Ayunisa\Desktop\Training\routes.jpgDescription: C:\Users\Ayunisa\Desktop\Training\routes.jpgDescription: C:\Users\Ayunisa\Desktop\Training\routes.jpg
Gambar 2. routes.php
3.  Buka file database.php yang terdapat pada direktori config. Kemudian isi $db[‘default’][‘hostname’] dengan lokasi kerja anda. Karena tidak bekerja menggunakan client server, lokasi kerja anda adalah localhost.
Isi array $db[‘default’][‘username’] dengan username phpmyadmin anda (misalkan username yang digunakan adalah root).
Isi array $db[‘default’][‘password’] dengan password yang digunakan pada phpmyadmin.
Isi array $db[‘default’][‘database’] dengan nama database yang digunakan (misalkan nama database yang digunakan adalah provincecity).

Description: C:\Users\Ayunisa\Desktop\Training\database.jpg
Gambar 3. database.php
4.       Buka file autoload.php yang berada pada direktori config. Kemudian isi array $autoload[‘libraries’] dengan library yang akan anda gunakan (diasumsikan library yang digunakan adalah database).
Isi array $autoload[‘model’] dengan model yang akan digunakan pada saat pembuatan aplikasi web (misalkan naam model adalah CityModel).
Description: C:\Users\Ayunisa\Desktop\Training\autoload.jpg
Description: C:\Users\Ayunisa\Desktop\Training\autoload.jpg
Gambar 4. autoload.php
Model adalah kelas PHP yang didesain untuk bekerja dengan informasi dalam database. Kelas ini dapat digunakan untuk memasukkan, update, dan memperoleh data menggunakan query atau menggunakan library yang telah disediakan CodeIgniter.
Secara sederhana, view adalah suatu halaman web, atau suatu fragmen halaman web seperti header, footer, sidebar, dll. View tidak pernah dipanggil secara langsung, harus di-load oleh suatu controller.
Controller adalah jantung dari aplikasi yang dibangun. Secara sederhana, controller adalah suatu class file yang dinamai sehingga dapat diasosiasikan dengan URI. Sebagai informasi, URI (Uniform Resource Identifier) mengidentifikasikan resource berdasarkan lokasi, atau nama, atau keduanya. Misalnya: example.com/index.php/blog/.

1.3.1    Menampilkan Data Dalam Tabel

Ikutilah langkah-langkah berikut untuk menampilkan data dalam table.
1.      Buat file baru dengan nama file yang sesuai dengan isi array $autoload[‘model’] pada file autoload.php. Nama yang digunakan adalah CityModel. File model harus berada dalam direktori models.
                                                       
Description: C:\Users\Ayunisa\Desktop\Training\Modeller.jpg
Gambar 5.CityModel.php
Isi dari file CityModel.php adalah sebagai berikut ini:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
class CityModel extends Model{
       function CityModel(){
            parent :: Model();
       }
       function getCity(){
            $sql = 'select * from mst_city';
            $query = $this->db->query($sql);
            if($query->num_rows == 0){
                return null;
            }else{
                return $query->result();
            }
        }      
}

Kelas CityModel harus meng-extends class Model. Fungsi CityModel() merupakan konstruktor yang memanggil semua fungsi yang ada dalam class Model. Fungsi getCity() berfungsi untuk mengambil semua data dari table mst_city. Query $query = $this->db->query($sql); berfungsi untuk megeksekusi query $sql.
Potongan kode return $query->result(); berfungsi mengembalikan hasil query dalam bentuk array.

  1. Buat file baru dengan nama file yang sesuai pada nama controller yang sudah anda definisikan pada file routes.php. Pada konfigurasi di atas, nama controller yang digunakan adalah ‘province’. File controller harus berada pada direktori controller.

Description: C:\Users\Ayunisa\Desktop\Training\controller.jpg
Gambar 6. province.php

Isi dari file province.php adalah sebagai berikut:

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
class Province extends Controller{
        function Province(){
            parent::Controller();
        }
        function index(){
            $data['title'] = ' - Training [Show City]';
            $data['city']=$this->CityModel->getCity();
            $this->load->view('show_data',$data);
        }       
    }

Ketika aplikasi pertama kali dijalankan, fungsi index() adalah fungsi yang pertama kali di-load. Kelas Province harus meng-extends kelas Controller.
Fungsi Province merupakan konstruktor yang memanggil semua fungsi yang ada pada kelas Controller.
Pada fungsi index() terdapat potongan kode $data[‘city’] = $this->CityModel->getCity(); yang berfungsi untuk menjalankan fungsi fungsi getCity() yang terdapat pada kelas CityModel. Kembalian dari fungsi tersebut ditampung dalam sebuah variabel array yang bernama $data[‘city’].
Pada fungsi index terdapat kode $this->load->view(‘show_data’,$data); yang berarti ketika aplikasi dijalankan, apa yang akan ditampilkan diatur oleh file show_data.php yang terdapat pada direktori view. Parameter $data pada potongan kode tersebut berarti variabel array $data[] telah dikirimkan ke view yang akan di-load.

  1. Buatlah file view sesuai dengan nama view yang di-load oleh controller (show_data). File ini harus diletakkan dalam direktori views.
Description: C:\Users\Ayunisa\Desktop\Training\views.jpg
Gambar 7. show_data.php
Untuk menampilkan  semua data yang telah diambil pada saat mendefenisikan file model dan controller dapat dilakukan dengan kode berikut ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
<html>
    <body>
        <div id="index">
          <table id="mainTable" align="center" CELLPADDING=0 CELLSPACING=0                    border="0"  width="1000">
       <tr>
<td width="1000" colspan="3" align="left" id="rightPart" style="vertical-align: top;padding-right: 40px">
<?
   echo "<table border=1 width=100%  id='tabel'>";
   echo "<tr>";
   echo "<th align='center' width='70'>ID City</th>";
   echo "<th align='center' width='70'>ID Province</th>";
   echo "<th align='center' width='120'>City Name</th>";
   echo "</tr>";
      if($city !=null){
         foreach($city as $row){
            echo "<tr>";
            echo "<td>".$row->id_city."</td>";
echo "<td>".$row->id_province."</td>";
echo "<td>".$row->cityname."</td>";
echo "<td align=center>";?>
echo "</tr>";
}    
?>
                        
       </td>    
      </tr>
     </table>
   </div>
  </body>
</html>


Keterangan :
·         if($city !=null){
variable $city di dapat dari variable array penampung pada saat pembuatan file controller. Lihat pada potongan kode yang telah di buat di controller berikut :
$data['city']=$this->CityModel->getCity();
Maka akan di periksa apakah isi dari table dengan spesifikasi yang telah di tentukan pada query yang dibuat ada atau tidak.
·         foreach($city as $row){
Fungsi dari potongan kode diatas yaitu mengeluarkan semua isi array $city dan ditampung pada variable $row.
·         echo "<td>".$row->id_city."</td>";
Fungsi dari potongan kode diatas yaitu menampilkan data pada field id_city.
·         echo "<td>".$row->id_province."</td>";
Fungsi dari potongan kode diatas yaitu menampilkan data pada field id_province.
·         echo "<td>".$row->cityname."</td>";
Fungsi dari potongan kode diatas yaitu menampilkan data pada field cityname.

4.         Hasil yang didapatkan dari implementasi kode di atas adalah:Description: C:\Users\Ayunisa\Desktop\Training\show_data.jpg










Gambar 8. Hasil implementasi kode

1.3.2    Menghapus Data

Ikutilah langkah-angkah berikut ini untuk melakukan pengahpusan data.
1.      Bukalah file dalam direktori model yang telah dibuat sebelumnya. Kemudian tambahkan kode di bawah ini.
1.
2.
3.
4.
function  deleteCity($id_city){
    $this->db->where('id_city',$id_city);
    $this->db->delete('mst_city');
}
Keterangan :
·         Fungsi yang ditambahkan dalam file tersebut disebut deleteCity($id_city). $id_city adalah parameter fungsi tersebut.
·         $this->db->where('id_city',$id_city);
Potongan kode diatas merupakan library yang sudah disediakan CodeIgniter untuk menetapkan kondisi. Kode ini sama artinya dengan “Where” pada query database biasa. Parameter pertama berisi field database yang akan di kondisikan, kemudian parameter yang kedua berisi value.
·         $this->db->delete('mst_city');
Potongan kode diatas berfungsi untuk menghapus data dari table mst_city.

2.      Buka file controller yang telah dibuat sebelumnya. Kemudian tambahkan kode berikut ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
function hapus_City($id_city){
      $this->CityModel->deleteCity($id_city);
       redirect(‘province/tampilkan_City’);
}
function tampilkan_City(){
            $data[‘city’] = $this->CityModel->getCity();
            $this->load->view(‘show_data’, $data);
}
Keterangan:
·         Fungsi yang ditambahkan dalam file tersebut adalah hapus_City($id_city). $id_city adalah parameter fugsi tersebut.
·         $this->CityModel->deleteCity($id_city);
Potongan kode diatas berfungsi untuk memanggil fungsi deleteCity($id_city) yang berada pada class CityModel.
·         redirect('province/tampilkan_City');
Potongan kode diatas berfungsi untuk  memanggil fungsi tampilkan_City() yang berada pada class Province.
·         Fungsi tampilkan_City() merupakan fungsi yang memiliki tugas yang sama dengan fungsi index() yaitu me-load file show_data.php.
3.      Tambahkan link hapus pada file show_data.php. Lihat potongan kode di bawah ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
<html>
   <body>
      <div id="index">
         <table >
          <tr>
         <td >
         <?      
            echo "<table border=1 width=100%    id='tabel'>";
echo "<tr>";
            echo "<th align='center' width='70'>ID City</th>";
            echo "<th align='center' width='70'>ID Province</th>";
            echo "<th align='center' width='120'>City Name</th>";
            echo "<th align='center' width='70'>Action</th>";
            tr>";
               if($city !=null){
                  foreach($city as $row){
                     echo "<tr>";
                     echo "<td>".$row->id_city."</td>";
                     echo "<td>".$row->id_province."</td>";
                     echo "<td>".$row->cityname."</td>";
                     <a href=' <?=base_url()?>  index.php/hapus_City/   <?=$row->id_city;?>'>        <div>Hapus</div></font></a> </td>
                     echo "<td align=center>";?>
                     echo "</tr>";                 
                } ?>
                        
        </td>    
       </tr>
      </table>
    </div>
  </body>
</html>
Keterangan:
<a href=' <?=base_url()?> index.php/hapus_City/   <?=$row->id_city;?>'>  <div>Hapus</div></font></a> </td>
Potongan kode diatas berfungsi untuk menampilkan link hapus pada view.
Fungsi base_url() merupakan url utama. index.php/hapus_City/  befungsi untuk memanggil fungsi hapus_City() pada file controller. $row->id_city berfungsi sebagai nilai parameter yang dibutuhkan fungsi hapus_City() , dimana nilai nya diambil dari field id_city pada tabel mst_city.
4.      Maka hasil yang akan didapatkan adalah sebagai berikut ini.




Description: C:\Users\Ayunisa\Desktop\Training\delete.jpg
Gambar 9. Link hapus data

1.3.3    Memasukkan Data Kedalam Database

Untuk memasukkan data ke dalam database, ikutilah langkah-langkah berikut ini:
1.      Untuk menambahkan data kota ke dalam tabel mst_city, kamu perlu membuat satu button  untuk membuka form penambahan data. Perhatikanlah kode berikut ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
<html>
<head>
   <title>Training<? echo $title; ?></title>
</head>
    <body>
    <table>     
   <tr>     
       <td width="1000">
               <?
                    echo "<table width=100%>";
                    echo "<tr><td> <a href='".base_url()."index.php/province/tambah_City'><button>Tambah City</button></a></td></tr>";
                    echo "</table>";
                    echo "<table border=1 width=100%  id='tabel'>";
     
                    echo "<tr>";
                    echo "<th align='center' width='70'>ID City</th>";
                    echo "<th align='center' width='70'>ID Province</th>";
                    echo "<th align='center' width='120'>City Name</th>";
                    echo "<th align='center' width='70'>Action</th>";
                    echo "</tr>";
Keterangan:
Bagian yang berwarna merah adalah kode yang menciptakan tombol yang akan mengeksekusi fungsi tambah_city() yang terdapat dalam file province.php.
Hasil yang didapatkan setelah kode tersebut di eksekusi ditunjukkan oleh gambar berikut.
Gambar 10. Button Tambah City
Untuk memasukkan data baru ke dalam database, buatlah suatu form yang berguna untuk memudahkan user untuk memasukkan data. Berikut ini adalah kode yang digunakan untuk membuat form insert dalam tutorial ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
<html>
<head>
    <title>Toko Baju<? echo $title; ?></title>
   
</head>
    <body>
    <table>
       <tr>  
           <td>
               <form method="POST" action="<?php echo base_url()?>index.php/province/tambah_City">
              <table border="0" align ="left" style="border:#6699ff 1px solid; padding:10px;  border-radius: 7px 7px 7px 7px">
                  <tr>
                     <td colspan ="2"><b>Form Penambahan City</b></td>
                  </tr>
                    <tr>
                        <td colspan ="2"align="right">
                         <font color="#f00">
                            <?if ($this->session->flashdata('notification')) {
                         echo $this->session->flashdata('notification');
                         }?>
                         </font></td>
                    </tr>   
                  <tr>
                     <td colspan="2" style="border-top:#6699ff 2px solid;"></td>
                  </tr>
                    <tr>
                     <td style="vertical-align: top">
                         <label for="id_city">ID City</label>
                     </td>
                     <td>
                         <input type="text" size="45" name="id_city" id="text-field" placeholder="Masukkan Id City"></input>
                     </td>
                  </tr>
                    <tr>
                        <td width="150">
                         <label for="id_province">Id Province</label>
                     </td>
                         <td width="150">
                            <select name="id_province">
                                <?php
                                    foreach($province as $row){
                                        echo "<option  size='25' value='".$row->id_province."'>".$row->id_province."</option>";
                                    }
                                ?>
                            </select>
                        </td>
                    </tr>
                   
                  <tr>
                     <td style="vertical-align: top">
                         <label for="cityname">City Name</label>
                     </td>
                     <td>
                         <input type="text" size="45" name="cityname" id="text-field" placeholder="Masukkan nama kota"></input>
                     </td>
                  </tr>
                    </tr>   
                 
                   <tr align="center">
                     <td colspan="2" style="border-top:#6699ff 2px solid;" height="40">
                         <button type="submit" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" role="button" aria-disabled="false">
                           <span class="ui-button-text">Tambah</span>
                         </button>
                     </td>
                  </tr>
              </table>                 
</body>
</html>
Hasil pengeksekusian kode tersebut dapat dilihat pada gambar berikut.
Gambar 11. Form Penambahan City
2.      Pada file CityModel.php yang terdapat dalam direktori models, tambahkanlah kode berikut ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
function getProvince(){
   $sql = 'select * from mst_province';
   $query = $this->db->query($sql);
   if($query->num_rows == 0){
      return null;
   }else{
      return $query->result();
   }
}
Fungsi ini berguna untuk mengambil semua data yang terdapat dalam tabel mst_province.
Pada file dan direktori yang sama juga, tambahkan lagi kode berikut ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
function checkCity($id_city){
   $sql  = "select * from mst_city";
   $sql .= " where id_city = '$id_city'";
   $query = $this->db->query($sql);
   if($query->num_rows() == 1){
      return true;
   }else{
      return false;
   }
}
Fungsi ini berguna untuk memeriksa apakah kota yang ditambahkan sudah ada sebelumnya. Apabila kota yang ditambahkan sudah ada, fungsi ini akan mengembalikan true dan akan mengembalikan false jika sebaliknya.
Tambahkan juga kode berikut ini pada file dan direktori yang sama.
1.
2.
3.
4.
5.
function addCity($id_city, $id_province, $cityname){
   $sql = array ('id_city '=>$id_city ,'id_province' =>$id_province,' cityname'=>$cityname);
   $this->db->insert('mst_city',$sql);
}
Fungsi addCity($id_city, $id_province, $cityname) tersebut berguna untuk memasukkan data ke dalam tabel mst_city. Parameter $id_city menampung kode kota yang dimasukkan, $id_province menampung kode provinsi yang dimasukkan, dan $cityname menampung nama kota yang dimasukkan. Variabel $sql adalah array yang menampung nilai semua parameter dalam fungsi tersebut. $this->db->insert('mst_city',$sql); adalah perintah yang memasukkan nilai array $sql ke dalam tabel mst_city.
3.      Pada file province.php yang terdapat dalam direktori controllers, tambahkan lah kode berikut ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
function tambah_City(){
      $data['title'] = " - Tambah City";
      $data['province'] = $this->CityModel->getProvince();
       $this->form_validation->set_rules ('id_city', 'required|trim |max_length[20]|css_clean');
      $this->form_validation->set_rules('id_province', 'required| trim |max_length[20]|css_clean');
      $this->form_validation->set_rules('cityname', 'required |trim| max_length[20]|css_clean');
           
      if($this->form_validation->run() == FALSE){
         $this->session->set_flashdata('notification','Data Tidak Boleh Kosong');
         $this->load->view("addCity", $data);
      }else{
         if ($this->CityModel->checkCity($this->input->post ('id_ city'))==true){
            $this->session->set_flashdata('notification','Id City tidak valid');
            $this->load->view("addCity", $data);
         }
         else{
            $this->CityModel->addCity($this->input->post('id_city') ,$this->input->post('id_province'),$this->input->post('cityname'));
            redirect("province/tampilkan_City");
         }
      }
}
Keterangan:
Kode yang berwarna merah adalah kode yang mengatur validasi nilai yang dimasukkan user. Field yang disediakan tidak boleh kosong dan jumlah karakter yang bisa dimasukkan adalah 20 karakter. Berikut ini adalah field yang disediakan.
Kode yang berwarna biru berarti bahwa apabila kondisi form validasi yang telah disebutkan tidak terpenuhi, suatu notifikasi akan dimunculkan kepada user.
Kode yang berwarna hijau berarti bahwa apabila kode city yang dimasukkan user salah, suatu nontifikasi akan diberikan kepada user yang menandakan bahwa id city yang dimasukkan salah. Dan file addCity.php yang berada dalam direktori views akan di-load.
Kode yang berwarna coklat akan dieksekusi apabila semua kondisi untuk memasukkan nilai city telah terpenuhi. Kode tersebut adalah kode yang akan memasukkan nilai city ke dalam tabel berdasarkan query yang ada pada fungsi addcity() yang ada dalam file CityModel.php. Setelah itu, semua data akan ditampilkan kepada user sesuai dengan fungsi tampilkan_City() yang berada dalam file province.php.

1.3.4    Mengubah Data

Untuk mengubah data yang ada dalam database, ikutilah langkah-langkah berikut ini.
1.      Untuk mengubah data, terlebih dahulu kita perlu menyedikan suatu link yang akan mengarahkan user ke form untuk mengubah data. Perhatikanlah kode berikut ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
<html>
if($city !=null){
                        foreach($city as $row){
                            echo "<tr>";
                            echo "<td>".$row->id_city."</td>";
                            echo "<td>".$row->id_province."</td>";
                            echo "<td>".$row->cityname."</td>";
                            echo "<td align=center>";
               ?>                                 <a href='<?=base_url() ?> index.php/province/ubah_City/<?=$row->id_city;?>'><div>Ubah</div></a>
               <a href='<?=base_url()?>index.php/province/hapus_City/<?=$row->id_city;?>'<div>Hapus</div></a>
                                    <a href='<?=base_url()?>index.php/province/tampilkan_City'></a>       
                                <?php
                            echo "</tr>";
                        }
                    }
                    echo "</table>";
               ?>
    </table>
  </body>
</html>
Potongan kode diatas adalah bagian dari file show_data.php yang terdapat dalam direktori views. Bagian yang berwarna merah berfungsi untuk membuat link kepada form untuk mengubah data. Salinlah kode yang berwarna merah di atas dan anda akan mendapatkan hasil seperti gambar berikut ini.
Gambar 12. Link ubah
Selanjutnya perlu dibuat suatu form untuk mengubah data. Berikut ini adalah kode yang digunakan untuk membuat form untuk mengubah data. Copy lah file berikut dan letakkan dalam satu file baru bernama ubahCity.php.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
<html>
<body>
 <table id="mainTable" align="center" CELLPADDING=0 CELLSPACING=0 border="0"  width="1000">
         <tr>
             <td >
                 <table border="1" align="center" style="border:#aeaeae 1px solid; padding:20px;  border-radius: 8px 8px 8px 8px">
                     <tr> 
                        <td colspan ="2" align="center">
                            <?php foreach($cityid as $row){
                                    echo form_hidden('id_city', $row->id_city);
                            }?>
                            Ubah City
                        </td>
                     </tr>
                     <tr>
                        <td>
                              <? foreach ($cityid as $kat){
                                    echo form_open(base_url().'index.php/province/Ubah_City/'.$kat->id_city);
                               
                                }?>
                              Id City
                        </td>
                        <td>
                            <select name="kota">
                                <?php
                                    foreach($city as $rows){
                                        if($rows->id_city == $row->id_city)
                                            echo "<option  size='25' selected='selected' value='".$rows->id_city."'>".$rows->id_city."</option>";
                                        else
                                            echo "<option  size='25' value='".$rows->id_city."'>".$rows->id_city."</option>";
                                    }
                                ?>
                            </select>
                        </td>
                     </tr>
                     <tr>
                        <td>
                             Id Province
                        </td>
                        <td>
                              <select name="provinsi">
                                   <?php
                                    foreach($city as $rows){
                                        if($rows->id_province == $row->id_province)
                                            echo "<option  size='25' selected='selected' value='".$rows->id_province."'>".$rows->id_province."</option>";
                                        else
                                            echo "<option  size='25' value='".$rows->id_province."'>".$rows->id_province."</option>";
                                    }
                                ?>                     
                              </select>
                        </td>
                     </tr>
                     <tr>
                         <td>
                             City Name
                         </td>
                         <td>
                             <input type ="text" name="cityname" value="<? foreach ($cityid as $kat){echo $kat->cityname;}?>"></input>
                         </td>
                     </tr>
                     <tr>
                        <td>
                                <?echo validation_errors();?>

                                <div><?  echo form_submit(array('id'=>'submit','name'=>'submit'),'Update');?></div>
                                 
                                <?  echo form_close();?>
                                
                        
                          </td>
                    
                    </tr>
             </table>
        </td>
       </tr>
  </table>
</body>
</html>
Hasil dari eksekusi kode di atas dapat dilihat pada gambar berikut ini.
Gambar 13. Form update

2.      Tambahkanlah kode berikut ini pada file show_data.php yang terdapat dalam direktori models.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
function getCity(){
            $sql = 'select * from mst_city';
            $query = $this->db->query($sql);
            if($query->num_rows == 0){
                return null;
            }else{
                return $query->result();
            }
        }
        function getCityId($cityid){
            $sql = 'select * from mst_city';
            $sql .= " where id_city ='$cityid'";
            $query = $this->db->query($sql);
            if($query->num_rows == 0){
                return null;
            }else{
                return $query->result();
            }
        }
Kedua fungsi yang diberikan diatas berfungsi untuk mengambil nilai yang tersimpan dalam tabel mst_city. Fungsi getCity() berguna untun mengambil semua nilai dalam tabel mst_city tanpa terkecuali. Sedangkan fungsi getCityId($cityid) berguna untuk mengambil nilai city berdasarkan id yang dispesifikkan oleh parameter $cityid.
3.      Pada controller, province.php, tambahkanlah kode berikut ini.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
function toUbahCity($cityid){
           $data['city']=$this->CityModel->getCity();
           $data['cityid'] = $this->CityModel->getCityId($cityid);
           $this->load->view('ubahCity',$data);
        }
       

        function ubah_City($id_city){
            $this->db->where('id_city',$id_city);
            $this->db->update('mst_city',array('id_city'=>$this->input->post('kota'),'id_province'=>$this->input->post('provinsi'),'cityname'=>$this->input->post('cityname')));
            redirect('province/tampilkan_City');
        }
 Fungsi yang pertama kali di-load ketika link ubah diklik adalah fungsi toUbahCity($cityid). Fungsi ini berguna untuk me-load form untuk mengubah data.
Fungsi ubah_city($id_city) adalah fungsi yang akan mengubah nilai city berdasarkan id tertentu yang dispesifikkan oleh parameter $id_city. Setelah itu hasilnya akan ditampilkan kepada pengguna dengan mengeksekusi fungsi tampilkan_City() yang berada dalam file province.php.