Anda di halaman 1dari 11

Sebaik-baik manusia adalah yang bisa memberikan manfaat bagi orang lain

ABOUT ME | CONTACT ME | NO REKENING | NO RESI PENGIRIMAN BARANG


WPF Silverlight Controls Advanced Data Form with TabControl, Sci Converters, 30+LOB Controls uiatoms.neurospeech.com
Rp 300.000 Free on Google Advertise On Google And Gain New Customers. Sign Up Today! www.Google.com/AdWords
MapInfo Manager Establish a single point of truth for your MapInfo spatial assets www.pbinsight.com.au
Jasa Pasang Iklan Murah Khusus Iklan diGoogle, Facebook, Yahoo & Bing, Proses Cepat & Mudah www.solutionads.com
June 2nd, 2009 | by rosihanari | 6,120 views | Cetak Artikel Ini
Free Software
Banyak rekan-rekan saya maupun pengunjung setia blog ini yang selalu berkeluh kesah, mengapa kok script
PHP yang diintegrasikan dengan MySQL sering gagal. Kadang muncul error yang entah apa maksudnya, atau
kadang gak muncul error tapi malah blank alias tidak keluar apa-apa dari hasil querynya.
Nah berikut ini, saya akan coba paparkan tips bagaimana teknik melacak kesalahan atau istilah kerennya
dalam programming adalah debugging pada script PHP yang diintegrasikan dengan MySQL.
Untuk mempermudah penjelasan, saya akan coba tuangkan ke dalam studi kasus. Studi kasusnya lagi-lagi terkait
dengan data mahasiswa.
Misalkan kita memiliki tabel untuk menyimpan data mahasiswa seperti berikut ini:
1.
2.
3.
4.
5.
6.
7.
CREATE TABLE mhs (
nim varchar(10),
namamhs varchar(30),
alamat text,
sex varchar(10),
PRIMARY KEY (nim)
)
Belajar PHP Sambil Berinfaq. Mau???
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
1 of 11 6/13/2011 10:50 AM
Perhatikan penulisan nama tabel dan field-fieldnya. Di sini saya sengaja menggunakan huruf kecil semua dalam
menuliskan nama tabel maupun nama fieldnya. Ingat baik-baik ya !
Selanjutnya misalkan data yang tersimpan dalam tabel di atas adalah seperti di bawah ini
Nah selanjutnya misalkan kita punya script PHP untuk menampilkan semua data mahasiswa di atas ke dalam
halaman web.
Setelah script di atas Anda jalankan, mungkin Anda akan menjumpai error berbunyi seperti ini:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user root@'localhost (using
password: YES) in F:\mhs.php on line 4
Maksud dari error di atas adalah koneksi ke mysql dengan menggunakan user dengan nama root gagal
dilakukan. Nah.. untuk mengatasinya: coba cek apakah nama usernya benar, atau mungkin passwordnya yang
salah.
OK andaikan setelah username dan password untuk koneksinya diperbaiki dengan benar. Selanjutnya script
bisa dijalankan kembali. Setelah dijalankan mungkin muncul error seperti di bawah ini
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in F:\mhs.php on
line 14
Error tersebut muncul dikarenakan penulisan query SQL yang salah atau tidak memenenuhi aturan yang benar.
Pada script di atas, query SQL yang digunakan adalah:
Dalam kasus ini tentu kita langsung bisa menemukan kesalahan dari query SQL tersebut, yaitu penulisan nama
tabel yang salah. Nama tabel seharusnya mhs (dalam query boleh ditulis dalam huruf besar semua, atau
campuran besar kecil).
Namun.. bagaimana bila query SQL nya panjang dan kita sudah yakin bahwa query yang kita buat ini adalah
betul? He..3x jangan sok yakin dulu. Komputer tidak akan pernah berkhianat pada programmer. Memang.. query
yang dijalankan dalam script PHP tidak akan terlihat kesalahannya. Untuk melihat kesalahan querynya,
satu-satunya cara adalah menjalankan query tersebut ke dalam phpMyAdmin atau Navicat.
Trus.. langkahnya bagaimana? Langkahnya adalah tampilkan query SQL yang akan dijalankan ke dalam halaman
web, dengan cara meng-echo-kan querynya (perhatikan perintah echo $quer y; pada baris ke-9 berikut ini)
1.
2.
3.
4.
5.
INSERT INTO mhs VALUES ('M0197001', 'ROSIHAN ARI YUANA', 'COLOMADU', 'L');
INSERT INTO mhs VALUES ('M0197002', 'DWI AMALIA FITRIANI', 'KUDUS', 'P');
INSERT INTO mhs VALUES ('M0197003', 'FAZA FAUZAN KH.', 'COLOMADU', 'L');
INSERT INTO mhs VALUES ('M0197004', 'NADA HASANAH', 'COLOMADU', 'P');
INSERT INTO mhs VALUES ('M0197005', 'MUH. AHSANI TAQWIM', 'COLOMADU', 'L');
01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<?php

