just I or ME

setitik harapan nun jauh disana

Archive for the ‘PHP’


Gara-Gara Kutip Satu

Lagi-lagi dapat masalah yang sebenarnya sepele, hanya karena kurang teliti dan terlalu ceroboh saja.

Bikin script yang melakukan query ke tabel mysql dengan data dari tabel lain. Jadi melakukan select ke tabel pertama kemudian melakukan looping hasil select untuk kemudian melakukan select ke tabel kedua berdasarkan data nama dari tabel pertama.

Ternyata, tidak disangka tidak diduga ada nama yang mengandung kutip satu (misalnya saja Sa’bani), dan sudah jelas dan pasti ditolak sama mysqlnya. Kalau gak percaya bikin aja query seperti ini SELECT * FROM user WHERE nama=’Sa’bani’ yakin ditolak mentah-mentah sama mysql. Berhubung script dibuat menggunakan php dan lupa tidak menambahkan or die() dibelakang query, dan kebetulan hasilnya langsung di forward ke pdf menggunakan fpdf yang muncul cuma error dari fpdfnya. Setelah menambahkan or die() dibelakang fungsi mysql_query() baru nongol errornya.

Kemudian di variabel untuk select yang kedua ditambahkan fungsi mysql_real_escape_string($nama) dan berjalanlah script seperti yang diinginkan.

Masalah Pertama Koneksi PHP Ke Firebird

Berhubung hanya ngerti pemrograman dengan php maka coba-coba melakukan koneksi dari php ke firebird. Pertama cek ke php.ini dan cari baris seperti berikut :

;extension=php_interbase.dll

dan hilangkan tanda semi colon (;) di depan, sehingga menjadi.

extension=php_interbase.dll

Kemudian restart web server.

Buka text editor dan buat script untuk melakukan koneksi ke firebird dengan asumsi database bernama iorme dan  terletak di f:/firebird/iorme.fdb dengan user sysdba dan password masterkey.

<?php
$host = ‘localhost:F:/firebird/iorme.fdb’;
$user = “sysdba”;
$pass = “masterkey”;

$koneksi = ibase_connect($host,$user,$pass);
if($koneksi == TRUE) {
echo “berhasil”;
} else {
echo “gagal”;
}
?>

Kemudian simpan file dan buka lewat web browser, dan hasilnya adalah error seperti berikut :

Warning: ibase_connect(): Unable to complete network request to host “localhost”. Failed to locate host machine. Undefined service gds_db/tcp.

Waduh, bener-bener deh baru sekali-kalinya nyoba sudah dapet error. Akhirnya diputuskan menghubungi mbah google *dengan berbekal menyan dan kembang setaman* dan jawabannya ditemukan disini. Ternyata simpel saja, caranya buka file c:\windows\system32\drivers\etc\services kemudian masukan baris berikut :

gds_db    3050/tcp    #firebird Database

Setelah itu refresh web browser dan tampillah kata berhasil.

Sebenarnya ini posting yang gak jelas juntrungannya, cuman daripada kelupaan aja ajdi lebih baik ditulis di blog.

Kelupaan Tukang Koder

Judulnya aneh, soalnya bingung mau dikasih judul apa. Isinya serius? gak juga, lucu? gak juga. Ya udah dikasih judul kayak gitu aja :D

Seperti biasa saat membuat website berbasis php + mysql maka dikerjakan dulu di komputer lokal baru kemudian di upload ke server beneran di internet. Karena pertama dikerjakan di lokal maka semua setingan untuk koneksi ke mysql juga setting lokal.

$host = “localhost”;
$user = “root”
$pass = “123456″;
$db = “dbnya”;

Saat akan di upload otomatis settingan config tersebut mau tidak mau dan harus mau dirubah menjadi

$host = “1.1.1.1″;
$user = “keren”
$pass = “passwordkeren”;
$db = “dbnya”;

Kemudian di upload lah semua script website tersebut ke tempat yang seharusnya. Sampai disini tidak ada masalah dan memang tidak ada masalah yang terjadi.

