multiple select subquery sql

berikut query select dengan banyak sub query , query ini menunjukkan bisa melakukan perintah select dengan beberapa subquery didalamnya

query ini mengambil nama , kota asal , jumlah penjualan , login terakhir  dai user dengan  id 8

tb_user (id_user,nama,id_kota)

tb_kota (id_kota,kota)

tb_jual (id_user,nama_barang)

tb_history_login(id_user,tanggal)

berikut querynya


 

select u.nama_user,k.kota,
(select count(id_jual) from tb_jual j2 where j2.id_user ='8' ) as j_pro,
(SELECT MAX(`tanggal_login`) as tanggal FROM `tb_history_login` where id_user='8') as tgl_ol,
from tb_user u
left outer join tb_kota k on k.id_kota=u.id_kota
where u.id_user ='8'

semoga berguna 🙂

tombol reset data pada datagrid jeasyui from button

reset-datagrid

untuk melakukan load datagrid dari sebuah button , kita akan seditik tricky yaitu memberi button reset dengan query pencarian kosong sehinga sama dengan kita meload data awal

seperti select * where data =”

berikut tabel htmlnya datagridnya , kita akan meload data dari datagrid dengan


<table id="dg" title="Menu Data Kategori" class="easyui-datagrid" style="width:700px;height:250px"
url="alamatloaddata"
toolbar="#toolbar" pagination="true" loadMsg="Loading!..."
rownumbers="true" fitColumns="true" singleSelect="true">
<thead>
<tr>
<th field="id" hidden='true' width="50">ID</th>
<th field="kat" width="50">Kategori</th>
</tr>
</thead>
</table>

<div id="toolbar">
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="newUser()">Tambah Kategori</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-edit" plain="true" onclick="editUser()">Edit Kategori</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="destroyUser()">Delete Kategori</a>
<span>Kategori:</span>
<input id="cari" style="line-height:26px;border:1px solid #ccc">

<a href="#" class="easyui-linkbutton" plain="true" onclick="doSearch()">Search</a>
<span style="float:right;padding:5px">
<a href="#" class="easyui-linkbutton" plain="true" onclick="reset()">Reset</a>
</span>
</div>
<!-- form save -->
<div id="dlg" class="easyui-dialog" style="width:500px;height:200px;padding:10px 20px"
closed="true" buttons="#dlg-buttons">
<div class="ftitle">Isi untuk menambah kategori</div>
<form id="fm" method="post" novalidate>
<div class="fitem">
<label>Nama Kategori</label>
<input name="kat" class="easyui-textbox" type="text">
<input name="id" type="hidden">
</div>
</form>
</div>
<div id="dlg-buttons">
<a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="save()" style="width:90px">Simpan</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlg').dialog('close')" style="width:90px">Batal</a>
</div>

 

file resetnya


