Membuat Shopping Cart Interaktif di PHP dengan SmartCart

Membuat Shopping Cart Interaktif di PHP dengan SmartCart - Dalam Website Toko Online tentunya tidak asing dengan nama shopping cart atau dalam bahasa indonesia keranjang belanja, dimana fitur ini merupakan fungsionalitas utama dalam website ecommerce, untuk membuat shopping cart yang interaktif anda bisa menggunakan plugin jquery ini yang bernama SmartCart

Fungsi yang disediakan plugin jquery ini cukup lengkap serta instalasi yang mudah membuat developer cukup 5 menit untuk instalasi plugin jquery ini ke dalam aplikasi yang sedang anda buat dengan framework apapun.



Langkah-Langkah Untuk Pasang SmartCart di PHP
1. Download File ZIP dibawah ini
https://github.com/techlab/SmartCart/archive/master.zip
2. Plugin Cart ini sudah mendukung Boostrap 3.0 dan Jquery 1.0, jadi pastikan template ada sudah terpasang
3. Extract dan Simpan Folder CSS & JS, Dalam file yang telah anda download, akan menemukan 2 file yang sangat penting yaitu jquery.smartCart.min.js dan smart_cart.min.css
4. Sisipkan smart_cart.min.css pada bagian <HEAD> dan jquery.smartCart.min.js pada bagian <BODY>
5 .Deklarasikan fungsi cart ini dengan kode berikut:
<script type="text/javascript">
$(document).ready(function(){
$('#smartcart').smartCart();
});
</script>
 6. Implementasikan Fungsi Cart pada Tag HTML bagian Produk:
<!-- KOTAK PRODUK, dideklarasikan dengan class "sc-product-item"  -->
<div class="sc-product-item">

<!-- GAMBAR PRODUK, dideklarasikan dengan data-name="product_image"  -->
<img data-name="product_image" src="gambar-produk.jpg" alt="gambar">

<!-- NAMA PRODUK, dideklarasikan dengan data-name="product_name" atau dengan elemen name="product_name"  -->
<h4 data-name="product_name">Product 1</h4>

<!-- Deskripsi Produk,dideklarasikan dengan data-name="product_desc" atau dengan elemen name="product_desc"  -->
<p data-name="product_desc">Product details</p>

<!-- HARGA PRODUK, dideklarasikan dengan name="product_price" atau dengan elemen data-name="product_price"  -->
<input name="product_price" value="5500" type="hidden" />

<!-- ID PRODUK,dideklarasikan dengan by name="product_id" atau dengan elemen data-name="product_id"  -->
<input name="product_id" value="12" type="hidden" />

<!-- TOMBOL Add to Cart / BELI, dideklarasikan dengan class="sc-add-to-cart"  -->
<button class="sc-add-to-cart btn btn-success">Beli</button>
</div>
</div>

 7. Terakhir Delarasikan fungsi Keranjang / Cart
<form action="checkout" method="POST">
<!-- Keranjang Belanja -->
<div id="smartcart"></div>
</form>
 Apabila berhasil fungsi cart akan tampil seperti berikut:

Read more

Show Hide Form Radio Button dengan Jquery di YII

Show Hide Form Radio Button dengan Jquery di YII - Membuat interface untuk menampilkan dan menyembunyikan element tertentu menggunakan bantuan jquery akan mempermudah dalam pengembangan, salahsatu contoh kasus disini adalah apabila radio button tertentu di klik, maka akan menampilkan konten isian selanjutnya, berikut adalah tampilan form radio buttonnya, berikut hasil perbedaannya:
Apabila Klik Radio Button Diterima

Apabila Klik Radio Button Ditolak akan Muncul Form Input Lainnya

Untuk Scriptnya Jquery:
<script type="text/javascript">
$(function () {
$("input[name='Response[status]']").click(function () {
if ($("#Response_status_1").is(":checked")) {
$("#emailReject").show();
} else {
$("#emailReject").hide();
}
});
});
</script>  

