Wednesday, December 19, 2012

Mengatasi Error pada PHP

Berbagi sedikit kisah pas lagi coding.

Yang namanya coding, pasti gak langsung 100% berhasil ya.. apalagi, kalo belum biasa membuat program or aplikasi..

nah, secara umum jenis-jenis error di pemrograman sebenernya dibagi jadi 2, yaitu Syntax Error dan Logical Error..

Dan akan saya bahas lebih khusus lagi tentang error ketika sedang bekerja dengan PHP.

1. Syntax Error

Syntax Error, adalah kesalahan penulisan syntax, contohnya ketika menulis echo ""; ada kekeliruan, seperti belum diberi tanda petik, belum diberi titik koma, kurang tanda kurung ataupun kurung kurawal, dan kesalahan kode program lainnya.

Kalau yang Syntax Error, di php nih contohnya, misalnya keluar pesan error seperti ini:

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: YES) in D:\xampp\htdocs\kreditmotor\konek.php on line 2

eror di php, bisa dianalisa dengan mudah, just like another programming karena disertai error pada baris koding ke sekian..

and yeah.. kalo ada contoh error seperti yang tertulis pada di atas, hanya dengan bermodal pengertian dengan bahasa Inggris kita udah bisa tahu, ada kalimat, contoh: Access denied for user root@localhost (using password YES), yang maksudnya adalah, kita tidak bisa masuk dan berhubungan dengan database mysql, dengan username root dan password yang kita masukkan. Bisa jadi, username atau password yang kita tuliskan pada file konfigurasi (file untuk koneksi) mengandung kesalahan.

Kesalahan syntax ini juga sering terjadi, semacam kesalahan-kesalahan kecil dalam penulisan.. misalnya, menuliskan Salah penulisan fungsi-fungsi di PHP semacam mysql_connect, mysql_query, dan sebagainya..

Kalau udah sering bermain-main dengan PHP, pasti udah langsung bisa mengenali, ketika ada error pada baris ke sekian, sudah bisa mengatasi dengan baik..

2 Logical Error

Kalo Logical Error, agaknya lebih susah ditebak ada di mana.. karena kesalahan bukan pada penulisan syntax.. Tapi pada Logika Program dimana kita sebagai programmer lah yang seharusnya tau apa yang akan kita buat, akan tetapi, salah di penerjemahan logika kepada programnya, sehingga tidak sesuai dengan apa yang dimaksudkan..

Contoh sederhana adalah, ketika membuat sebuah inputan angka, yang ketika di klik submit akan menampilkan angka genap berurutan sejumlah angka yang diinputkan.
Contoh, kita inputkan 10, maka akan tampil 2, 4, 6, 8, 10

Nah, bila salah penulisan, misalnya seharusnya dituliskan if($x mod 2==0) dan ada kesalahan misalnya xmod 2 == 1 atau bukan ditulis 1 tetapi ditulis 0, maka apa yang tampil tidak sesuai dengan apa yang dimaksudkan.

Misalnya juga, ketika membuat program untuk menampilkan data dengan paging, dan data yang ditampilkan seharusnya ada 10 data per halaman, tapi yang tampil masih 15.

Atau logika, ketika membuat login admin, kalau lebih dari 3x login gagal maka tidak bisa login lagi dan banyak lagi contoh-contoh programming sederhana yang sering kita jumpai erornya.. :)

Well.. semakin banyak mengerjakan sesuatu, pasti anda pun akan semakin paham..
So, keep practice yeah..

Semoga bermanfaat..

Thursday, October 18, 2012

What Makes Apple So Special?

Tentu saja, Apple yang saya maksud adalah Apple by Steve Jobs ;)

Terkesan mahal dan apa sih hebatnya? Begitulah orang awam seperti saya pun bertanya-tanya.

Sampai pada suatu hari, dikarenakan sesuatu hal, ada seorang teman saya yang minta tolong, karena MacBook Air nya tidak bisa konek ke internet sama sekali. Baik via WIFI maupun modem. Padahal, kemarinnya masih bisa. There's something wrong that may he did..