// koneksi ke mysql
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");

// query SQL untuk menampilkan semua data mhs
$query = "SELECT * FROM mahasiswa";
$hasil = mysql_query($query);

// menampilkan hasil query ke dalam bentuk tabel
echo "<table border='1'>";
echo "<tr><td>NIM</td><td>Nama Mhs</td><td>Alamat</td><td>Jenis Kelamin</td></tr>";
while ($data = mysql_fetch_array($hasil))
{
echo "<tr><td>".$data['Nim']."</td><td>".$data['namamhs']."</td><td>".$data['alamat']."
</td><td>".$data['sex']."</td></tr>";
}
echo "</table>";
?>
1. SELECT * FROM mahasiswa
01.
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
2 of 11 6/13/2011 10:50 AM
Nah bila script di atas dijalankan, maka querynya akan ditampilkan ke browser. Trus.. copy lah query yang
tampil tersebut, lalu jalankan di phpMyAdmin. Bila query tersebut salah, maka akan muncul pesan kesalahan.
Kemudian barulah Anda perbaiki querynya.
OK setelah diperbaiki querynya, maka akan diperoleh script berikut ini
Setelah diperbaiki dan dijalankan kembali scriptnya, maka error tidak akan lagi muncul, dan muncul beberapa
data sebagaimana tampak pada gambar di bawah ini
But. lho kok data NIM nya tidak muncul? Waduh kenapa ini, padahal data yang lain muncul? Nah ini
disebabkan karena penulisan array yang salah terkait dengan nama fieldnya.
Perhatikan script di atas. Untuk menampilkan data pada field nim, kita menggunakan perintah $dat a[ ' Ni m' ]
(menggunakan huruf N besar). Padahal pada tabel yang kita buat di atas menggunakan huruf N kecil (nim). Hal
inilah yang menyebabkan permasalahannya.
Apabila Anda menggunakan mysql _f et ch_ar r ay( ) untuk membaca record hasil query, maka pastikan nama
elemen arraynya sama dengan nama fieldnya, baik dalam penulisan nya maupun besar kecilnya huruf harus
sama.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
<?php

// koneksi ke mysql
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");

// query SQL untuk menampilkan semua data mhs
$query = "SELECT * FROM mahasiswa";
echo $query;
$hasil = mysql_query($query);

// menampilkan hasil query ke dalam bentuk tabel
echo "<table border='1'>";
echo "<tr><td>NIM</td><td>Nama Mhs</td><td>Alamat</td><td>Jenis Kelamin</td></tr>";
while ($data = mysql_fetch_array($hasil))
{
echo "<tr><td>".$data['Nim']."</td><td>".$data['namamhs']."</td><td>".$data['alamat']."
</td><td>".$data['sex']."</td></tr>";
}
echo "</table>";
?>
01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<?php

// koneksi ke mysql
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");

// query SQL untuk menampilkan semua data mhs
$query = "SELECT * FROM mhs";
$hasil = mysql_query($query);

// menampilkan hasil query ke dalam bentuk tabel
echo "<table border='1'>";
echo "<tr><td>NIM</td><td>Nama Mhs</td><td>Alamat</td><td>Jenis Kelamin</td></tr>";
while ($data = mysql_fetch_array($hasil))
{
echo "<tr><td>".$data['Nim']."</td><td>".$data['namamhs']."</td><td>".$data['alamat']."
</td><td>".$data['sex']."</td></tr>";
}
echo "</table>";
?>
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
3 of 11 6/13/2011 10:50 AM
Setelah diperbaiki, maka beres dah semua data yang tampil sesuai harapan.
OK.. mudah-mudahan artikel ini berguna bagi Anda semuanya yang sering dipusingkan dengan kesalahan dalam
script PHP + MySQL nya. Harapan saya.. mudah-mudahan pula, Anda bisa mencari kesalahan dalam script
Anda sendiri dan memperbaikinya tanpa meminta bantuan orang lain lagi

