Tampilkan postingan dengan label mysql. Tampilkan semua postingan
Tampilkan postingan dengan label mysql. Tampilkan semua postingan

2015-06-13

Belajar MYSQL part 1 (membuat DB)

Pelajaran saat ini, kita akan memakai phpmyadmin ( http://localhost/phpmyadmin/ ). Pada pelajaran ini saya akan membuat table dan juga database. Pelajaran ini akan memakai mysql sebagai salah satu db yang merupakan pasangan langsung dari php. Kita harus install dahulu  XAMPP. Sekedar tambahan bahwa gambar dibawah belum tentu sesuai denngan instalan yang akan anda lakukan.

Membuat DB

setelah masuk kedalam phpmyadmin, pilih new yg ada dibawah tulisan phpmyadmin
 isi kotak yang tersedia dengan nama db yang kita inginkan
pada pelajaran ini kita akan membuat database toko

2015-03-18

Alasan Jangan Membeli Zend part 1

kondisi net saat ini

Saat menulis ini, kondisi saya lagi kesulitan internet sehingga numpang di luar, selain kesulitan yang lain. Tetapi informasi ini harus disampaikan, daripada lupa.. Inti dari tulisan ini adalah menunjukkan beberapa fakta menarik sebelum anda memutuskan melirik Zend.. kemudian melanjutkan ke pembahasan Zend.
Kenapa menulis jangan membeli Zend? karena tidak mudah mengatakan jangan membeli Zend!! setelah mengetahui bahwa pradigma programing kita sudah mengalami ... peningkatan! Apakah tulisan ini menjatuhkan Zend? mungkin penilaian itu akan terlihat saat membaca 2 artikel tentang pembahasan Zend ini.

2015-03-13

Curhat Aplikasi Klinik : Data Pasien

Mari sedikit menjelajahi tentang data pasien di rumah sakit. Seperti yang kita ketahui bentuk table yang kita gunakan berasal dari form yang dibuat dari front desk, kertas status dan pendukungnya. Dalam klinik atau puskesmas, semuanya dibuat dalam 1 kertas.. Dari sinilah muncul asumsi bahwa hanya dibutuhkan 1 table untuk pasien dan pendapat itu tidak sepenuhnya salah. Kita harus mengakui beberapa hal dari gambar di atas yaitu:
  • depan (Front desk) memberikan kertas status dan mengisi dengan detail pasien
  • dokter menuliskan apa yang jadi masala pasien dalam kertas (status) 
  • memberikan kertas pada depan
  • ditagih. 
apakah itu benar? belum tentu. Metode di atas terdapat pada klinik 'kecil' yang mana pasien datang dan pergi 'sesuka hati' (ups).. maksudnya datang hari ini dan besok tidak datang kembali. Sehingga yang terjadi hanya diberikan 1 kertas dan selesai disimpan dalam kotak.. Nanti 3 bulan kemudian di musnahkan dan tidak di masukkan ke database. Dalam tulisan ini saya akan menjelaskan tentang merancang pasien yang sesuai.

2015-03-03

Curhat: Membuat kode Kondisi Yang Tepat


Dalam Programing seperti PHP. Sangat wajar apabila kita membuat kondisi dalam code kita. Mengingat IF sendiri mampu memberi arahan kemana program kita akan berjalan
if(....){ ..... }

Perintah IF memiliki pendamping yaitu ELSE. Dalam kode yang sering kulihat sering tidak memasukkan ELSE sebagai pendampingnya.
Dalam pengerjaannya tidak ada yang salah bila menggunakan IF tanpa ELSE.. tetapi ketika sudah mengerjakan program yang rumit atau spesifik dalam data; ELSE wajib dimasukkan walaupun terlihat tidak berguna.

Sebuah kebiasaan baik apabila kita memutuskan membuat code kita lebih lengkap. Dalam hal ini memberikan else walaupun tidak terlihat kegunaannya.
Tapi berangkat dari pernyataan tidak terlihat kegunaannya, mari telaah bahwa kode yang baik adalah kode yang mampu menangani segala masalah tanpa menambah masalah.

2015-03-01

CURHAT PROGRAMER : MEMAKAI MYSQL

dalam keseharian saya biasa menggunakan mysql dalam program saya. Jadi sangat wajar apabila sangat inget sekali dengan perintah

  • mysql_connect
  • mysql_query
  • dan mysql_ lainnya


Tetapi semua berubah saat diketahui perintah mysql_ kurang untuk database mysql yang memiliki kemampuan seperti transaksi. Pada mysql_ hanya memberikan fungsi dasar yang kurang untuk menggunakan kemampuan mysql terbaru. Untuk hal ini, akhirnya memutuskan mengganti dengan mysqli. Tapi menggunakan mysqli tidak semudah memakai perintah mysql_.

2014-12-02

mysqli buat pemula

Tulisan berikut lebih kepada membuat cheat code buat memakai mysqli memakai mysqli. Konsepnya disini adalah kita membuat sebuah fungsi/kelas sendiri. jadi yang harus kamu lakukan adalah copy paste kodingku dan edit2 yang menurut kamu harus/layak di edit.
bermain di pantai

Fungsi disini memakai fungsi sederhana saja. Namun saya akan membahas beberapa fungsi yang lebih ke arah keamanan. Jadi dibandingkan ada query langsung dijalakan.. kita melakukan pengechekan terlebih dahulu.

Kita mulai dari coding sederhana..

$host="localhost";
$user="root";
$pass="";
$db="work_sejahtera";

$mysqli = new mysqli($host, $user, $pass, $db);

/* Membuka Koneksi */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}else{
//evertyhing looks fine

}