So.. jujur aja, ini pertama kali pegang MacBook, dan belum paham, so? 
just wonder how's the system.. what made it special and so expensive...

Well.. Googling sana sini, tidak berhasil dan akhirnya, minta bantuan ke rekan blogger yang juga seorang programmer dan pengguna Mac. Mas Arief Bayu.. (recommended by Haqqi) Thanks Guys.. I owe you a lot.. :)

Nah, setelah problem solved, baru saya ngeh... Ternyata ada firewall yang ngeblock internet dan juga beberapa aplikasi. Dan ketika si firewall masih nge-lock, aplikasi firewallnya malah di uninstall... so .. that's the problem.. and he can solve it.. dengan masuk ke console pake command2 sejenis di Linux.. (itulah yang saya lihat waktu dia utek2 sistemnya), install sesuatu, dan akhirnya meng-unlock beberapa hal..
well... good job... ^^

Setelah balikin MacBook ke empunya.. well we talked about many things related to Apple..

Yeah..  kenapa, dia memilih MacBook? Selain karena dia juga pecinta gadget, mulai dari Android dan juga iPad..

Dia sempat bercerita tentang bagaimana 'galau'nya dia ketika sedang berada di Jepang,  yeah, waktu dia mau memutuskan beli MacBook atau Sony Vaio seri Z yang cuma keluar 2000 aja di seluruh dunia, dia galau, antara mau beli MacBook Air atau Vaio Z yang saat itu posisi sedang bekerja di Jepang...

Konsultasi sana sini, dan masuk ke forum-forum di internet..


Finally, ketika uda mau beli Vaio, stoknya abis.. :D :D

Akhirnya di memutuskan beli MacBook Air. And found.. what makes it so special??

MacBook Air


1. Quality in Material

oke, saya baru tau kalo bahannya casing dan lain sebagainya dari si Mac ini adalah Aluminium. Bukan plastic seperti laptop-laptop merk yang lain.

2. Very Cool Design

Kemudian, untuk segi ukuran, si MacBook Air amat sangat tipis.. ringan banget! 

3. Software Quality

Belum pernah ada keluhan dari Apple users, sistem gue eror nih atau nge hang. Belum pernah..

4. Fast StartUp and ShutDown

Dan belum pernah juga saya nemuin OS laen yang secepat Mac untuk pertama kali start up dan ketika shutdown.
Sempet diadu dengan beberapa merk laptop, dan tetap belum ada yang mengalahkan MacBook Air, pada saat itu.

5. High Spec

Processornya lebih tinggi dari I7 sekalipun.. kekuatan hardware yang didesain ke bentuk minimalis nan praktis..

6. Various Product by Apple

Apple terus berinovasi, mulai dari MacBook dengan berbagai jenis, MacBook Pro, MacBook Air, MacBook Pro with Retina, iPad, iPhone, iMac, iPod, iPad Mini, Mac Mini, Mac Pro, iMac, and another accesories.

for more info, you can go here http://store.apple.com


Well... untuk hal-hal lain, yeah, saya masi amat sangat awam tentang Apple Product ini.. Belum tahu apa-apa.. :D :D

Tapi, setelah saya tahu, betapa kerennya fitur dan juga kualitas dari sebuah Mac, saya pun baru bisa mengatakan, ini bukannya mahal kok, tapi, memang anda membeli sebuah produk dengan kualitas yang sepaket di dalamnya.

Tapi, walaupun begitu, saya belum merasa butuh untuk membelinya.. Mungkin juga karena pekerjaan yang belum menuntut untuk kesana. :)

Paling tidak, saya jadi tahu, well.. inilah Apple dengan segala kualitas dan branding kuat yang membawanya..

Dan kalo ditanya kepingin Produk Apple yang mana? Mungkin saya mau MacBook Air, iPad Mini, dan juga iPhone..  hihihihi... *ada yang mau ngado saya gak nih yaaaa... ^^ *