Teknik Debugging Dalam Membuat Program
Menyimpan Tulisan Arab Ke MySQL
Teknik Pengurutan Kembali ID Auto Increment Pada Record
Script PHP untuk Menampilkan Siswa Belum Bayar SPP (A Study Case)
Script INSERT Data Dengan PHP dan MS. Access
Membuat Sendiri Script PHP Untuk Backup MySQL
Membuat FAQ dengan PHP dan MySQL
Teknik Memvalidasi Input Tanggal dengan PHP
Ide Pembuatan Script PHP Upload Download File Via Folder
Script PHP untuk Arsip Artikel Berdasarkan Bulan dan Tahun
Share this article on: Twitter | Facebook | Reddit | Digg
Kata kunci: debug - mysql - PHP - script - tips -
Ada 22 komentar dalam artikel ini.
iroel says:
June 2, 2009 at 9:05 am
Klo saya, tinggal set:
error_reporting (E_ALL);
pasti semua keluar tuh smua error, termasuk warning2nya , ntar klo nggak mo didebug, tinggal balikin
ke:
error_reporting(E_USER_ERROR);
1.
rosihanari says:
June 2, 2009 at 9:25 am
to iroel: terkadang kalo kita set semua warning dan errornya muncul, bisa dimanfaatkan oleh cracker
untuk mengetahui kelemahan script kita.
2.
Imam Zatnika W says: 3.
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
4 of 11 6/13/2011 10:50 AM
June 25, 2009 at 10:36 pm
Mengesankan sekali Pak
adfiz.com says:
July 26, 2009 at 10:06 am
Makasih banyak
4.
faisal says:
November 19, 2009 at 11:36 am
kunjungan pertama.. teruskan bos tutorialnya!! bermanfaat sekali. penyampaiannya juga mudah di
mengerti.
5.
rosihanari says:
November 19, 2009 at 12:45 pm
@faisal: siap bos
6.
ajex says:
January 7, 2010 at 10:21 pm
maksih banyak y pakde da bantu info nya
7.
bolinknee says:
January 18, 2010 at 10:45 am
Artikel yang bagus Pak..
Saya banyak mendapat ilmu dari web bapak.
Kalo sempat tolong tampilkan juga dasar2 cara membuat web dengan flash pak..
Terima Kasih
Bolink.
8.
rosihanari says:
January 18, 2010 at 2:03 pm
@bolinknee: wah.. saya gak bisa flash mas, pokoknya yang berbau desain2an gitu saya gak bisa. Saya gak
punya sense of art soalnya
9.
Alek says:
February 6, 2010 at 1:46 am
saya mau tanya kalo debug pada php konek ke php dengan peryataan seperti ini Parse error: parse error,
unexpected $end in C:\Alek@PHP\Test.php on line 23 line 23 merupakan line/tag terakhir yaitu .
kenapa yah dan apa solusinya..?
ditunggu solusinya..!
10.
rosihanari says:
February 6, 2010 at 1:31 pm
11.
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
5 of 11 6/13/2011 10:50 AM
@alek: coba anda cek mungkin ada pasangan kurung kurawal yang kurang. Tapi kalo memang semuanya
ada pasangannya, maka coba anda cek tag pembuka kode php nya, apakah pake <? saja? jika ya, maka
coba ganti dengan <?php, karena kadang konfigurasi di php.ini nya hanya bisa membaca kode PHP yang
dimulai dari <php
p3truk says:
February 11, 2010 at 4:09 pm
mas saya lagi sibuk2nya mu awal buat TA nech.
mengenai barcode buat asset peralatan..
kira2 scrip-scrip apa saja yang dibutuhkan
mohon bantuannya mas.
terimakasih
12.
rosihanari says:
February 13, 2010 at 1:59 pm
@p3truk: script yang diperlukan ya cuman untuk mengolah data hasil scan barcode nya saja. Untuk script
supaya membaca data barcode tidak usah, karena barcode itu sifatnya plug and play, tinggal colok dan
gunakan saja.
13.
Ikhwan saputera says:
June 8, 2010 at 2:21 pm
Mantap banget ni pelajaran nya, jujur saya banyak ni mengutip dari blog bapak, eh makasih banyak atas
pelajaran.
nanti klo dah cukup uang saya mau beli wavecom modem gsm itu
klo di kirim ke Samarinda berepa ya total nya tu
14.
rosihanari says:
June 15, 2010 at 5:42 am
@ikhwan saputera: ke samarinda, ongkirnya Rp 27rb mas.
15.
wahyu says:
July 29, 2010 at 9:57 pm
sql;SELECT nama_field1, COUNT( * ) AS jml
FROM pesan
GROUP BY nama_field1
ORDER BY nama_field1 DESC
LIMIT 10
sbg tambahan..saat sy cek dg :mysql_num_rows..ternyata jumlah recordnya 3 tutpi kok saat di
tampilkan kok cuman 2 yg muncul yah?
16.
rosihanari says:
August 1, 2010 at 3:24 pm
@wahyu: wah kok bisa ya? mungkin yang salah di scriptnya mas coba cek lagi ya
17.
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
6 of 11 6/13/2011 10:50 AM
hady says:
August 26, 2010 at 9:10 am
aku dah nyoba semua script di atas tapi pas di browse di mozilla ko ga muncul pesan error seperti di
atas:Warning: mysql_connect() [function.mysql-connect]: Access denied for user root@localhost
(using password: YES) in F:\mhs.php on line 4
18.
rosihanari says:
August 27, 2010 at 5:12 am
@hady: itu kemungkinan password atau username koneksi mysql nya salah
19.
hady says:
August 27, 2010 at 9:28 am
ok..pak maksih atas penjelasannya
20.
sugik says:
November 1, 2010 at 6:44 am
wah bagus mas ,, saran ya mas .. seumpamanya mas nulis artikel yang berhubungan dengan php dan grafik
di php gimana ? biar lebih mantab gt
mksh mas
21.
rosihanari says:
November 7, 2010 at 5:20 am
@sugik: tentang php grafik kan sudah ada mas di blog ini??
22.
MODEM READY STOCK 3 BUAH (UPDATED 13/06/2011) + BONUS
+ GARANSI 1 TH + DIJAMIN 100% BERJALAN BAIK + FREE ONGKOS KIRIM (*)
Seluruh artikel dalam blog ini dilindungi oleh hak cipta. Dilarang keras untuk memperbanyak sebagian atau seluruh isi artikel untuk
keperluan komersial tanpa seijin pemilik blog.
Copyright 2010 - Rosihan Ari, All Rights Reserved.

