Anda di halaman 1dari 6

Andrea Stevens Karnyoto(andrekarnyoto@yahoo.

com), ym : andrekarnyoto, fb : karnyoto andre


Membuat rules di model public function rules() { // NOTE: you should only define rules for those attributes that // will receive user inputs. return array( array('KodeRuangan, TahunSemester', 'numerical', 'integerOnly'=>true), array('KodeKelas, KodeMataKuliah, KodeJurusan, DosenUtama, DosenCadangan', 'length', 'max'=>255), array('NamaKelas', 'length', 'max'=>10), // The following rule is used by search(). // Please remove those attributes that should not be searched. array('IDKelas, KodeKelas, NamaKelas, KodeMataKuliah, KodeJurusan, DosenUtama, DosenCadangan, KodeRuangan, TahunSemester', 'safe', 'on'=>'search'), ); }

Relasionship model
public function relations() { return array( 'Ruangan'=>array(self::BELONGS_TO, 'TableRuangan', 'KodeRuangan'), 'Dosen1'=>array(self::BELONGS_TO, 'TableDosen', 'DosenUtama'), 'Dosen2'=>array(self::BELONGS_TO, 'TableDosen', 'DosenCadangan'), ); } Fungsi tanggal di yii framework $tanggal = $_POST['BerlakuSejak']; $model->BerlakuSejak = $tanggal['Year'] . "-" . $tanggal['Month'] . "-" . $tanggal['Day']; Membuat semua item huruf besar saat create dan update $arrItem = $_POST['TableMataKuliah']; foreach ($arrItem as $key => $value) { $arrItem[$key] = strtoupper(trim($value)); } $model->attributes = $arrItem; Yang bisa digunakan di cgridview <?php $this->widget('zii.widgets.grid.CGridView', array( 'id'=>'table-mata-kuliah-grid', 'dataProvider'=>$model->search(), 'filter'=>$model, 'columns'=>array( array( 'header'=>'Num', 'value'=>'$this->grid->dataProvider->pagination->currentPage*$this>grid->dataProvider->pagination->pageSize + $row+1', // row is zero based ), 'KodeMatakuliah', 'NamaMataKuliah', array( 'name'=>'KodeJurusan', 'value'=>'$data->Jurusan->NamaJurusan', 'filter'=>CHtml::listData(TableJurusan::model()->findAll(), 'KodeJurusan', 'NamaJurusan'), ), 'BerlakuSejak', array( 'name'=>'JenisMataKuliah', 'value'=>'$data->JenisMataKuliah', 'filter'=>array('Wajib'=>'Wajib','Pilihan'=>'Pilihan',

Andrea Stevens Karnyoto(andrekarnyoto@yahoo.com), ym : andrekarnyoto, fb : karnyoto andre


'Dasar'=>'Dasar'), ), array( 'name'=>'Semester', 'value'=>'$data->Semester', 'filter'=>array('1'=>'1','2'=>'2','3'=>'3','4'=>'4','5'=>'5','6'=>'6','7'=>'7','8'=>'8 ','9'=>'9','10'=>'10','11'=>'11','12'=>'12'), ), 'Sks', /* 'Keterangan', 'PrasyaratMataKuliah', */ array( 'class'=>'CButtonColumn', ), ), )); ?> Kata kata yang di masukkkan pada pencarian canggih /advaces search <p> Anda opsional dapat memasukkan operator perbandingan (<b>&lt;</b>, <b>&lt;=</b>, <b>&gt;</b>, <b>&gt;=</b>, <b>&lt;&gt;</b> or <b>=</b>) pada awal setiap nilai pencarian Anda untuk menentukan bagaimana perbandingan harus dilakukan. </p> Bikin dropdown list dari database pada form <div class="row"> <?php echo $form->labelEx($model,'KodeMataKuliah'); ?> <?php echo $form->dropDownList($model,'KodeMataKuliah', CHtml::listData(TableMataKuliah::model()->findAll(), 'KodeMatakuliah', 'NamaMataKuliah')); ?> <?php echo $form->error($model,'KodeMataKuliah'); ?> </div> Bikin tanggal pada form <div class="row"> <?php echo $form->labelEx($model, 'TanggalLahir'); ?> <?php $this->widget('application.extensions.EHtmlDateSelect.EHtmlDateSelect', array( 'time'=>$model->TanggalLahir, 'field_array'=>'TanggalLahir', 'prefix'=>'', 'field_order'=>'DMY', 'start_year'=>'1940', 'end_year' => 'Controller::TahunSekarang()', ) );?> <?php echo $form->error($model, 'TanggalLahir'); ?> </div> Pada moyang conltroller untuk medapatkan tahun sekarang dan format indonesia public function TahunSekarang() { return date('Y', now()); } public function DateFormatIndo($tanggal) { $ArrBulan = array('Jan', 'Feb', 'Mar', 'Apr', 'Mei', 'Jun', 'Jul', 'Ags', 'Sep', 'Okt', 'Nov', 'Des'); if(trim($tanggal) != '') { $waktu = strtotime($tanggal);

Andrea Stevens Karnyoto(andrekarnyoto@yahoo.com), ym : andrekarnyoto, fb : karnyoto andre


return date("d", $waktu) .' '. $ArrBulan[(int)date("m", $waktu) - 1].' ' .date("Y", $waktu); } else { return ''; } } Masukkan gambar pada cdetailview <?php $this->widget('zii.widgets.CDetailView', array( 'data'=>$model, 'attributes'=>array( array( 'label'=>'Foto', 'type'=>'html', 'value'=> CHtml::image(Yii::app()->request>baseUrl."/index.php?r=dosen/fotodosen&id=$model->KodeDosen",'Foto tidak ditemukan',array('width'=>150)), ), 'KodeDosen', 'KodeDosen', 'NamaDosen', 'TempatLahir', array( 'label'=>'Tanggal Lahir', 'type'=>'html', 'value'=> Controller::DateFormatIndo($model->TanggalLahir), ), 'Alamat', 'TeleponRumah', array( 'label'=>'Tanggal Masuk Kerja', 'type'=>'html', 'value'=> Controller::DateFormatIndo($model->TanggalMasukKerja), ), array( 'label'=>'Status', 'type'=>'html', 'value'=> TableDosenStatus::model()->findByPk($model>KodeStatusDosen)->NamaStatusDosen, ), 'TeleponHp', 'Nidn', 'Nip', 'GelarDepan', 'GelarBelakang', ), )); ?>