Tuesday, September 18, 2012

Download Materi C++

well... karena accoung 4shared punya saya di block dan saya gak tau gimana memperbaikinya???

Jadi, ketika ada permintaan dari seorang murid untuk mengunggah materi C++ di blog pun akhirnya tertunda..

Bingung mau upload di file hosting yang mana lagi, sambil mikir, buat teman-teman or adik-adik yang nyari materi pelajaran C++ basic,, silahkan mampir aja ke sini --> http://www.binushacker.net/tutorial-c.html

Link downloadnya masih oke semua pake Ziddu..

so.. gitu aja deh.. makasih buat mas BinusHacker yang udah upload materi2 C++ yang oke :)

Saturday, September 15, 2012

How MySQL and PHP Work Together?

Bagaimana MySQL dan PHP Bekerjasama?

Kita bisa berinteraksi dengan database dengan mengirimkan pesan (perintah) ke Server MySQL. Pesan atau nama lainnya adalah Perintah SQL, suatu standar bahasa komputer yang dipahami oleh Database Manajement System (DBMS).

PHP tidak mengerti dengan bahasa SQL, tapi itu semua tidak perlu. Kenapa? Karena PHP telah membangun/membuat koneksi dengan MySQL Server dan mengirim perintah melalui koneksi tersebut.

MySQL Server akan menerjemahkan perintah SQL, mengikuti perintahnya, dan mengembalikan hasil perintah berupa keadaan sebagaimana yang telah diperintahkan. Atau.. kalau ada perintah yang salah/keliru maka akan ditampilkan pesan error yang menyatakan kesalahan tersebut.

PHP meyediakan fungsi-fungsi yang membuat hubungan dengan MySQL menjadi sangat mudah. Kita bisa menggunakan fungsi-fungsi PHP untuk mengirimkan perintah-perintah SQL (SQL Query) ke database.

Kita tidak perlu mengerti bagaimana detail koneksinya dengan MySQL, PHP sudah menangani detailnya. Yang perlu kita ketahui hanyalah perintah-perintah SQLnya dan bagaimana menggunakan fungsi-fungsi PHP.

Fungsi-fungsi yang berhubungan dengan MySQL

PHP menyediakan 2 set fungsi untuk berkomunikasi dengan MySQL - yaitu fungsi mysql dan mysqli (MySQL Improved). Yang mana, fungsi yang kita gunakan tergantung dari versi dari PHP atau MySQL yang kita gunakan.

Fungsi mysqli ditambahkan sejak PHP 5 dan digunakan dengan MySQL versi 4 ke atas. Kalau kamu menggunakan Perusahaan Web hosting, kamu perlu tahu apakah dia menyediakan PHP 5 dan MySQL versi ke berapa, dan apakah fungsi mysqli bisa untuk digunakan.

Pada tutorial ini, kita menggunakan PHP 5 atau 6, MySQL 5 dan fungsi mysqli. Kalau web hosting anda tidak menyediakan fungsi mysqli maka anda perlu mengganti script anda dengan mysql bukan mysqli.

Perbedaan antara mysql dan mysqli akan saya bahas di kesempatan berikutnya.. :D

Berkomunikasi dengan MySQL

Cara Berkomunikasi dengan MySQL melibatkan beberapa langkah:

1. Koneksi ke MySQL server
2. Mengirimkan Query SQL (Perintah-perintah SQL)

So, mari kita bahas satu per satu :)

1. Koneksi ke MySQL Server

Sebelum kita bisa menyimpan or mengambil data, kita harus melakukan koneksi ke database. KIta tidak perlu mengetahui detail koneksinya, karena PHPlah yang menanganinya. Yang perlu kita ketahui adalah nama database dan dimana lokasi databasenya. Bayangkan saja koneksi database itu seperti koneksi telepon.
Kita tidak perlu tahu detail mengenai bagimana koneksi dibuat - yaitu, bagaimana suara bisa berpindah dari telepon kamu ke telepon lainnya - yang perlu kamu tahu hanya kode area dan nomer telponnya. Perusahaan telekomunikasinya lah yang menangani detailnya.