[FIX BUG] Perbaikan Bug Pada Update Ke-13 June 11, 2011
[NEWS] Update Terbaru GampSMS (13) 06/06/2011 June 6, 2011
[PLUGIN] SMS Auto Translator GampSMS May 14, 2011
[TIPS & TRIK] Cara Backup dan Restore Data GampSMS May 14, 2011
[NEWS] Update Terbaru GampSMS (12) 01/05/2011 May 2, 2011
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
7 of 11 6/13/2011 10:50 AM
WPF Silverlight
Controls
Advanced Data Form
with TabControl, Sci
Converters, 30+ LOB
Controls
uiatoms.neurospeech.com
Rp 300.000 Free
on Google
Advertise On Google
And Gain New
Customers. Sign Up
Today!
www.Google.com/AdWords
MapInfo Manager
Establish a single
point of truth for your
MapInfo spatial assets
www.pbinsight.com.au
Jasa Pasang Iklan
Murah
Khusus Iklan
diGoogle, Facebook,
Yahoo & Bing, Proses
Cepat & Mudah
www.solutionads.com
Create a Free
Slideshow
Create free animated
slideshows from your
travel photos in
minutes!
tripwow.tripadvisor.com/slides
CD MP3 Murottal + Terjemahannya
Donasi Pembangunan Masjid
Ebook Kalkulus dengan Maple
Jual Modem Wavecom Fastrack Untuk SMS Gateway
Kursus Privat PHP Online
Judul Buku:
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
8 of 11 6/13/2011 10:50 AM
67 Trik dan Ide Brilian Master PHP
Penulis:
Rosihan Ari Yuana
Penerbit:
Lokomedia - Yogyakarta
Bonus:
CD Source Code + Video Tutorial
Dapatkan segera di toko buku terdekat di kota Anda.
Beberapa Trik Mencegah Submit Polling Berulang Kali
Export Data Dari MySQL ke XML dengan PHP
Foreign Key, Relationship dan Referential Integrity di MySQL
Perintah SQL Menampilkan Nilai Matakuliah Terbaik (Studi Kasus Akademik)
Membuat Program Konversi Bilangan Desimal ke Biner dengan Pascal
Script PHP Untuk Update Password Administrator
Membuat FAQ dengan PHP dan MySQL
Memproses Input Komponen Check Box di PHP
Script PHP untuk Mencari Selisih Waktu dan Tanggal
Konsep Statement SWITCH dalam PHP dan Studi Kasus
No. Resi: 1599065810000
Nama: Pendi D.
Tujuan: Lampung
Via: TIKI JNE
Tgl Kirim: 11-06-2011
Barang: gampSMS
No. Resi: 1599066360009
Nama: Surono
Tujuan: Bogor
Via: TIKI JNE
Tgl Kirim: 11-06-2011
Barang: Modem Wavecom
No. Resi: 1599066240004
Nama: Ricardo S.
Tujuan: Bandung
Via: TIKI JNE
Tgl Kirim: 10-06-2011
Barang: Modem Wavecom
No. Resi: 1599065790005
Nama: Arie H.
Tujuan: Dumai
Via: TIKI JNE
Tgl Kirim: 09-06-2011
Barang: Modem Wavecom
No. Resi: 1599064850007
Nama: Agung S.
Tujuan: Malang
Via: TIKI JNE
Tgl Kirim: 09-06-2011
Barang: Modem Wavecom
Selengkapnya >>
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
9 of 11 6/13/2011 10:50 AM
Bisnis Online (9)
Buat Mahasiswaku (12)
Javascript (9)
Maple (23)
Mathematica (13)
Matlab (4)
My Books (4)
Olimpiade Komputer (6)
Pernak Pernik (5)
PHP (138)
Programming (46)
SMS Gateway (20)
SQL (45)
Tentang Matematika (5)
Wordpress (26)
Berikut ini beberapa ebook hasil karya saya sendiri yang diperuntukkan untuk Anda:
Ebook 'Panduan Wordpress 2.6'
Ebook 'Pintar dengan Internet'
Ebook 'Panduan Paypal Lengkap'
Mudah-mudahan ada manfaatnya.
Cara Mengetahui Lama Eksekusi (Execution Time) Sebuah Script PHP
Membuat Sendiri Script PHP Penterjemah Teks dengan Google API Translate
Cara Menampilkan Saldo Balance Paypal dengan PHP Via API
Membuat Login Alternatif Dengan Akun Google Open ID
Implementasi SMS Autoreply Gammu di Database Non MySQL (Studi Kasus MS. Access)
Membuat Sendiri Kirim SMS Gratis Via Web dengan PHP dan MySQL
Membuat Kode Transaksi Unik Otomatis Berdasarkan Tanggal
Easy Gammu Installer (Free Download)
Enkripsi File PHP dengan Monas Encoder
Script PHP Untuk Menghentikan Service Gammu
Setting Gammu untuk Aplikasi SMS Gateway - 80,856 views
Script SMS Gateway dengan PHP dan MySQL - 60,207 views
Cara Cepat Menghitung Perkalian Dalam 5 Detik - 48,015 views
Membuat Grafik Chart di PHP - 41,784 views
Ide Membuat Script Upload Download File Dengan Batasan Hak Akses - 35,738 views
Tata Cara Penulisan Daftar Acuan (Referensi) - 35,069 views
Script PHP untuk Membuat Report Format MS. Excel - 34,608 views
Ide Membuat Sistem Login Aplikasi Multi User - 32,794 views
Ide Membuat Script PHP untuk Pencarian dengan Multi Kategori - 31,087 views
Pembahasan Soal Olimpiade Komputer Kabupaten #2 - 26,958 views
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
10 of 11 6/13/2011 10:50 AM
Rosihan Ari`s Blog is proudly powered by WordPress
Tutorial PHP Gratis : Teknik Debugging Script PHP + MySQL http://blog.rosihanari.net/teknik-debugging-script-php-mysql
11 of 11 6/13/2011 10:50 AM

Anda mungkin juga menyukai