Belajar Pemrograman Komputer Mudah dan Menyenangkan
  • YII FRAMEWORK

    Yii adalah framework (kerangka kerja) PHP berbasis-komponen, berkinerja tinggi untuk pengembangan aplikasi Web berskala-besar. Yii menyediakan reusability maksimum dalam pemrograman Web dan mampu meningkatkan kecepatan pengembangan secara signifikan....

  • JAVA PROGRAMMING

    adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995...

  • PORTFOLIO

    Portfolio aimagu dapat anda gunakan secara cuma-cuma (free) dengan memilih tombol portfolio diatas...

Monday, July 14, 2014

Posted by Nur Rochim | Monday, July 14, 2014 | 5 comments
Pernahkan anda menjumpai permasalahan saat menginputkan data pada suatu text dengan ketentuan data itu harus benar berasal dari tabel tertentu? Kemudian dengan cara apa anda menyikapi permasalahan seperti ini? Menggunakan dropdownlist atau autocomplete? Benar, itu merupakan salah satu jalan keluar yang baik tetapi pernahkan anda berfikir apabila data dalam tabel tersebut ada ribuan? Tentu saja akan memusingkan apabila harus memilih data yang ribuan tersebut dalam suatu inputan dropdownlist.
Beberapa tutorial dalam wiki Yii Framework membuat panduan berupa select data dari kotak dialog yang didalamnya itu nanti muncul data dari tabel lain dan terdapat suatu inputan pencarian. Pada contoh berikut ini saya akan membuat tutorial dengan studi kasus aplikasi jurnal dengan data tabel master Dosen sebagai pelaku yang mengisikan data pada aplikasi jurnal tersebut. Berikut ini langkah pembuatannya:
Buatlah form yang terdiri dari textfield NIDN, Nama dan Program Studi seperti pada gambar berikut:

Kemudian buatlah tombol "ubah" untuk memunculkan data tabel dosen dalam dialog seperti pada gambar diatas.
Apabila data Dosen berasal dari tabel yang lain yaitu tabel dosen maka renderlah model tersebut. Contoh disini saya akan merender model dosen dalam action create sebagai berikut:
<?php public function actionCreate()
 {
  $model=new Jurnal;
  $model2=new Dosen('search');
  $model2->unsetAttributes();
  if(isset($_GET['Dosen']))
   $model2->attributes=$_GET['Dosen'];
  if(isset($_POST['Jurnal']))
  {
   $model->attributes=$_POST['Jurnal'];
   $model->save();
  }

  $this->render('create',array(
   'model'=>$model,
   'model2'=>$model2,
  ));
 }