printf("Host information: %s\n", $mysqli- > host_info);

/* Menutup Koneksi */
$mysqli- > close();

konsep di atas adalah membuka koneksi lalu menutupnya. Bila anda perhatikan saya menulis else padahal tidak diperlukan. Hal ini saya biasakan untuk dokumentasi, biasa saya sisipkan sesuatu penjelasan dibawahnya

2014-11-29

mysqli cheat.. tinggal copas aja

artikel ini khusus buat yang masih menggunakan mysql_connect, mysql_query dan lain-lain. Memakai perintah tersebut tidak disarankan lagi dan di harapkan pindah ke PDO atau mysqli. Sebenarnya kalau udah sering, kita ngak langsung kebikin template sendiri. Berikut adalah template yang saya harap anda bisa gunakan.

Ada beberapa hal sebelum anda membaca coding. untuk query saya tidak menulis dalam kurung tetapi di luar
jadi hasil ketikannya

$sql=' ..... ';
mysqli_query($sql , $con) ; 


2014-07-07

Mysql : Mari Menggunakan Mysqli

Sudah lama kita menggunakan perintah dari fungsi-fungsi mysql. Semakin lama, perintah mysql sendiri sudah mulai harus ditinggalkan. Bagaimanapun juga kita yang belajar PHP dari awal harus menerima bahwa saat ini perintah mysql (mysql_connect, _query) harus ditinggalkan. Lalu bagaimana penggantinya?
kemarahan penulis karena harus ganti perintah
Penggantinya adalah perintah mysqli atau pdo. Saya sendiri sebenarnya belajar memakai PEAR! bila kita menggunakan xampp untuk aplikasi belajar php, PEAR sudah jadi satu paket di dalamnya. Dalam tulisan ini saya akan kupas memakai mysqli. Sebagai pendahuluan saya jelaskan alasan kenapa memakai

  • PEAR. pear adalah fungsi2 yang di kumpulkan dalam 1 kelompok. Kamu bisa langsung pakai dengan memanggil file utamanya dan juga kelompok yang kamu akan gunakan (DB). Asumsikan kamu memakai DB, maka hasilnya akan mirip seperti PDO. Namun dari yang saya dapatkan beberapa database tidak di support oleh PEAR?!? Namun pemakaian PEAR sendiri bukan hanya di database saja. Kekurangan yang sangat vital adalah kamu harus install PEARnya?!? Beberapa temuan dari saya, PEAR DB support database jadul?
  • PDO. Seperti penjelasan di atas, pdo lebih kepada koneksi database saja. Saya melihat pdo lebih banyak mendukung database besar dan baru! Cukup layak bila kita memakai untuk database yang kompleks. 
Untuk masalah perbandingan, kecepatan dan lain-lain ... saya kurang mahir untuk perbedaannya.

2014-05-19

optimize: dgn merubah tipe en cara cari.. didapat

nyoba mitos sebentar.. anyway baca artikel berikut
http://pojokprogrammer.net/content/performance-tuning-sederhana-di-mysql-menggunakan-index
lalu saya akan uji berdasarkan dari pc gw sendiri.. asumsikan bahwa angka yg gw dapetin ini sama seperti kamu punya.. misal km 9 detik.. tp di gw 3 detik.. asumsikan sama.. disini mau test apakah
1. pake count (*) lebih lambat dari count(baris)
2. perbedaan tipe innodb ngaruh besar?