Konyolnya setelah di upload sayah lupa merubah settingan konfigurasi database di komputer lokal. Sehingga web di lokal terkoneksi ke database server di internet. Sebenarnya gak masalah sih, karena web di lokal pun tetep berjalan dengan apa adanya tanpa protes sama sekali. Tetapi saat itu karena ingin melakukan testing lagi untuk yang di lokal otomatis saya masuk ke command prompt mysql dan melakukan pembersihan besar-besaran pada tabel-tabel di database. Kemudian saya akses lagi web yang di lokal, loh kok datanya masih ada? padahal tadi sudah di bersihkan. Masuk lagi ke command prompt mysql, bersihkan lagi, cek lagi di web lokal. Kok masih ada juga?

Nyampe kapanpun ya masih tampil datanya di web lokal la wong koneksinya ke database server di internet bukan ke database server lokal. Ya beginilah nasib orang lupa.

Website Dengan Dua Database

Dulu saya pikir kalau membuat website itu hanya bisa menggunakan satu database saja, jadi ya semua data disimpan di database tersebut. Tapi ternyata saya salah. Sah-sah saja membuat website dengan mengambil data dari beberapa (2) database.

Meskipun untuk maintenance database nya kayaknya akan lebih mudah jika satu database saja karena tidak perlu repot-repot login di dua tempat, tetapi terkadang situasi dan kondisi lah yang membuat kita harus membuat kesepakatan data dengan dua database.

Intinya sebenarnya gampang saja kok, tidak perlu repot-repot dan pusing-pusing. Cukup buat koneksi untuk database pertama, lakukan query kemudian tutup koneksinya. Kemudian buat koneksi untuk database kedua, lakukan query dan tutup koneksinya. Hanya begitu saja, tidak perlu trik-trik yang rumit dan aneh-aneh.

$host1 = “1.1.1.1″;
$user1 = “keren”;
$password1 = “orangkeren”;
$db1 = “db1″;

$host2 = “2.2.2.2″;
$user2 = “ganteng”;
$password2 = “orangganteng”;
$db2 = “db1″;

untuk koneksi pertama :

$koneksi = @mysql_connect($host1,$user1,$password1);
if($koneksi) {
mysql_select_db($db1);
} else {
die(”Tidak dapat melakukan koneksi ke database pertama”);
}
// lakukan query
// tutup koneksi
mysql_close($koneksi);

Untuk koneksi kedua :

$koneksi = @mysql_connect($host2,$user,$password2);
if($koneksi) {
mysql_select_db($db2);
} else {
die(”Tidak dapat melakukan koneksi ke database pertama”);
}
// lakukan query
// tutup koneksi
mysql_close($koneksi);

Itu contoh dengan php dan mysql. Jadi gak ada salahnya kok menggunakan dua database dalam satu halaman skrip website, apalagi jika kondisinya memang mengharuskan seperti itu. Daripada otak-atik sistem database yang sudah berjalan baik kan lebih baik skripnya asja yang disesuaikan.

Mencari Editor Yang Asyik

Sudah lama saya menggunakan Notepad++ sebagai editor utama untuk berbagai keperluan. Biasanya saya enjoy-enjoy saja dengan fitur2 pada Notepad++. Tetapi beberapa hari ini ada sedikit kesulitan, yaitu setiap ingin menambah tag-tag html. Maklum gak apal :D

Jangan kasih solusi menggunakan dremwiper, emoh, berat kalau pake komputer yang memorinya terbatas. Lagian juga males harus mempelajari cara menggunakan dremwiper dulu, gak sempet :).

Akhirnya googling-googling dan nemu sebuah editor yang sepertinya lumayan asyik. Namanya Alleycode. Ukuran installernya kecil, hanya 1.5 mb. Meskipun bukan sejenis IDE yang WYSIWYG tapi gak apa-apa lawong saya emang nyari yang simpel dan bisa sesuai dengan keinginan.

Ternyata alleycode  lumayan juga, bisa syntax highlighting dan fitur insert untuk tag html, css bahkan beberapa fungsi php. Untuk sementara pake ini dulu.

alleycode

NB: kemungkinan bersambung ke bagian 2 jika ada editor lain lagi :D