Script Form Radio Button di YII:
<?php
echo $form->radioButtonList($model,'status',
array('1'=>'Diterima','2'=>'Ditolak'),
array(
'template'=>'{input}{label}',
'separator'=>'',
'labelOptions'=>array(
'style'=>'padding-right:20px;margin-left:15px'),
)
);
?>  

Bagian Form yang akan di Tampilkan apabila di klik Ditolak
<div id="emailReject" style="display: none">

<div class="form-group">
<?php echo $form->textArea($model,'description_reject',array('class'=>'form-control')); ?>
</div> 

<div class="form-group">
<?php echo $form->textArea($model,'description_email',array('class'=>'form-control')); ?>
</div> 

</div>
Read more

Login menggunakan Email atau Username di YII

Alternatif Login menggunakan Email atau Username di PHP dengan Framework YII - Pada framework YII sendiri sudah disediakan fungsi untuk mengatur autentikasi dalam hal ini Login, untuk masuk ke aplikasi, berbagai kemudahanpun ditawarkan agar mempermudah user untuk mengakses aplikasi. 
Login menggunakan Email atau Username di YII
Form Login Alternatif Email atau Username YII
Sebelumnya:

Salahsatunya login dengan alternatif, misalnya login dengan pilihan alamat email atau username, untuk konfigurasi di YII sangatlah mudah silahkan buka file UserIdentity.php di direktori folder /protected/components/UserIdentity.php
Login menggunakan Email atau Username di YII
File UserIdentity.php (Sebelumnya)

Replace code pada baris 15 dengan code dibawah ini:
if(strpos($this->username, '@') !== false){
$user = User::model()->findByAttributes(array('email'=>$this->username));
}else{
$user = User::model()->findByAttributes(array('username'=>$this->username));
}

Sehingga menjadi seperti berikut:
Login menggunakan Email atau Username di YII
File UserIdentity.php (Setelah Diedit)

Sekian tutorial singkat soal cara membuat login alternatif dengan username atau email menggunakan framework yii, selain itu bisa juga dipakai atribut lainnya jika dibutuhkan, contoh loginnya dengan nomor hp atau pin dll. Semoga bermanfaat.
Read more

Contoh Aplikasi Kasir untuk Penjualan berbasis Web

Contoh Aplikasi Kasir untuk Penjualan berbasis Web - Dalam transaksi pembelian dan penjualan barang pada sebuah bisnis usaha tentunya sangat diperlukan pembukuan, pembuatan laporan baik berupa data barang masuk dan barang keluar, serta informasi transaksi pembelian dan penjualan barang aplikasi ini sering disebut dengan aplikasi kasir atau yang lebih familiar dengan nama aplikasi POS (Point of Sales).

Dengan memanfaatkan aplikasi kasir ini dapat memonitor, memprediksi kebutuhan pasar perihal barang yang paling laris terjual berdasarkan data transaksi penjualan barang, nah disini saya akan berbagi informasi perihal aplikasi penjualan (Point of Sales) yang telah saya buat dengan menggunakan PHP dengan framework YII:

Terdapat beberapa fungsionalitas utama dalam aplikasi kasir ini seperti transaksi pembelian barang, penjualan barang, rekapitulasi laporan harian, mingguan, bulanan dan tahunan, saat ini saya sedang mengembangkan aplikasi ini dengan balutan framework javascript sehingga membuat tampilannya lebih dinamis, seperti pada tutorial sebelumnya Menghitung Total dan Sub Total dengan Jquery untuk kasus Aplikasi Penjualan, Aplikasi Kasir ataupun Toko Online.

Nama Aplikasi
E-Warung

Developer
Mugi Rachmat

Build With
YII 1.17, Boostrap 3.3, Jquery 1.1

Versi 
1.0 - 26.05.2017

Aplikasi Ini Telah Dipakai Oleh:
Regal Group - www.regal036.com

Contoh Aplikasi Penjualan Kasir dengan PHP
Tampilan Form Login ke Aplikasi

Contoh Aplikasi Penjualan Kasir dengan PHP
Form Dashboard Aplikasi Kasir

Contoh Aplikasi Penjualan Kasir dengan PHP
Transaksi Penjualan Barang (Dinamis) - Lihat Tutorial