ujicoba ada 2 yaitu
select tanpa pembatasan (where) dengan pembatasan (pake where)
kode yang where
select count(...) from table where baris <= 100 and baris >= 2207181

INNODB 

untuk count tanpa where
* vs baris = 1.14 vs 1.24 | 2 vs 2.16

untuk count dengan where
* vs baris =  0.95 vs 1.34 | 1.67 vs 1.65

MYISAM

untuk count tanpa where
* vs baris = 0 vs 1.79 | masih sama!

untuk count dengan where
* vs baris =  1.38 vs 1.34 | 1.25 vs 1.33

silakan komen dibawah

nb: baris dibuat index. pada angka awal saya menambahkan id sebagai primary dan auto-increment. Yang tebal adalah waktu untuk table yg tidak ada id !!

query : mencari yang tidak punya pasangan (not Join)

berawal dari kebutuhan cara menemukan data yang tidak memiliki relasi. Gw cari-cari deh referensi di internet. Namun walaupun berhasil menemukan, tidak semua faham akan cara pakainya bila kita tidak melatihnya. Jadi saya bikin skenario sebagai berikut
Belajar dulu gan

Pertama buat dahulu table mobile_system
CREATE TABLE IF NOT EXISTS `mobile_system` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`detail` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;
lalu insert
INSERT INTO  `mobile_system` (`id`, `name`, `detail`) VALUES  
(NULL, 'Ios', ''), 
(NULL, 'Android', ''), 
(NULL, 'BB', ''),
 (NULL, 'Palm', ''), 
(NULL, 'Win', ''), 
(NULL, 'Firefox OS', ''),
 (NULL, 'Meer', ''),
 (NULL, 'Tizen', '');
maaf atas pemilihan warnanya.. Lalu lanjutkan dengan table phonegap_system
CREATE TABLE IF NOT EXISTS `phonegap_system` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`sys` int(11) NOT NULL,
PRIMARY KEY (`id`)
)

2014-04-12

Skedule buat Program PHP


berawal dari keinginan untuk membuat semacam program backup data. Gw menemukan bahwa di linux kita dapat menggunakan semacam penjadwalan atau disebut cron. Bila anda pakai hosting/server dengan linux, silakan cari dulu cron. Tetapi kalau windows.. maka ini adalah step yang memakai windows!

Pertama kita mulai dari hal paling sederhana yaitu program yang akan dijalankan. Tetapi ada beberapa hal yang perlu diketahui sebelum membahas caranya

  1. sebelum melakukan backup harus ada pembersihan
  2. proses pembersihan disini adalah penghapusan data
  3. lalu ada proses pemindahan data tertentu ke table 
  4. membuat log
  5. lalu kemudian melakukan backup data
Tetapi dalam artikel ini saya cuma akan memasukkan query saja. Kita bisa asumsikan bahwa php yang dijalani ini berisi 4 hal di atas. Dan perlu diketahui semua ini berawal dari 1 php dahulu lalu ... 

2014-03-29

Logika Paging Part 2

berangkat dari tutorial sebelumnya. Mari pelajari tentang paging! Pertama yang perlu dikumpulkan adalah halaman berapa yang sedang dibuka!
Bila pakai konsep page bukan start, maka kamu sudah dapat halamannya.. Namun mari kita percepat dengan logika yang lain yaitu mengumpulkan semua variabel yang dapat digunakan untuk paging yaitu

  • total data
  • total halaman
  • halaman sebelumnya
  • halaman sesudahnya
  • alamat ke halaman lainnya
Saran dari saya adalah membuat paging sebagai fungsi dengan variable yang dikirim sesuai dengan yang dibutuhkan.

logika paging part 1

sebelum masuk ke paging.. mari bahas dari sisi apa yang tampil bukan pagingnya. Asumsikan gw punya data barang komoditas yang sedang ngantri di gudang buat keluar.

Bahas apa yang dipakai dahulu yaitu komoditas. Nah komoditas ini memiliki nama (terpenting) dan keterangan lain (tidak usah diperjelas agar pendek). Berikutnya prioritas barang yang akan keluar adalah barang yang memiliki status siap keluar (5). lalu yang keluar duluan adalah yang tanggal keluarnya lebih tua (1 maret) dan yang tanggal hari ini.

Jadi kita punya table komoditas yang memiliki field (sederhana)

  1. id
  2. nama
  3. tanggal
  4. status
