Tampilkan postingan dengan label ci. Tampilkan semua postingan
Tampilkan postingan dengan label ci. Tampilkan semua postingan

Senin, 19 Desember 2016

CODEIGNITER HMVC MEMBUAT BARCODE DENGAN ZEND FRAMEWORK 2

,
Bagaimanakan membuat atau menampilkan barcode menggunakan codeigniter? Berikut bahan yang diperlukan
  1. Codeigniter (disini saya menggunakan codeigniter yang sudah terintegrasi HMVC sudah dijelaskan di posting  )
  2. Zend Framework (saya menggunakan yg versi 2.4.9) official website untuk medownload sesuai versi yang diinginkan https://framework.zend.com/downloads/archives
Step 1
Buatlah sebuah folder bernama Zend di folder libraries aplikasi kita. Extract hasil download zend framework ZendFramework-2.4.9.zip, buka folder library/Zend lalu pilih folder Barcode, ServiceManager, Stdlib, dan Validator, copy folder tersebut ke folder Zend yang berada di folder libraries project kita sehingga struktur folder aplikasi menjadi seperti berikut
Step 2
Buatlah sebuah file bernama Zend.php di folder libraries aplikasi yang dibuat. Lalu ketikan script berikut

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

class Zend {

 public function __construct($class = NULL)
 {
  ini_set('include_path',
  ini_get('include_path'). PATH_SEPARATOR. APPPATH. 'libraries');
 
  if($class)
  {
   require_once(string) $class.'.php';
   log_message('debug', "Zend Class $class Loaded");
  }else
  {
   log_message('debug', "Zend Class Initialized");
  }
 }

 public function load($class)
 {
  require_once(string) $class.'.php';
  log_message('debug', "Zend Class $class Loaded");
 }
}

Step 3
Buatlah sebuah folder bernama barcode di folder assets yang nantinya digunakan sebagai tempat menampung gambar barcode yang telah dibuat.
Buatlah sebuah modul baru saya namakan modul barcode. Di controller barcode saya ketikan script sebagai berikut
defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * Description of Barcode
 * @author IMAM SYAIFULLOH
 */
class Barcode extends MX_Controller
{
 
 function __construct()
 {
  parent::__construct();
 }

 public function createbarcode()
 {
 $str = 'IMAM SYAIFULLOH';
 $location = 'assets/barcode/';
        $this->load->library('Zend/Barcode/Barcode');
        $file = Zend\Barcode\Barcode::draw('code128', 'image', array('text' => $str), array());
        $store_image = imagepng($file, FCPATH . $location."{$str}.png");
        $img = $location."{$str}.png";
        $this->load->helper('html');
        echo img($img);
 }
}
Pada script diatas saya hanya menampilkan secara langsung barcode yang telah dibuat ketika dunction create barcode dieksekusi, untuk implementasi lainnya bisa dikembangkan lebih lanjut. Berikut struktur akhir project yang telah dibuat
Berikut hasil barcode setelah aplikasi dijalankan


Referensi :
Read more →

Sabtu, 17 Desember 2016

CODEIGNITER HMVC FORM VALIDATION CALLBACK ISSUE

,
Codeigniter sudah menyediakan library form_validation dimana sudah ada dokumentasinya di User Guide yang telah disediakan. Ketika kita membuat form input data seringkali kita perlu membuat sebuah validasi tertentu diluar validasi yang disediakan di library tersebut, karenanya kita perlu menggunakan fungsi callback. Pada penggembangan codeigniter dengan hmvc yang telah dibahas pada dua postingan sebelumnya fungsi callback ini akan tidak berjalan sebagaimana mestinya, dimana pesan notifikasi kepada pengguna tidak bisa ditampilkan. Berikut pesan error yang dijumpai "Unable to access an error message corresponding to your field name.....................". Berikut script yang saya buat
defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * Description of Dashboard
 * @author IMAM SYAIFULLOH
 */
class Dashboard extends MX_Controller
{
    public function __construct()
    {
   parent::__construct();
        $this->load->helper('form');        
        $this->load->library('form_validation');
    }

    public function index(){
     $data['title'] = 'Lesson HMVC';
     $data['content'] = 'Hello World';
     $this->load->view('dashboard_index', $data, FALSE);
    }

