Permasalahan

Sudah beberapa minggu aku belum sempet nulis gara2nya ada projek aplikasi portal kantor yang error sewaktu migrasi ke server production yang https, nyari2 katanya gara2 sertifikat SSL nya yang bermasalah, tapi tetep blum ketemu titik terang. Aku tinggal dulu ngerjain bagian lainnya.
Continue reading »

Rasanya kurang pas kalo aku nulis tips trik pemrograman CI bila gak nulis juga buat teman2 yang masih awam soal CI , gimana sih cara nya buat mulai mrogram pake CI. bagi yang belum tahu apa itu CI, CI itu adalah kepanjangan dari CodeIgniter suatu framework PHP yang berbasis MVC, cukup kecil namun sangat flexible dan ringan. Bisa dengan mudah diintegrasikan dengan berbagai macam library PHP lainnya.

Continue reading »

Buat yang belum tau, mungkin plugin yang dibawah ini bisa berguna. Plugin ToExcel ini menkonversi data dari hasil query ke dalam bentuk XLS bukan CSV. Jadi mungkin sangat cocok untuk berbagai macam bentuk laporan atau ekspor data. Continue reading »

Sering kali kita dihadapkan pada waktu membuat aplikasi, kita cukup sering dipusingkan oleh masalah pembuatan laporan. Kenapa pusing karena, satu terkadang bentuk dan formatnya harus sesuai permintaan user yang sering aneh2, dan gak standar meskipun secara teknis itu bisa – bisa saja. Dua, pengaturan dan pembuatan informasi yang akan dijadikan laporan terkadang cukup susah, karena bisa-bisa melakukan query kesana kemari.(hiks.. aku pernah gitu, untungnya tahu kalo ada table yang nampung hasil query ‘soal cerita’ itu ).

Berikut ini aku tuliskan cara membikin laporan dalam format PDF, dengan R&OS library yang terintegrasi dengan CodeIgniter 1.6.3. Kenapa R&OS library yang dipakae, kenapa bukan FPDF atau dompdf, karena R&OS ini sudah memiliki fungsi cukup lengkap, antara lain ada header footer, set margin, page number, set ukuran halaman, dsb. Dan kenapa juga pake CodeIgniter (CI) karena ini merupakan framework PHP yang cukup lengkap, kecil, mudah dimodifikasi dan mudah di integrasi kan dengan library lain. Continue reading »

Baru saja aku baca artikel di codeigniter-id (http://codeigniter-id.com/node/5 dan http://codeigniter-id.com/node/18), tentang integrasi codeigniter dengan open flash chart. Namun setelah membaca keduanya, saya masih belum bisa menjalankan OFC dengan sukses, padahal semua langkah sudah aku jalankan. setelah brosing2, akhirnya aku temukan cara, seperti yang aku tulis dibawah ini. Continue reading »

filedownload

Kemaren browsing2, aku nemuin library buat download file di CodeIgniter. Sebenernya hampir sama dengan library download built in di codeigniter, tapi ada beberapa tambahan fitur yang menurut aku, sangat berguna. Continue reading »

Dalam CodeIgniter disediakan  library yang mungkin akan sangat berguna dalam pembuatan web yang memerlukan interaksi dengan user seperti pendaftaran, pengiriman notifikasi ke user, dsb, yaitu library class Email.php

Tentu saja sebelum mulai, harus diinisialisasi dulu dengan

$this->load->library('email');

Continue reading »

Buat yang baru terjun ke dunia programming, mungkin belum banyak tau tentang konsep pemrograman MVC – Model View Controller. Kalo ada yang pernah mendengar konsep pemrograman OOP, nah ini beda jenis dengan itu, sudah beda bidangya. Continue reading »

Kemarin saya buat modul untuk mengkompresi file2 diserver dan di download. Ceritanya sih, mau buat seperti kayak file manager, jadi select multiple file trus di zip dan otomatis di donlod. Sebelum kemana2, CI yang aku gunakan adalah versi 1.6.3.

Enaknya kalo pake CI nih, kalo untuk fitur semacam itu, proses yang aku lakukan cukup sampe di level class controller aja. jadi setelah selesai gak perlu load halaman htmlnya lagi. Mungkin kalo masih pake coding PHP biasa sih, begitu pilih file nya, trus di submit ke URL yang mroses, otomatis halamannya akan render lagi, sekaligus mroses inputan dari submit tadi.

Pada awalnya waktu men-zip multiple file, proses berhasil dengan sempurna. Dengan menggunakan metode

$this->zip->read_file($parentpath.$namafile);

File tersebut langsung dibaca isinya dan dimasukan dalam archive zip sementara, menunggu aksi terakhir apakah nanti di download

$this->zip->download($down_namafile);

apa disimpan

$this->zip->archive($zip_namafile);

Sekarang yang menjadi permasalahan adalah pada waktu item yang dipilih adalah sebuah direktori, memang benar fungsi ini menjalankan tugasnya membaca isi direktori lalu menjadikan dalam satu zip file.

Namun tugas itu dijalankan tidak cukup baik. Misal begini, ada direktori A dengan isi nama file FileA, FileB, dst. Maka nanti setelah dizip, nama file dalam zip berubah menjadi AFileA, AFileB, dst. Meskipun ukuran file nya sama dengan yang asli, tapi tetep saja tidak boleh begitu.

function read_dir($path)
{
  if ($fp = @opendir($path))
  {
    while (FALSE !== ($file = readdir($fp)))
    {
      if (@is_dir($path.$file) && substr($file, 0, 1) != '.')
      {
        $this->read_dir($path.$file."/");
      }
      elseif (substr($file, 0, 1) != ".")
      {
        if (FALSE !== ($data = file_get_contents($path.$file)))
        {
          $this->add_data(str_replace("\\", "/", $path).$file, $data);
        }
      }
    }
    return TRUE;
  }
}

coba diganti menjadi seperti ini

function read_dir($path)
{
  if ($fp = @opendir($path))
  {
    while (FALSE !== ($file = readdir($fp)))
    {
      if (@is_dir($path.$file) && substr($file, 0, 1) != '.')
      {
        $this->read_dir($path.$file."/");
      }
      elseif (substr($file, 0, 1) != ".")
      {
        if (FALSE !== ($data = file_get_contents($path."/".$file)))
        {
          $this->add_data(str_replace("\\", "/", $path)."/".$file, $data);
        }
      }
    }
    return TRUE;
  }
}

Lihat ada penambahan “/” di beberapa bagian function itu. Akhirnya fungsi berjalan seperti yang diharapkan. Pada CI 1.7.0 nampaknya bug ini belum diberesin, soalnya aku compare 1.7.0 dan 1.6.3, library zip.php tidak mengalami perubahan.

Semoga membantu.

Ada seorang teman menanyakan begini “masdeka…
bisa kasih contoh pake CI 1.7 dengan oracle XE, sampai sekarang ini saya masih susah pake CI dengan oracle Xe, saya ingin sekali itu bisa dijalankan.., tolong mas kirimkan saya satu contoh koneksi, kita pake saja database HR yang ada di oracle XE bagaimana menampilkan table employees. Tolong dikirimkan satu file model, satu file controler dan satu file view.

Continue reading »

© 2010 Catatan (PHP) Suffusion WordPress theme by Sayontan Sinha