Fungi if php standard ($x==1) ? "One" : ( ($y==2) ? "Two" : "None" );


($model->JenisKelamin==1) ? 'Laki-laki' : 'Perempuan'

Memmanggil foto yang ada dalam database public function actionFotomahasiswa($id) { $sqlx = "select Foto From tablemahasiswa where KodeMahasiswa = '$id'"; try { $hasilQ = Yii::app()->db->createCommand($sqlx)->queryScalar(); } catch (Exception $e) { $hasilQ = 0; } header('Pragma: public'); header('Expires: 0');

Andrea Stevens Karnyoto(andrekarnyoto@yahoo.com), ym : andrekarnyoto, fb : karnyoto andre


header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Content-Transfer-Encoding: binary'); header('Content-Type: jpg,png,gif,jpeg,bmp'); echo $hasilQ; } Memasukkan foto keddalam database public function actionFoto($id) { $model = new DosenfotoForm(); if (isset($_POST['DosenfotoForm'])) { $arrItem = $_POST['DosenfotoForm']; $model->attributes = $arrItem; $isiberkas = ''; if ($file = CUploadedFile::getInstance($model, 'foto')) { $isiberkas = file_get_contents($file->tempName); } $modelsimpan = $this->loadModel($id); $modelsimpan->Foto = $isiberkas; if ($modelsimpan->save()) { $this->redirect(array('view', 'id' => $id)); } else { } } else { $this->render('foto', array('model' => $model, 'fid' => $id)); } } <?php class DosenfotoForm extends CFormModel { public $foto; public function rules() { return array( array('foto', 'file', 'types'=>'jpg, gif, png'), array('foto', 'required'), ); } public function attributeLabels() { return array( 'foto'=>'Pas Foto', ); } } <?php $this->widget('zii.widgets.CDetailView', array( 'data'=>$model,

Andrea Stevens Karnyoto(andrekarnyoto@yahoo.com), ym : andrekarnyoto, fb : karnyoto andre


'attributes'=>array( array( 'label'=>'Foto', 'type'=>'html', 'value'=> CHtml::image(Yii::app()->request>baseUrl."/index.php?r=dosen/fotodosen&id=$model->KodeDosen",'Foto tidak ditemukan',array('width'=>150)), ), 'KodeDosen', 'KodeDosen', Format mata uang indonesia number_format($data->harga) Untuk rata kiri ato rata kanan cgridview <?php $this->widget('zii.widgets.grid.CGridView', array( 'id'=>'barangmentah-grid', 'dataProvider'=>$model->search(), 'filter'=>$model, 'columns'=>array( 'kodebarangmentah', array( 'name'=>'kodepembelian', 'value'=>'$data->kodepembelian', 'filter'=>CHtml::listData(Pembelian::model()>findAll(), 'kodepembelian', 'kodepembelian'), ), 'namabarang', 'tipe', array( 'name'=>'jumlah', 'type'=>'html', 'value'=>'$data->jumlah', 'htmlOptions'=>array('width'=>'40','style'=>'textalign:center;'), ), array( 'name'=>'harga', 'type'=>'html', 'value'=>'number_format($data->harga)', 'htmlOptions'=>array('style'=>'text-align:right;'), ), array( 'name'=>'satuan', 'value'=>'$data->satuan', 'filter'=> array('meter'=>'Meter','batang'=>'Batang') ), array( 'class'=>'CButtonColumn', ), ), )); ?> Yang ini untuk mendapatkan field tertentu dalam select hehehe $sqlx = "select count(KodeDosen) From tabledosen where $xfield = '$xfsfilter'"; try { $hasilQ = Yii::app()->db->createCommand($sqlx)->queryScalar(); } catch (Exception $e) {

Andrea Stevens Karnyoto(andrekarnyoto@yahoo.com), ym : andrekarnyoto, fb : karnyoto andre


$hasilQ = 0; }