    public function login($value='')
    {
        if($_POST){
            $this->form_validation->set_rules('email', 'Email address', 'required|valid_email');
            $this->form_validation->set_rules('password', 'Password', 'required|callback_password_check');
            $this->form_validation->set_error_delimiters('
', '
'); if ($this->form_validation->run() == FALSE) { $page = 'dashboard/dashboard_login'; } else { $page = 'dashboard/dashboard_index'; } } else { $page = 'dashboard/dashboard_login'; } $data['title'] = 'Lesson HMVC'; $data['content_title'] = 'Lesson HMVC Callback Form Validation'; echo modules::run('template/loadview', $data,$page); } public function password_check($pass) { if ($pass == '123456') { $this->form_validation->set_message('password_check', 'The {field} field can not be the word "123456"'); return FALSE; } else { return TRUE; } } }
Ternyata setelah membaca beberapa referensi perlu adanya penambahan script / library agar fungsi callback dapat berjalan sebagaimana mestinya. Berikut langkah-langkahnya
Step 1
Buatlah sebuah library baru bernama MY_Form_validation.php, dengan isi script sebagai berikut
defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * Description of MY_Form_validation
 */
class MY_Form_validation extends CI_Form_validation {

    public $CI;

    function run($module = '', $group = '') {
        (is_object($module)) AND $this->CI = &$module;
        return parent::run($group);
    }

}
Step 2
Pada function __construct() perlu ditambahkan satu baris script "$this->form_validation->CI = &$this;" setelah memanggil library form_validation.
Selanjutnya pada script "$this->form_validation->run()" diedit menjadi "$this->form_validation->run($this)" sehingga scriptnya menjadi berikut
defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * Description of Dashboard
 * @author IMAM SYAIFULLOH
 */
class Dashboard extends MX_Controller
{
    public function __construct()
    {
   parent::__construct();
        $this->load->helper('form');        
        $this->load->library('form_validation');
        $this->form_validation->CI = &$this;
    }

    public function index(){
     $data['title'] = 'Lesson HMVC';
     $data['content'] = 'Hello World';
     $this->load->view('dashboard_index', $data, FALSE);
    }

    public function login($value='')
    {
        if($_POST){
            $this->form_validation->set_rules('email', 'Email address', 'required|valid_email');
            $this->form_validation->set_rules('password', 'Password', 'required|callback_password_check');
            $this->form_validation->set_error_delimiters('
', '
'); if ($this->form_validation->run($this) == FALSE) { $page = 'dashboard/dashboard_login'; } else { $page = 'dashboard/dashboard_index'; } } else { $page = 'dashboard/dashboard_login'; } $data['title'] = 'Lesson HMVC'; $data['content_title'] = 'Lesson HMVC Callback Form Validation'; echo modules::run('template/loadview', $data,$page); } public function password_check($pass) { if ($pass == '123456') { $this->form_validation->set_message('password_check', 'The {field} field can not be the word "123456"'); return FALSE; } else { return TRUE; } }div> }
Read more →

Kamis, 15 Desember 2016

CODEIGNITER HMVC MEMANGGIL FUNCTION DARI CONTROLLER LAINNYA

,
Melanjutkan postingan sebelumnya yang berjudul CODEIGNITER HMVC MEMBUAT TEMPLATE DENGAN BOOTSTRAP kali ini akan dibahas bagaimana memanggil function lainnya dari controller lain atau modul lain. Disini saya akan mencoba membuat function untuk menampilkan halaman template dan halaman content yang dapat diset dari function yang memanggil dengan tujuan agar tidak terlalu banyak membuat template. Pada postingan sebelumnya saya sudah membuat sebuah modul bernama template dimana digunakan untuk menampilkan template, dari modul itu saya kembangkan dengan menambahkan sebuah function bernama loadview, berikut script hasil pengembangannya
defined('BASEPATH') OR exit('No direct script access allowed');

/**
 * Description of Dashboard
 * @author IMAM SYAIFULLOH
 */
class Template extends MX_Controller
{
    public function __construct()
    {
     parent::__construct();
    }

    public function index()
    {
     $data['title'] = 'Lesson HMVC Part 2';     
     $this->load->view('template_header',$data);     
     $this->load->view('template_content',$data);
     $this->load->view('template_footer',$data);
    }

    public function loadview($data=NULL,$page = NULL)
    {
        $this->load->view('template_header',$data);   
        if($page != NULL){
            $this->load->view($page,$data);
        } else {
           $this->load->view('template_content',$data);
        }
        $this->load->view('template_footer',$data);
    }
}
perlu diperhatikan agar suatu function dapat dipanggil dari controller lainnya kedua controller harus extends MX_Controller. Selanjutnya saya ingin membuat sebuah form login dengan template yang dipanggil di function loadview. Saya menambahkan function login pada controller dashboard (modul dashboard) dan didalamnya saya memanggil function loadview untuk menampilkan template. Dari function login diperlukan variabel $data dan $page dimana $page ini menyimpan content yang akan ditampilkan. Berikut hasil script yang dibuat.
defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * Description of Dashboard
 * @author IMAM SYAIFULLOH
 */
class Dashboard extends MX_Controller
{
    public function __construct()
    {
   parent::__construct();
    }

    public function index(){
     $data['title'] = 'Lesson HMVC';
     $data['content'] = 'Hello World';
     $this->load->view('dashboard_index', $data, FALSE);
    }

    public function login($value='')
    {
     $data['title'] = 'Lesson HMVC';
        $data['content_title'] = 'Lesson HMVC Login';
     $page = 'dashboard/dashboard_login';
     echo modules::run('template/loadview', $data,$page);
    }
}
Selanjutnya saya buat sebuah view bernama dashboard_login yang disimpan di modul dashboard, berikut scriptnya
selanjutya saya coba memanggil halaman login tersebut dengan mengetikan http://localhost:8080/PROJECT/lesson/index.php/dashboard/login, berikut hasilnya
Lalu bagaiama jika kita ingin membuat sebuah function dimana funcion tersebut khusus untuk melakukan proses, misalnya saya ingin membuat proses perhitungan sederhana saya akan membuat sebuah modul baru bernama calculator yang digunakan untuk menampung function untuk melakukan proses, dan memanggil function tersebut di modul dashboard. Berikut script controller calculator
defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * Description of Calculator
 * @author IMAM SYAIFULLOH
 */
class Calculator extends MX_Controller
{
 
 function __construct()
 {
  parent::__construct();
 }

 public function tambah($x = NULL,$y=NULL)
 {
  $result = NULL;
  if($x != NULL && $y != NULL){
   $result = $x+$y;
  }
  return $result;
 }
}
Pada controller dashboard saya menambahkan funtion tambah data untuk menampilkan hasil proses dari function tambah pada function calculator, berikut script di controller dashboard
defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * Description of Dashboard
 * @author IMAM SYAIFULLOH
 */
class Dashboard extends MX_Controller
{
    public function __construct()
    {
   parent::__construct();
    }

    public function index(){
     $data['title'] = 'Lesson HMVC';
     $data['content'] = 'Hello World';
     $this->load->view('dashboard_index', $data, FALSE);
    }

    public function login($value='')
    {
     $data['title'] = 'Lesson HMVC';
        $data['content_title'] = 'Lesson HMVC Login';
     $page = 'dashboard/dashboard_login';
     echo modules::run('template/loadview', $data,$page);
    }

    public function tambahdata()
    {
        $x = 5;
        $y = 10;
        $this->load->module('calculator');
        $result = $this->calculator->tambah($x,$y);
        echo $x." + ".$y." = ".$result;
    }
}
maka kita dapat memanggil dibrowser dengan alamat http://localhost:8080/PROJECT/lesson/index.php/dashboard/tambahdata hasilnya
struktur folder akhir menjadi seperti berikut 
referensi https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc
 



Read more →

Rabu, 14 Desember 2016

CODEIGNITER HMVC MEMBUAT TEMPLATE DENGAN BOOTSTRAP

,
Melanjutkan postingan sebelumnya yang berjudul CODEIGNITER HMVC  kali ini saya akan membuat sebuah template dengan menggunakan bootstrap. Untuk bahan / pelaralatan yang dibutuhkan yaitu
  1. Codeigniter HMVC (lanjutan dari postingan sebelumnya)
  2. Bootstrap http://getbootstrap.com/ Versi yang saya gunakan adalah versi 3.3.7
  3. Jquery https://jquery.com/
Langkah 1
Buatlah sebuah folder bernama assets di root folder project yang dibuat, di dalamnya buat lagi folder src saya menggunakan folder src sebagai tempat untuk menyimpan source yang sering digunakan sehingga jika nantinya ingin membuat project lainnya dapat dilakukan dengan mengcopy folder src ini. Selanjutnya extract hasil download bootstrap bootstrap-3.3.7-dist.zip dan pindahkan ke folder src tadi. 
Buatlah sebuah folder bernama js di dalam folder src, folder js ini berfungsi untuk menyimpan file javascript / jquery yang akan kita gunakan. Masukan jquery hasil download kedalamnya.
Sehingga struktur foldernya menjadi berikut

Langkah 2
Buatlah sebuah modul baru bernama template (pembuatan modul ada pada postingan sebelumnya), dalam modul template saya membuat sebuah controller dengan nama Template dengan script untuk memanggil view sabagai berikut 

defined('BASEPATH') OR exit('No direct script access allowed');

/**
 * Description of Dashboard
 * @author IMAM SYAIFULLOH
 */
class Template extends MX_Controller
{
    public function __construct()
    {
     parent::__construct();
    }

    public function index($data=NULL,$page = NULL)
    {
     $data['title'] = 'Lesson HMVC Part 2';     
     $this->load->view('template_header',$data);     
     $this->load->view('template_content',$data);
     $this->load->view('template_footer',$data);
    }
}
Langkah 3
Untuk menampilkan halaman saya membuat tiga buah view yaitu template_header, template_content, dan template_footer dengan script sebagai berikut.
template_header

 template_content

template_footer 

 Sehingga struktur foldernya menjadi seperti berikut

Langkah 4
Jalankan project yang kita buat dengan mengetikan alamat http://localhost:8080/PROJECT/lesson/index.php/template di browser

Read more →

CODEIGNITER HMVC

,
HMVC atau hirarki model view controller adalah pengembangan dari MVC. Salah satu keuntungan menggunkan teknik modular HMVC sistem akan dipisahkan berdasarkan modul per-modul, hal ini akan memudahkan pengerjaan, perawaatan dan pembagian tugas dalam kerja tim.
Peralatan / Bahan yang dibutuhkan :
  1. Core Codeigniter https://www.codeigniter.com/ (saya menggunakan versi 3.1.2)
  2. Codeigniter modular extensions hmvc  https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc  
Langkah 1
Setelah keduanya didowonload, extract CodeIgniter-3.1.2.zip dan berinama sesuai dengan nama project yang akan dibuat disini saya memberi nama dengan nama lesson. Lalu copy ke htdocs.
Langkah 2
Extract wiredesignz-codeigniter-modular-extensions-hmvc.zip, di dalam folder hasil extract terdapat dua folder core dan third_party. Copy atau pindahkan kedua folder tersebut ke folder application yang berada di folder project yang telah dibuat pada Langkah 1. Masih dalam folder application, kita akan membuat modul caranya buatlah sebuah folder dengan nama modules. Didalam folder modules inilah nantinya kita memembuat script untuk project kita.

Langkah 3
Pada folder modules kita buat sebuah bernama dashboard dan didalamnya kita tambahkan folder controllers, models, dan views.
Selanjutnya kita tambhakan script untuk menampilakn sebuah halaman. Pertama buat sebuah controller dengan nama Dashboard (sesuai dengan nama modul) berikut script yang saya buat
 
defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * Description of Dashboard
 * @author IMAM SYAIFULLOH
 */
class Dashboard extends MX_Controller
{
    public function __construct()
    {
   parent::__construct();
    }

    public function index(){
     $data['title'] = 'Lesson HMVC';
     $data['content'] = 'Hello World';
     $this->load->view('dashboard_index', $data, FALSE);
    }
}

Selanjutnya buat sebuah view dan saya beri nama dashboard_index, berikut scriptnya
Sehingga struktur folder & filenya menjadi berikut
Sebelum menjalankan project yang telah kita buat jangan lupa setting autoload helper file dan url, base_url, dan arahkan route ke nama modules yang kita buat, sehingga setelah dijalankan menjadi berikut


Read more →

Senin, 06 April 2015

SUBLIME TEXT 2 CODEIGNITER SNIPSET DI WINDOWS

,
Sublime Text adalah sebuah teks editor yang canggih dengan antarmuka nyaman (tidak membuat mata cepat lelah), memiliki fitur dan kinerja yang luar biasa. Sublime Text dapat di download disini.

Snippet Code adalah sebuah template kode program yang bisa langsung dapat kita gunakan dalam program. Template kode tersebut biasanya berisi kumpulan baris kode program yang berfungsi untuk menjalankan perintah tertentu. Tujuan dari Snippet Code ini adalah untuk mempercepat kode program.

Cara menerapkan Codeigniter Snipset di Sublime Text.

  1. Pastikan terkoneksi dengan internet.
  2. Download Sublime Text.
  3. Install Sublime Text.
  4. Download Package Package Control.sublime-package
  5. Buka "C:\Users\[username]\AppData\Roaming\Sublime Text 2\Installed Packages" atau dengan cara Masuk Sublime Text > Preferences > Browse Packages. Secara default kita di arahkan ke "C:\Users\[username]\AppData\Roaming\Sublime Text 2\Packages" tinggal kita arahkan saja ke folder Installed Packages.
  6. Copy hasil download ke folder Installed Packages.
  7. Restart Sublime Text.
  8. Tekan Ctrl+Shift+P maka akan muncul sebuah textbox ketikan install maka akan muncul dibawahnya pilih "Package Control: Install Package" lalu enter
  9. Tunggu sampai muncul textbox kembali kemudian ketikan codeigniter, pilih Codeigniter Snipset, lalu enter 
  10. Tunggu sampai muncul pesan "Package Codeigniter Snipset successfully installed" pada bagian bawah Sublime Text 
  11. Restart Sublime text, coba buat sebuah project Codeigniter lalu buat satu controller. Misal kita akan memanggil sebuah view kita cukup ketikan load maka akan muncul pilihan tinggal kita pilih menggunakan tombol arah kebawah atau keatas pada keyboard. 
  12. Setelah kita pilih lalu kita enter hasilnya seperti berikut : 
Ddapat dilihat snipset ini sangat membantu kita "ngoding" :).
sumber :
Read more →

Selasa, 31 Maret 2015

Implementasi CLEditor di Codeigniter

,
Bahan yang dibutuhkan :
  1. XAMPP (saya menggunakan versi 1.8.1) Dapat di download disini
  2. Codeigniter (saya menggunakan versi 2.2.0) Dapat di download disini
  3. Jquery (saya menggunakan versi 2.1.3) Dapat di download disini
  4. CLEditor (saya menggunakan versi 1.4.4) Dapat di download disini
Langkah Pertama
  • Install XAMPP
  • Jalankan service apache
Langkah Kedua
  • buat directory baru di htdocs untuk menyimpan project kita (saya membuat dengan nama CLEditor)
  • extract file codeigniter hasil download ke directory yang tadi telah kita buat di htdocs
  • panggil project kita di browser.
  • jika muncul halaman welcome seperti berikut maka proses instalasi codeigniter berhasil
Langkah Ketiga
  • Buat sebuah directory di root codeigniter (saya membuat dengan nama assets) 
  • buat directory di dalam directory assets untuk menyinpan file CLEditor (saya membuat dengan nama cleditor)
  • extract file CLEditor yang sudah di download kedalam directory cleditor
  • buat directory di dalam assets (saya membuat dengan nama js)
  • copy file jquery-2.1.3.min.js ke dalam directory js
Langkah Keempat
  • buat sebuah controller baru di ".\application\controllers\" saya membuat controller dengan nama home.
  • Buka routes.php di ".\application\config\"
  • cari text berikut $route['default_controller'] = "welcome"; rubah menjadi $route['default_controller'] = "home";'
  • edit home controller seperti dibwah ini untuk menampilkan halaman dimana nanti kita akan mengimplementasikan CLEditor didalamnya.
  • class Home extends CI_Controller{
        function __construct() {
            parent::__construct();
            $this->load->helper('url', 'file');
        }
        
        function index(){
            $this->load->view('home');
        }
    }
Langkah Kelima

  • buat sebuah file php dengan nama home di ".\application\views\" dan isikan seperti dibawah ini

Langkah Keenam
  • panggil dibrowser maka akan tampil seperti berikut 



Read more →

Kamis, 05 Februari 2015

Menghilangkan index.php pada url codeigniter di web server centos 6.5

,
Secara default URL codeigniter akan tampil "domain/index.php/controller", agar lebih enak dilihat (menurut pendapat saya saja sih) perlu menghilangkan "index.php" di URL tersebut. Berikut langkah-langkahnya.

  1. masuk ke dirctory website secara default "/var/www/html/" buka "application/config/config.php".
  2. Update code $config['index_page'] = 'index.php'; menjadi $config['index_page'] = '';  (hilangkan index.php).
  3. Buat file .htaccess di root directory website (bukan root directory server), didalam file .htaccess  masukan script berikut :
  4. # .htaccess file
    RewriteEngine On
    # Removes index.php
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ /index.php/$1 [L]
    
  5. Buka "/etc/httpd/conf/httpd.conf", cari file berikut :
  6. pastikan di "AllowOverride All". Jika sudah restart servis httpd, lalu jalankan website.
Read more →

Kamis, 04 Desember 2014

Upload File Berbeda Type Dalam Satu Form di Codeigniter

,
Saya menggunakan codeigniter 2.2.0 dan membuat form upload sesuai user guide (File Uploading Class). Ketika saya membuat form upload hanya untuk satu file type tidak menagalami kendala, namun saya mengalami kendala saat dalam satu form mempunyai dua fasilitas upload dengan type file yang berbeda (gambar & pdf). Berikut contoh source code yang saya buat :
Dan berikut code controllernya:

function do_upload() {
        $this->load->library('upload');
        //config untuk upload gambar
        $config['upload_path'] = './uploads/';
        $config['allowed_types'] = 'jpg|png';
        $config['overwrite'] = FALSE;
        $config['max_size'] = '5000';
        $this->upload->initialize($config);
        if (!$this->upload->do_upload('gambar')) {
            /*
             * LOAD HALAMAN ERROR GAMBAR
             */
        } else {
            unset($config);
            $config['upload_path'] = './uploads/';
            $config['upload_path'] = './assets/download/news/';
            $config['allowed_types'] = 'pdf';
            $config['overwrite'] = FALSE;
            $config['max_size'] = '15000';
            $this->upload->initialize($config);
            if (!$this->upload->do_upload('file_download')) {
                /*
                 * LOAD HALAMAN ERROR FILE PDF
                 */
            } else {
                /*
                 * LOAD HALAMAN SUKSES
                 */
            }
        }
    }

dengan menambahkan $this->upload->initialize($config); kita dapat setting configurasi untuk file upload selanjutnya.

Read more →

Kamis, 16 Oktober 2014

Menonaktifkan pesan error di codeigniter

,
Buka file "index.php" di parent directory project codeigniter.
rubah "error_reporting(E_ALL);"
menjadi "error_reporting(0);"
Read more →

Senin, 13 Mei 2013

Membuat base_url dinamis di CodeIgniter

,
Buka file config.php pada folder aplication/config
cari tulisan

$config['base_url'] =' ';

rubah menjadi

$http = 'http' . ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 's' : '') . '://';
$newurl = str_replace('index.php','', $_SERVER['SCRIPT_NAME']);
$config['base_url']    = "$http" . $_SERVER['SERVER_NAME'] . "" . $newurl;

save..
Read more →

Rabu, 13 Februari 2013

Codeigniter Konfigurasi Upload File .zip dan .rar

,
Tadi siang sempat saya mengalami kesulitan ketika saya melihat project teman saya yang tidak dapat melakukan upload file berextensi zip dan rar. Setelah saya browsing kesna-kemari ternyata ada dimasalah konfigurasi di file "mimes.php". File tersebut dapat ditemukan di folder config.
Bila file mimes.php belum dirubah maka dapat dilihat di baris 54 ada script seperti berikut.

'zip'    =>  array('application/x-zip', 'application/zip', 'application/x-zip-compressed'),'

Nah agar kita dapat mengupload file zip dan rar kita rubah script tersebut menjadi seperti berikut ini.

'zip'    =>  array('application/zip', 'application/x-zip', 'application/x-zip-compressed',  'application/octet-stream', 'application/x-compress', 'application/x-compressed', 'multipart/x-zip'),
'rar'    =>  array('application/rar', 'application/x-rar', 'application/x-rar-compressed', 'application/octet-stream', 'application/x-compress', 'application/x-compressed', 'multipart/x-rar'),

Dan setelah saya terapkan cara tersebut saya prose upload file zip dan rar dapat dilakukan..
Terimakasih kepada Nur Akhwan yang telah memabgikan tips seperti diatas.
Read more →

Jumat, 14 Desember 2012

Menghilangkan "index.php" pada url CI

,
setelah dilihat-lihat pada url pada project yang saya buat saya melihat selalu ada 'index.php', misalnya saya ingin mengkses sebuah controller bernama admin dan folder ci-nya saya berinama ci maka urlnya menjadi sperti ini localhost/ci/index.php/admin/ .
mungkin trlihat biasa namun ada cara untuk menghilangkan index.phpnya. caranya sebagai berikut.
copy file .htaccess yang berada dalam folder system pada ci ke folder root ci, (saya menggunakan ci 2.1.3)
rubah isi file .htaccess menjadi seperti dibawah

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,L]

buka file config.php.
cari $config['index_page'] = 'index.php';
rubah menjadi $config['index_page'] = '';

saya sendiri belum mengerti apa maksud dari script didalam .htaccess tersebut. saya hanya share saja sedikit pengalaman saya.

"bukan bisa atau tidak bisa namun mau atau tidak mau, dengan kemauan kita mau belajar sehingga kita menjadi bisa"
Read more →

Merubah Pesan Form Validation

,
Ketika saya sedang mengerjakan sebuah project kuliah saya sempat menggunakan form validation pada CodeIgniter, ketika saya mencoba untuk test pesn tersebut menggunakan bahasa inggris nah yang saya inginkan menggunakan bahas indonesia. Sempat saya browsing sana-sini dan ternyata sangat simpel untuk merubahnya. Caranya sebagai berikut :
1. Buka file system/languange/english/form_validation_lang.php(saya menggunakan code igniter 2.1.3).
2. Ganti pesan mana yang ingin diedit untuk setiap validation rule yang diinginkan.

Read more →

Senin, 12 November 2012

CodeIgniter dan Netbeans

,

Sudah lama sekali rasanya saya tidak berkutat dengan namanya pemrograman dikarenakan rasa malas dan kejenuhan saya. Saat ingin memulainya lagi semua serasa lupa-lupa ingat, mau buka tutorial eh kemaren baru ingat pastisi hardisk saya menyimpan data tutorial-tutorial terformat dan hanya beberapa data yang bisa di recovery akhirnya saya sempatkan untuk menulis sedikit proses belajar saya agar dikemudian hari saya bisa membacanya lagi saat saya ingin memulai untuk berkutat dengan codeigniter.
Sebenarnya dengan netbeans kita dapat membuat agar saat kita menggunakan codeigniter dapat secara langsung muncul autocomplete dan tak perlu susah-susah mengcopy file codeigniter ke dalam ‘htdocs” dengan cara sedikit menambah plugin pada netbeans. Langsung saja langkah-langkahnya sebagai berikut
  1.  Jalankan netbeans (disini saya menggunakan netbeans 7.2 bunddling php)
  2. Pilih menu Tool > Plugin dan pilih Tab Settings. Kemudian Klik Add dan pada Jendela Popup yang muncul masukan Url : http://kenai.com/downloads/nbphpci/Latest_NetBeans720/updates.xml  
  3. Pada Tab Available Plugin Centang PHP CI Framework dan PHP CI Framework Repository, Kemudian Klik Install seperti Pada Gambar, setelah itu ikuti petunjuk sampai proses instalasi Plugin Selesai. 

Langkah instalasi plugin selesai selanjutnya kita mengkonfigurasi netbeans langkah-langkahnya sebagai berikut.
  1.  Pilih Menu Tool > options > PHP dan Pilih Tab Codeigniter
  2. Pada Bagian Base Files, Klik Add zip untuk memasukan Core Codeigniter yang sudah kita download atau kita punya, setelah itu Ok.
  3.  Pastikan kita sudah menginstal php5 terlebih dahulu atau kita bisa dapatkan dengan menginstal xampp disini saya menggunakan xampp 1.7.7-VC9. Selanjutnya di netbeans Pada Menu Tool > options > PHP pilih Tab General,Tentukan Interpreter PHP (PHP 5 Interpreter), Klik Search, kalau tidak ditemukan maka kita cari bila webservernya menggunakan xampp maka ada di “C:\xampp\php\php.exe” di cari saja dimana anda meletakan folder instalasi xampp. 
Setelah proses istalasi plugin dan konfigurasinya selesai kita akan mencoba membuat contoh project baru, langkah-langkahnya sebagai berikut.
  1.  Pilih Menu > File > New Project lalu Next
  2.  Beri nama project disini saya menggunakan nama “coba” lalu Next
  3.  Step ketiga bisa langsung di lewati dengan memilih Next.
  4.  Pilih CodeIgniter PHP Web Framework dan Finish.  Secara langsung kita akan dibuatkan directory codeigniternya.
berhubung koneksi internet sedang agagk lola jadi saya tidak menyertakan gambar langkah-langkahnya.

Untuk NetBeans 7.2 gunakan https://kenai.com/downloads/nbphpci/Latest_NetBeans720/updates.xml
Untuk NetBeans 7.2.1 gunakan https://kenai.com/downloads/nbphpci/Latest_NetBeans721/updates.xml 
Untuk NetBeans 7.3 gunakan https://kenai.com/downloads/nbphpci/Latest_NetBeans730/updates.xml
Read more →

Selasa, 25 September 2012

Memasang grocery_crud pada template Codeigniter

,
Semalam saya mendapatkan masalah saat mencoba memasangkan grocery_crud kedalam template Codeigniter. stelah saya coba-coba pahami file contoh yang di sertakan dalam file grocery_crud yang saya download di www.grocerycrud.com saya dapat menyimpulkan langkah-langkah untuk memasukannya kedalam template Codeigniter sebagai berikut :
  1. Copykan isi dari file grocery_crud yang ada di dalam folder config, controllers, libraries, model, view sesuai dengan nama folder yang sama pada codeigniter. Untuk file controllers dan view boleh tidak di copy karena berisi file contoh. Selanjutnya copykan folder assets ke dalam folder codeigniter. 
 
 
 

2.       Atur config, database, routes di Codeigniter.
3.       Buat controller misal ‘chome,.php’
Isikan seperti berikut :
<?php
class Chome extends CI_Controller {
    function chome(){
        parent::__construct();
        $this->load->model('mhome');
        $this->load->database();
        $this->load->helper('url');
        $this->load->library('grocery_CRUD');
    }
    function _master_output($output = null){
        $this->load->view('home.php',$output);
    }
    function index(){
        $this->_master_output((object)array('output' => '' , 'js_files' => array() , 'css_files' => array()));
     }
}
?> 

3.       Buat file view misal ‘home.php’
tambahkan script berikut kedalamnya :
<?php
foreach($css_files as $file): ?>
        <link type="text/css" rel="stylesheet" href="<?php echo $file; ?>" />
<?php endforeach; ?>
<?php foreach($js_files as $file): ?>
        <script src="<?php echo $file; ?>"></script>
<?php endforeach; ?>
<style type='text/css'>
body
{
        font-family: Arial;
        font-size: 14px;
}
a {
    color: blue;
    text-decoration: none;
    font-size: 14px;
}
a:hover
{
        text-decoration: underline;
}
</style>
<?php
echo $output;
?>

pada psoting kali ini hanya membahas langkah awal dalam memasangkan grocery_crud pada template codeigniter.
Read more →