?>
Kemudian pada file protected/view/jurnal/_form.php buatlah form dialog yang berasal dari model dosen sebagai berikut:
<?php 
    $this->beginWidget('zii.widgets.jui.CJuiDialog',array(
 //Nama selector/id
    'id'=>'mydialog',
    // additional javascript options for the dialog plugin
    'options'=>array(
        'title'=>'Klik tanda <code>+</code> untuk memilih NIDN!',
        'autoOpen'=>false,
  //Fokus atau modal diaktifkan
  'modal' => true,
     'show'=>array(
       'effect'=>'blind',
       'duration'=>1000,
       ),
     'hide'=>array(
       'effect'=>'explode',
       'duration'=>500,
     ),
  'width' => 640, 
  'height' => 480
    ),
));?>
<?php $this->widget('bootstrap.widgets.TbGridView',array(
 'id'=>'dosen-grid',
 'dataProvider'=>$model2->search(),
 'type'=>'striped bordered condensed',
 'filter'=>$model2,
 'columns'=>array(
  array(
   'name'=>'nidn',
   'filter'=> CHtml::activeTextField($model2, 'nidn', array('placeholder'=>'Cari NIDN dosen')),
  ),
  array(
   'name'=>'nama',
   'filter'=> CHtml::activeTextField($model2, 'nama', array('placeholder'=>'Cari nama dosen')),
  ),
  array(
          'name'=>'program_studi',
          'type'=>'raw',
    'filter'=>CHtml::listData(Dosen::model()->findAll(array(
    'distinct' => true,
    'order' => 'program_studi ASC'
   )), 'program_studi', 'program_studi'),
        ),
  array(
    'header'=>'PILIH',
    'type'=>'raw',
    'value'=>'CHtml::Button(
          "+"
          , array(
    "class" => "btn submit"
          , "id" => "get_link"
          , "onClick" => "$(\"#mydialog\").dialog(\"close\");$(\"#Jurnal_nidn \").val(\"". $data->nidn."\");
    $(\"#Dosen_nama \").val(\"". $data->nama."\");
    $(\"#Dosen_program_studi \").val(\"". $data->program_studi."\");
    "))',
  ),
 ),
)); ?>
<?php $this->endWidget('zii.widgets.jui.CJuiDialog'); ?>
Pada source code diatas merupakan code untuk membuat pilihan dialog data dari dosen kemudian apabila user sudah memilih salah satu data maka otomatis langsung mengset textfield NIDN, Nama dan Program Studi seperti pada gambar berikut ini:
Setelah button [+] di pilih maka akan menset textfield sebagai berikut ini:
Pada textfield NIDN terdapat button "ubah" source codenya sebagai berikut:
<?php echo $form->textFieldRow($model, 'nidn', array('disabled'=>true, 'class'=>'span2', 'hint' => '<i class="text-info" id="nidn">Klik <a href="#" onclick=$("#mydialog").dialog("open"); return false;><code>ubah</code></a> untuk memilih NIDN.</i>')); ?>
Pada textfield NIDN dipasang action onclick bernama #mydialog untuk menampilkan dialog tersebut.

Apabila muncul pesan error "Undefined variable: model2" maka definisikan model2 dalam file create.php di folder protected/view/jurnal/create.php

Pada contoh ini menggunakan struktur tabel sebagai berikut:

Selesai

Monday, July 7, 2014

Posted by Nur Rochim | Monday, July 07, 2014 | No comments
Beginning Yii (DEMO | DOWNLOAD)
Dengan pengarang Chris Backhouse dan diterbitkan Packt Publishing bulan september 2013. Buku ini berisi tentang Menjelajahi Yii, Memulai membuat aplikasi Yii, Mulai Pembangunan (Menggunakan IDE), Pengujian Aplikasi Anda, Pengaplikasian album foto, penggunaan UI (Themes, Layout, User Access), Debugging, Logging, Error Handling dan Menyesuaikan Album Antarmuka.
Berikut ini contoh isi buku:


Web Application Development with Yii and PHP (DEMO | DOWNLOAD)
Buku ini di karang oleh Jeffrey Winesett bulan November tahun 2012 lalu, buku ini berisi tentang Auto-generate skeleton web applications as well as CRUD scaffolding for the domain object model using the built-in command-line interface, Use Yii database migrations to version and manage your database changes, Create user-based applications with Yii's authentication model, Enhance your user-based application to control a user's access to feature functionality, Write an administrative console application to extend the features provided by Yii's powerful command-line tools, Integrate other frameworks and libraries into a Yii application to further extend its feature set, Spend less time managing application configuration by taking advantage of Yii's sensible defaults and conventions.

Monday, May 26, 2014

Posted by Nur Rochim | Monday, May 26, 2014 | No comments

Bila kita mengunjungi suatu supermarket atau swalayan sering kita jumpai kode barcode ini pada kemasan suatu produk, dari yang kecil sampai yang besar memiliki kode barcode. Untuk mengetahui isi identitas dari produk tersebut (yang biasanya berbentuk angka) biasanya menggunakan mesin barcode.
Menurut salah satu sumber website wiki terkenal wikipedia menyatakan bahwa barcode atau kode batang adalah suatu kumpulan data optik yang dibaca mesin. Sebenarnya, kode batang ini mengumpulkan data dalam lebar (garis) dan spasi garis paralel dan dapat disebut sebagai kode batang atau simbologi linear atau 1D (1 dimensi). Tetapi juga memiliki bentuk persegi, titik, heksagon dan bentuk geometri lainnya di dalam gambar yang disebut kode matriks atau simbologi 2D (2 dimensi). Selain tak ada garis, sistem 2D sering juga disebut sebagai kode batang.
Dalam YII Framework sudah ada yang membuat extension barcode ini, tinggal kita menggunakannya saja. Ada 2 macam extension (Mei 2014) tentang barcode dalam yii framework salah satunya yaitu qr-code-generator. Extension ini bekerja pada yii versi 1.1 ke atas dan sangat mudah dalam penggunaanya.
Langkah pertama unduh extension tersebut pada alamat: http://www.yiiframework.com/extension/qr-code-generator kemudian ekstrak pada direktori protected/extensions/qrcode.

Bookmark Us

Delicious Digg Facebook Favorites More Stumbleupon Twitter