Contoh Aplikasi Penjualan Kasir dengan PHP
Konfigurasi Aplikasi Penjualan

Demikian dapat saya sampaikan perihal contoh dari aplikasi untuk kasir jualan yang dibangun berbasis web menggunakan framework PHP, CSS (Boostrap) dan Jquery. Untuk penawaran kerjasama atau ingin melihat preview demo aplikasi dapat kontak saya via email mugirachmat@infomugi.com, Terimakasih.

Lihat Contoh Aplikasi:
Read more

Menghitung dan Menampilkan Selisih Waktu di YII

Menghitung dan Menampilkan Selisih Waktu Dalam Satuan Menit di YII - Cara Mengambil data waktu dari database untuk menghitung selisih waktu antara jam mulai dan jam berakhir dalam satuan menit menggunakan PHP dengan framework YII.

Untuk melakukan perbandingan antara 2 waktu dan menampilkannya dalam satuan menit di YII sangat mudah, caranya hampir sama dengan mekanisme pengkodean di PHP pada umumnya, yaitu menggunakan fungsi strotime, abs dan round.

Langkah Pertama
Membuat fungsi yang dapat menghitung perbandingan tanggal yang disimpan dan diletakan pada model, disini saya akan mengambil study kasus "Menghitung Durasi Waktu Progress Pengerjaan Aktifitas dan Menampilkannya dalam Satuan Menit", seperti preview dibawah ini:



Dapat dijelaskan dalam gambar tersebut merupakan kasus rincian aktivitas pekerjaan dimana ada nama pekerjaan (job), waktu mulai dan waktu selesai (ditampilkan dalam tanggal dan jam), kemudian durasi progress pengerjaan.

Nah disini kita akan menghitung berapa durasi waktu yang dikerjakan berdasarkan dari waktu mulai dan waktu selesai yang ada di database ? Caranya silahkan buka salahsatu model yang telah di buat menggunakan CRUD, sebagai contoh saya menggunakan model dengan nama Projectdetail.php
nama_aplikasi\protected\models\Projectdetail.php

Kemudian sisipkan kode fungsi berikut untuk menghitung perbandingan waktu dalam satuan menit, saya share 2 script fungsi, tinggal pilih salahsatu: 

public function hitungMenit($mulai,$berakhir){
$interval  = abs(strtotime($berakhir) - strtotime($mulai));
$menit   = round($interval / 60);
return 'Durasi: '.$menit.' Menit'; }
atau
public function selisihWaktu($mulai,$berakhir){
$waktu1 = strtotime($mulai);
$waktu2 = strtotime($berakhir);
return 'Durasi: '.round(abs($waktu1 - $waktu2) / 60,2). ' Menit'; }

Langkah Kedua
Bagaimana cara memanggil fungsi tersebut ? Bagaimana cara menampilkannya di View ? Untuk implementasinya bisa di tampilkan di admin.php (tepatnya pada widget CGridview) atau view.php (tepatnya pada widget CDetailview) atau index.php (pada widget CListView)

Sebagai contoh disini saya akan menampilkannya dalam Widget CGridview (bentuk tabel), dan tinggal silahkan sisipkan kode berikut pada bagian CGridview:
  array(
    'header'=>'Progress Pengerjaan',
 'value'=>'Projectdetail::model()->hitungMenit($data->waktu_mulai,$data->waktu_berakhir)',
    ), 

Dapat saya jelaskan dalam script diatas terdapat 2 fungsi, yang pertama ada header (untuk menampilkan judul kolom), ada value (untuk menampilkan nilai yang akan di tampilkan),
Projectdetail::model()->hitungMenit($data->waktu_mulai,$data->waktu_berakhir)
Ini berarti memanggil model dengan nama Projectdetail, kemudian memanggil method dengan nama hitung menit, di tambah fungsi dengan parameter waktu mulai, dan waktu berakhir di tandai dengan $data->waktu_mulai dan $data->waktu_berakhir.

Demikian dapat saya sampaikan apabila ada yang ditanyakan silahkan berkomentar dibawah atau email di mugirachmat@infomugi.com, semoga bermanfaat. 
Read more