dari sini kita akan keluarkan datanya, menggunakan logika ini
  • panggil data dengan query. Ingat pada status dan ordernya yang berdasarkan tanggal lebih tua
  • pastikan query benar . SANGAT PENTING
  • tampilkan data

2014-01-13

edit data memakai select

Sebelum memulai.. dalam membuat sebuah program input-ouput! kita juga ada yang namanya program edit. Mari asumsikan bahwa kita membuat sebuah program informasi loket. Perlu dicatat, bukan informasi nomor antrian ya. Jadi program ini menunjukkan loket mana yang buka dan loket mana yang tutup.

Untuk tablenya tidak dibuat rumit, hanya terdiri dari 3 field yaitu

  • id
  • nama
  • status


Dimana status hanya terdiri dari BUKA dan TUTUP. Untuk scriptnya kita akan memakai form yang terdiri dari select saja dan tentu saja 1 hidden! Namun sebelum meneruskan mari asumsikan bahwa kita menentukan tipe status (buka dan tutup) dari table lain. Jadi bisa dibilang terdapat 2 table yang saling mendukung yaitu table loket dan table loket_status

2014-01-07

bikin relasi di phpmyadmin


untuk membuat 2 table atau lebih saling terhubung. Ada teori penting sebelum memulai. Namun mari bahas satu-satu dahulu.. Pertama dari membuat 2 table sederhana.. Dalam contoh ini saya membuat table tutorial dan tutorial text yang terhubung antara 1 dengan yang lain. Untuk mempermudah berikut adalah strukturnya..


ttext  dari table tutorial_text dan tlist dari table tutorial list.

2013-08-03

Ask 2 Solve : Membuat select provinsi dan Kabupaten


Pertanyaan ini lebih kepada bagaimana cara select pertama akan merubah select ke 2. Disini kita pelajari logikanya.. Pada select pertama kita memiliki propinsi, dimana propinsi ini memiliki id. Perhatikan id disini bisa berubah angka atau huruf, tetapi rekomendasi saya angka saja.

2013-06-15

Ask2Solve : mysql_fetch_array(): supplied argument is not a valid MySQL

Tidak ada yang salah memberikan pertanyaan yang berulang-ulang. Namun akan salah bila kita tidak tahu sumber masalahnya berasal. Kita tentu akan stress akan peringatan ini (warning=peringatan), berujung kita panik! Namun jangan panik.. karena kita tidak akan menemukan jawabannya.
"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL
beberapa kali saya menemukan ada yang memberikan pertanyaan yang sama.. tetapi berkali-kali jawabannya sama. Saya berusaha memberi kemudahan dalam membuat pertanyaan seputar pertanyaan mysql dan database ini. Pertama klik link tulisan yang saya berikan disebelah. Itu akan membawa anda ke http://adapani.blogspot.com/search/label/database (tag database). Ada beberapa tulisan penting yang bisa anda baca.

Jawaban untuk masalah ini adalah:

Tapi untuk catatan sebelum bertanya.. Mari kita lihat flow hingga muncul warning tersebut.

2013-05-24

jangan pake mysql_error()

semoga ada yang belikan
mengcounter tulisan gw yaitu tentang penggunaan mysql_die dan meletakkan query di variable lalu dijalankan. Sejujurnya saya tidak maslah dengan penulisan sql, karena itu masalah kebiasaan anda saja. Kebiasaan tidak bisa dipaksakan.. Tapi sekarang kita membahas 'JANGAN PAKAI MYSQL_error'.. mari bahas 1-1 alasannya

A2S : penamaan field yang bagus

Untuk kerapian barang balita anda, beli saja tas lucu ini
Bagaimana sih cara penamaan field yang bagus. sejujurnya tidak ada!! ini karena kebiasaan saya saja. Tetapi semua ada karena ada masalah dan ada solusi. Masalah yang saya hadapi adalah tidak biasa pake inner join dan field yang kugunakan sangat banyak dan beberapa field terlihat kembar. Selama ini kita menulis query seperti ini
SELECT
`code`, `size`, `discount`, `new_arrival`
FROM `products` WHERE 1


tetapi terkadang kita terlalu terburu2 sampe nulis tanpa kutip
SELECT
code, size
FROM `products` WHERE 1


2013-04-23

Ask2Solve : import/enter data from excel


product
for starter, this is my product table. I don't give a lot field to short the tutorial. Now we want to add data from excel into the table using phpmyadmin. There is a few way:

  • create script that's able to read excel then input into the table
  • convert the data into csv then import
From 2 option I choose POKEMON.. I mean no 2
dragon pokemon that's not dragon ???