Untuk berkoneksi dengan MySQl Server, kamu harus tahu nama komputer dimana database berada, dan username / account MySQL dan passwordnya. Untuk semua perintah-perintah SQL (Query), kamu juga harus tahu nama database yang kamu butuhkan.

Untuk membuka koneksi, gunakan fungsi mysqli_connect

$koneksi=mysqli_connect("host", "account", "password", "dbname") or die("message");

Isi pada informasi berikut:

*host: Nama komputer dimana MySQL diinstal - contohnya, database.host.com. Sedangkan apabila MySQL berada pada komputer yang sama dengan web anda (komputer anda) makan gunakan localhost sebagai nama komputernya. Bila anda membiarkannya kosong saja (""), PHP akan mengasumsikannya sebagai localhost.

*account: Nama dari MySQL account yang valid. Contoh kalo yang di komputer kita sendiri biasanya kita gunakan root.

*password: Passwordnya MySQL berhubungan dengan account atau usernamenya. kalau memang passwordnya tidak ada, maka biarkan kosong, jangan ketikkan apapun antara: ""

*dbname: nama database dimana kita ingin berkomunikasi. Parameter ini sangat optional - anda bisa memilih databasenya nanti.

note: kalau anda menggunakan fungsi mysql (bukan mysqli) maka anda tidak bisa memilih database pada fungsi connect. Tapi digunakanlah fungsi terpisah yaitu -- mysql_select_db - untuk memilih database.

*message: Pesan yang dikirim ke browser apabila koneksi gagal. Koneksi gagal bila jaringan sedang down, atau MySQL Servernya lagi tidak running. Bisa juga karena informasi yang diinputkan pada parameter koneksi tidak benar -- sebagai contoh, bila salah dalam penulisan username atau password.

Dengan perintah tersebut di atas, mysqli_connect akan berusaha membuka koneksi ke komputer yang dituju, menggunakan account/username dan password yang diisikan.

Apabila koneksi gagal, maka script akan berhenti dijalankan dan mengirimkan pesan ke browser.

Contoh berikut adalah perintah koneksi ke MySQL Server pada local komputer dengan account MySQL yang dinamakan Yurike dengan tidak menggunakan password, menuju database dengan nama Perpus:

$connnect = mysqli_connect("localhost", "Yurike", "", "Perpus" ) or die("Tidak bisa terkoneksi ke database server");

Untuk alasan security atau keamanan, anda harus meletakkan informasi untuk koneksi ke variabel dan menggunakan variabel tersebut pada statement/pernyataan koneksi seperti berikut:

$host="localhost";
$user="Yurike";
$password="";
$dbname="";
$connect=mysqli_connect($host, $user, $password, $dbname) or die("Tidak bisa terkoneksi ke database server.");

Koneksi akan terus dijalankan atau terhubung sampai anda menutupnya atau sampai script berakhir. Anda bisa menutup koneksi dengan pernyataan berikut:

mysqli_close($namakoneksinya);

Misalnya mysqli_close($connect);

2. Mengirimkan Perintah SQL (SQL Query)

Setelah anda membuka koneksi ke Server MySQL, anda bisa mengirimkan perintah-perintah atau Query SQL.

Query adalah perintah kepada MySQL Server untuk merubah strukur dari database, mengisikan data, mengedit data, atau menampilkan data dari database.

Untuk berinteraksi dengan database, letakkan Query SQL anda ke sebuah variabel dan mengirimnya ke MySQL Server dengan fungsi mysqli_query, seperti contoh berikut:

$query="select * from siswa";

$result=mysqli_query($connect, $query) or die("Tidak bisa menjalankan query");

Query tersebut hanya dieksekusi pada database yang terpilih pada koneksi yang sudah ditentukan.

Variabel $result menyimpan informasi hasil dari eksekusi query. Informasinya tergantung apakah query berhasil mengambil informasi berupa data dari database atau tidak.