function reset(){
$('#cari').val('');
$('#dg').datagrid('load',{
cari: $('#cari').val()

})

untuk mengkaitkan tombol reset dengan load datanya tulis onclick=”reset()” seperti pada kode dibawah ini

<a href=”#” class=”easyui-linkbutton” plain=”true” onclick=”reset()”>Reset</a>

$(‘#dg’).datagrid(‘load’,{
cari: $(‘#cari’).val()

})

adalah kode untuk meload data grid ke url yang telah dipasang dengan membawa variabel cari dengan metode post

semoga berguna 🙂

referensi

memperpanjangn ssl gotrust with ev

untuk memperpanjang ssl geotrust

  • dibutuhkan csr lama kita pada server untuk diupload ke geotrust,
  • setelah membayar perpanjangan kita akan mendapat harus mengisi beberapa informasi (yang optional ndak usah kita isi),
    ssl-geotrust-1
    mengisi data kontak administrasi

    ssl-geotrust-2
    mengisi data kontak teknis

    ssl-geotrust-3
    setelah mensubmit maka kita akan diemail oleh geotrust untuk mendapatkan link masuk ke sistim geotrust yang berguna untuk melihat status progress perpanjangan ssl kita , jika sudah selesai semua progressnya key ssl yang baru juga bisa didownload di link tersebut (https://products.geotrust.com/orders/orderinformation/authentication.do)berikut contoh datanya ,kita  masukkan email dan domain web anda tanpa http/https misal  ambilgratis.com
    link-access-geotrustsetelah diisi dan klik continue akan muncul
    link-acces-geotrust-2klik request access, dan akan muncul link akses pada email
    link-gotrust-access-3
  • menerima interview via telepone
  • mendapatkan key , dan kita upload pada server kita menggantikan key lama

lihat order status

ssl-renew-geotrust

gambar informasi order (sebelum dilakukan konfirmasi via telepon)

geotrust-completed

gambar informasi order sesudah menerima konfirmasi via telepon

lihat informasi sertifikat (klik View Certificate Information)

geotrust-pending-1

sertifikat belum selesai digenerated oleh geotrust (pending)

sertifikat selesai

ssl-goetrust-completed-sertificate

jika sudah selesai akan ada email dari geotrust seperti ini

ssl-email-completed

masuk lagi ke halaman akses geutrust dan download certificatenya

terdapat 2 format sertifikat yaitu x.509 dan pKCS #7

kita gunakan yang x.509 karena kita memakai apache sebagai webserver , untuk iis dan tomcat memakai PKCS #7

terdapat tambahan sertifikat intemerdiate. (biasanya untuk yang ada green barnya)

semoga berguna 🙂

 

load data dari database menggunakan datagrid jeasyui dengan php

berikut langkah untuk meload database menggunakan datagrid jeasyui

syaratnya

  • membutuhkan library jquery
  • membutuhkan library jeasyui

download dulu library jeasyui disini

berikut kodenya

load dulu kebutuhan librarynya


<script src="/jquery-1.11.2.min.js"></script> (ganti dnegan alamat jqueryanda download <a href="https://jquery.com/">disini</a>)
	<link rel="stylesheet" type="text/css" href="http://www.jeasyui.com/easyui/themes/default/easyui.css">
	<link rel="stylesheet" type="text/css" href="http://www.jeasyui.com/easyui/themes/icon.css">
	<link rel="stylesheet" type="text/css" href="http://www.jeasyui.com/easyui/themes/color.css">
<script type="text/javascript" src="http://www.jeasyui.com/easyui/jquery.easyui.min.js"></script>

halaman htmlnya

<table id="dg" title="Menu Data Kategori" class="easyui-datagrid" style="width:700px;height:250px"
url="alamatloaddata"
toolbar="#toolbar" pagination="true" loadMsg="Loading!..."
rownumbers="true" fitColumns="true" singleSelect="true">
<thead>
<tr>
<th field="id" hidden='true' width="50">ID</th>
<th field="kat" width="50">Kategori</th>
</tr>
</thead>
</table>
<div id="toolbar">
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="newUser()">Tambah Kategori</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-edit" plain="true" onclick="editUser()">Edit Kategori</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="destroyUser()">Delete Kategori</a>
<span>Kategori:</span>
<input id="cari" style="line-height:26px;border:1px solid #ccc">

<a href="#" class="easyui-linkbutton" plain="true" onclick="doSearch()">Search</a>
<span style="float:right;padding:5px">
<a href="#" class="easyui-linkbutton" plain="true" onclick="reset()">Reset</a>
</span></div>

untuk load data dari database kedalam tabel ganti isi url dengan alamat data untuk diload

berikut file jsonnya

{

"1":{"id":"1","kat":"Barang (mobil, properti, komputer, sepatu dsb)"},

"2":{"id":"3","kat":"Hewan"},

"3":{"id":"102","kat":"Informasi (Event, Acara Kota, Bazaar, Pengobatan Gratis Dsb)"},

"4":{"id":"2","kat":"Jasa (katering, Event organizer, bengkel, dsb)"},

"5":{"id":"38","kat":"Lowongan Kerja"},

"6":{"id":"25","kat":"Properti (Tanah,Rumah,Ruko dsb)"},

"7":{"id":"4","kat":"Tanaman"}

}

dari file json tersebut diparsing dengan file datagrid pada kolom

<input name=”kat” class=”easyui-textbox” type=”text”> //ini ditampilkan
<input name=”id” type=”hidden”> // ini disembunyikan

beberapa contoh membuat json diatas dengan php


$db=koneksi ke mysql

$sql = "select * from tb_kategori where status ='a' and id_sub_kategori='0' order by kategori ASC";
$encode;
$db=connect_db();
$hasil = $db->query($sql) or die("Sistem penyimpanan bermasalah".$db->error);
$encode = array();
$nilai=1;
while($row=$hasil->fetch_assoc())
{

$encode[$nilai] = array( 'id' =>$row['id_kategori'],'kat'=> $row['kategori']);
$nilai++;
}

$db->close();

echo json_encode($encode);

hasilnya

jeasyui-table

semoga berguna 🙂

 

disable webserver signature apache

untuk menyembunyikan informasi tentang webserver apache kita agar aman dari para peretas maka caranya adalah mendisable digital signature pada webserver berikut caranya:

cari file ini pada debian / ubuntu / linux mint

/etc/apache2/apache2.conf

pada CentOS, Fedora, RHEL or Arch Linux:

/etc/httpd/conf/httpd.conf

kemudian ganti pada


ServerSignature Off

ServerTokens Prod

kemudian restart servernya


service apache2 restart (Debian, Ubuntu / Linux Mint)
service httpd restart (CentOS/RHEL 6)
systemctl restart httpd.service (Fedora, CentOS/RHEL 7, Arch Linux)

contoh digital signature yang kita hidden

web-server-signature-2
contoh web server dengan digital signature yang terbuka

web-server-signature-1

jangan lupa untuk ubuntu dan turunannya tambahkan sudo  didepannya

semoga berguna 🙂

referensi :

get php reporting error

agar php menampilkan error beberapa yang harus kita konfigurasi adalah:

pada file php kita harus memuat ini


ini_set('display_errors', 1);

ini_set('display_startup_errors', 1);

error_reporting(E_ALL);

pada file php.ini ubah kode ini


display_errors = on

dan

display_startup_errors = on

semoga berguna 🙂

referensi :

apa itu bower

bower

apa itu bower (frontend package management)?

oke sebelum kesana apakah anda mengalami kesulitan untuk memaintenance library -library frontend yang digunakan apalagi jumlahnya banyak?, dan juga kadang kita juga menemukan bower.json  pada sebuah file hasil download dari git,  berarti anda membutuhkan bower

dengan bower kita lebih mudah untuk memanage  front-end dependency, bower adalah sebuah tools yang dapat digunakan untuk menginstal package-package front end.

misalnya kita membutuhkan library bootstrap dengan bower tinggal

bower install bootstrap

kita tidak perlu ke webnya dan mendownload manual bootstrap

kunjungi web official bower di https://bower.io/

syarat menginstal bower

  • sudah terinstalasi NPM (Node Package Manager) / node js untuk linux atau git untuk windows
  • terhubung ke internet

bower.json membantu Bower memahami proyek anda; Bower merekam meta data seperti nama proyek, versi, pencipta, ijin, dependensi, dan lain-lain. Informasi ini tersusun di dalam format JSON

contoh sebuah bower.json

{
"name": "app-name",
"version": "0.0.1",
"dependencies": {
"sass-bootstrap": "~3.0.0",
"modernizr": "~2.6.2",
"jquery": "~1.10.2"
},
"private": true
}

bower install adalah perintah untuk menginstal sebuah paket yang terdaftar di dalam Bower registry. Perintah ini juga akan menginstal paket-paket yang tercantum di dalam file bower.json di bawah “dependencies”. Secara default, semua package yang di install akan berada di dalam folder bower_components

jadi dengan adanya bower kita tidak perlu manual mengatur library dan versi yang dibutuhkan dalam sebuah project , dan semua itu bisa dilakukan sebuah perintah saja akan langsung terinstal dan terupdate ke aplikasi.

semoga berguna 🙂

referensi :

cek timezone php

berikut cara cek timezone , timezone php akan menentukan waktu server kita karena zona waktu yang digunakan PHP menganut waktu server , adanya beda timezone akan membuat perbedaan waktu antara komputer kita (dengan zona waktu kita) dengan server php ( menggunakan zona server )

 


cara 1

echo date_default_timezone_get();
cara2
echo phpinfo();

kemudian mencari date.timezone disana akan tertera timzone kita

referensi:

mengambil baris terakhir dari kolom tipe date dengan kondisi while

berikut tips query untuk mengambil data  dari tanggal terakhir dimana ada kondisi while,

kita grup kan dahulu agar pesan dari seluruh user tampil yang paling akhir, kemudian kita select max

misalkan kita punya tb_pesan(id_pesan,status,tanggal,pesannya): berisi pesan -pesan dari banyak user dan setiap user memeliki lebih dari 1 pesan, akan kita ambil pesan terakhir dari user dengan status pesan !=0


select max(pesan.tanggal),pesan.pesannya  from tb_pesan pesan

where pesan.status !='0' group by pesan.tanggal

semoga berguna 🙂

referensi:

 

 

left outer join dengan kondisi while

berikut tips query sql dengan left outer join yang menggunakan kondisi while

formatnya select …… from  … left outer join on …..=….. and klasul lainnya misalnya kita punya tb_kabupaten (id_kabupaten, nama_kabupaten),tb_dokter(id_dokter,id_kabupaten,nama_dokter,jenis)

kita akan mengambil data dengan left outer join , data dokter laki-laki berikut sintaksnya

SELECT k.nama_kabupaten,d.nama_dokter
FROM  kabupaten k
LEFT  OUTER JOIN
tb_dokter d ON d.id_kabupaten =k.id_kabupaten AND d.jenis ='laki-laki'

semoga berguna 🙂

referensi :

 

Ditulis dalam sql. Leave a Comment »