Susah juga yang namanya membuat sistem terintegrasi apalagi dengan menggunakan sistem terintegrasi itu kita musti membuat data-data input dan masukan menjadi sama dengan sistem yang lama. Dengan sistem yang menggunakan database yang berbeda juga jadul weks, tambahlah juga penderitaan kita sebagai seorang pengembang. Kalau database nya sudah normal sih gak masalah tapi kalau database nya belum normal khan malah menjadikan kerja kita jadi smakin berat.
Sedikit cerita dengan normalisasi ini, intinya sih bagaimana membuat database itu memiliki penataan yang lebih baik dan korelasi antar table dapat terjadi dengan baik pula, pokoke intinya gitu lah soale dulu pas diterangin pak seagate ya agak paham tapi kalo suruh nerangin lagi,
.
Nah kembali ke tadi, dengan berbekal sedikit kemampuan pemrogram terbentuklah sudah sistem informasi dengan menggunakan PHP dan databasenya menggunakan DBF, weqs DBF apa pula tuh, baru tahu sekarag kalo ada database yang namanya DBF, tapi ya ada mirip2 nya dikit lah soal ada tulisan DB nya. Sebenarnya syntak2 nya sih gak begitu banyak buat akses PHP ke DBF itu tapi weleh-weleh kerjanya lumayan berat buat akses ke DBF nya bila dibanding dengan menggunakan MySQL
Syntaksnya secara garis besar seperti ini
1. Konekkan dulu PHP ke DBF
Seperti kalo dengan MySQl kita mengenal yang namanya mysql_connect(“host”,”user”,”pass”); maka dengan DBF ini hal yang sama juga terjadi . Tapi bedanya kalo menggunakan DBF ini kita tidak perlu memasukkan host, user, sama passnya, syntaksnya cukup dbase_open(“lokasifile”,identifier);
misalkan database kita bernama bukanmysql.dbf dan lokasinya di folder punyaku, untuk identifier
0 = read only
1 = write only
2 = read/write
jadi nanti hasilnya kurang lebih seperti ini $db=dbase_open(“punyaku/bukanmysql.dbf”,2);
dengan variabel yakni $db dikasih or die or die juga boleh sehingga menjadi $db=@dbase_open(“punyaku/bukanmysql.dbf”,2) or die(“$db nya cuek aja tuhhh”); or die berguna untk memberikan informasi kepada user kalo dbase tidak bsa dibuka dan tanda keong “@” berfungi agar php tidak menampilkan pesan error secar defaultnya.
2. Cari tahu jumlah record di database
Untuk mencari tahu jumlah record di database gunakan perintah dbase_numrecords, sehingga syntaks yang digunakan $jumlah=dbase_numrecords($db);
Mirip dengan MySQL khan yang menggunakan syntak mysql_num_rows($query);
3. Simpan array record di variable
Kalau di MySQL kita mengenal yang namanya perintah mysql_fetch_array maka di DBF ini kita mengenal yang namanya dbase_get_record_with_names($db,$urutan);
contohnya seperti ini
$db=dbase_open(“punyaku/bukanmysql.dbf”,2);//masukkan identifier
$jum=dbase_numrecords($db);//cari tahu jumlah record
for($x=1;$x=$jum;$x++){//lakukan perulangan berdasarkan jumlah data
$hasil=dbase_get_record_with_names($db,$x); /*simpan record di array $hasil*/
}
4. Tampilkan yang kuinginkan saja
Misalkan kita hanya ingin menampilkan record dengan syarat tertentu, seperti kita lihat di MySQL yang menggunakan perintah where seperti ini misalkan mysql_query(“select * from data where isine=’semaumu’ “);
ini berarti kita akan mengeluarkan data di table data dengan field bernama isine dengan record yang berisi semaumu saja.
kalo kita tulis di DBF menjadi seperti ini
$db=dbase_open(“punyaku/data.dbf”,2);//hanya untuk table data saja
$jum=dbase_numrecords($db);//cari tahu jumlah record
for($x=1;$x,=$jum;$x++){//lakukan perulangan berdasarkan jumlah data
$hasil=dbase_get_record_with_names($db,$x); /*simpan record di array $hasil*/
if($hasil['isine']==”semamumu”){ /*masukkan persyaratan data yang hendak dikeluarkan*/
echo “horee data ketemu di record nomer $x”; /*output jika data diketemukan*/
break; /*hentikan perulangan jika syarat terpenuhi , kasihan ngeloop terus
, kalo misalkan data yang mau dikeluarkan banyak tak perlu kasih break kalee */
}
}
5. Buang Yang tidak perlu
untuk melakukan delete terhadap suatu record mudah saja, kalo di MySQl kita mengenal perintah mysql_query(“delete from data where id=’2′”);
maka dengan DBF perintah yang kita lakukan
$db=dbase_open(“punyaku/data.dbf”,2);//hanya untuk table data saja
$hapus=dbase_delete_record($db,2); /* kalau di mysql berdasarkan nama id nya tapi kalo di DBF berdasarkan urutan recordnya */
dbase_pack($db); /*databes dipack biar yang kehapus gak cuma terindek dengan deleted saja*/
dbase_close($db); //diclose biar sesuai aturan
6. Segera Perbaiki Diri
Untuk melakukan update data prinsipnya nomor record yang hendak diupdate musti disebutkan, dan isi update an itu juga disebutkan
$db=dbase_open(“punyaku/data.dbf”,2);//hanya untuk table data saja
$val=array(“data1″,”data2″);/*berisi isian field di record, kalau misalkan field berjumlah 3 maka jumlah array nya juga musti berjumlah 3 */
$update=dbase_update_record($db,$val,$urutan);/*update di no ke $urutan ya dengan isi record yakni $val itu sendiri*/
7. Nambah Boleh Aja
untuk menambah data prinspi sama dengan update tapi tidak diberi nomor urut data sehingga seperti ini
$db=dbase_open(“punyaku/data.dbf”,2);//hanya untuk table data saja
$val=array(“data1″,”data2″);/*berisi isian field di record, kalau misalkan field berjumlah 3 maka jumlah array nya juga musti berjumlah 3 */
$update=dbase_add_record($db,$val);/*masukkan datanya
*/
dah gitu aja dikit cerita tentang si DBF dengan si PHP silahkan yang lain menambahi



Thanks artikelnya, kebetulan gi ngerjain ini…^_^
Oleh: antony on Juli 17, 2007
at 1:08 am
@antony
sama-sama he he he , hidup cuma sekali musti bermakna buat yang lain
Oleh: addthe on Juli 17, 2007
at 2:07 am
thx berat lho .. lagi ada proyek migrasi dari dbf ke mysql nii ..
Oleh: jaka on Agustus 2, 2007
at 10:42 am
#jaka
ya sama-sama semoga proyeknya sukses dahh
Oleh: phantom on Agustus 2, 2007
at 3:06 pm
kalau file dbfnya bukan di komputer lokal tapi di server yang lain gimana ya? kalau dbfnya di kompi lokal bisa sih misal
dbase_open(“c:/lokal/file.dbf”,0)
berhasil,
tapi coba dengan mapping misal
dbase_open(“Z:/mapfolder/file.dbf”,0)
kenapa ngak berhasil ya????
tolong di reply atau konfirm ke email saya ya, untuk yang tahu jawabannya, terima kasih
Oleh: yopie@intraco.co.id on Januari 8, 2008
at 8:42 am
haruse bisa, tapi aku juga belum nyoba, kalau misale komputer lain tapi masih dalam satu jaringan dan sampeyan punya hak untuk mengakses nya seharusnya bisa….
dbase_open(”Z:/mapfolder/file.dbf”,0);
itu mau akses komputer local apa computer lain, kalau komputer lain mungkin bisa dicoba dengan alamat yang benar dalam jaringan
Oleh: add_ on Januari 9, 2008
at 3:32 am
dbase_open(”Z:/mapfolder/file.dbf”,0);
ini hasil mapping, jadi sebelumnya folder berisi file dbf yang ada di komputer lain yang dalam satu jaringan disharing (aku udah minta dikasih akses read/write sama admin komputer khusus folder yang disharing itu), aku buka pake ip-nya dengan run, terus aku map dengan klik kanan-map network drive folder itu di Z, aku gunain cara ini karena aku ngikutin cara yang sama yang dipakai aplikasi VB.NET yang berhasil menerapkan cara ini.
Aku coba nyari info di google dan nanya temen aku, katanya properties log on di services untuk aplikasi apachenya harus diganti dengan account ketika aku log in jadi bukan log on as system lagi. ya aku udah ganti juga menjadi log on dengan account aku. hasilnya keliatan di task manager tab process. tapi tetep aja ngak bisa… bingung nih jadinya.
kalau maksud mas dengan alamat sebenarnya gimana ya? apa file dbf-nya di masukkan ke folder web server komputer server terus kita tulis alamatnya lengkap dengan menggunakan ip? tapi kalau servernya ngak ada webserver gimana mas?
makasih ya mas info-nya kalau ngak keberatan saya minta konfirmasinya ke email saya kalau mas udah jawab, soalnya yang ini aja saya baru tau hari ini kalau udah dijawab.
Oleh: yopie@intraco.co.id on Januari 17, 2008
at 9:25 am
ya ya ya ya udah ketemu caranya seperti ini
dbase_open(”//192.168.5.17/mapfolder/file.dbf”,0);
ngak perlu mapping2 segala, thanks ya mas ilmunya…
Oleh: yopie@intraco.co.id on Januari 18, 2008
at 6:37 am
tutorialnya bagus,tapi waktu saya nyoba hasilnya gak keluar tuh,
Koneksi berhasil tapi untuk menampilkan isi databasenya gak bisa
kira-kira yang salah apanya ya?
Oleh: u111412 on Januari 24, 2008
at 2:41 am
kok gak bisa yach……
newbie di php ni….tapi klo pake sql gw dah bisa…
ktnya si syntaxnya salah….
please help donk
gw pake syntax yang ada diatas..man sedikit edit aja di nama databasenya
$db=dbase_open(”punyaku/bukanmysql.dbf”,2);
menjadi
$db=dbase_open(”ymc.dbf”,2);
(karena filenya ada di satu folder dengan index.php-nya(nama file gw)
gw pake phptriad….please hel y
ato kirim ke email gw donk
bentuk udah jadinya
klo bisa plus *.dbf-nya
oc
thx…ntr gw kasih cium yang gak janji d
thx
Oleh: ymc on Februari 11, 2008
at 8:07 am
waw… keren banget nih….
makasih banget….
mau nanya donk…. klo mau ngejalanin perintah select gimana di php dbf…? ak masih katro neh….
kaya :
select * from apagitu where gimana = ‘gitu’
tapi terima kasih banget lho…
klo ada tutorialnya ak bagi ya.. dbf php…
makasih banyak….
maaf klo ada salah kata…
thanks…
Oleh: mr_freak on Februari 26, 2008
at 11:10 am
# mr_freak lihat poin 4 juragan
Oleh: adi wirawan on Februari 27, 2008
at 1:37 am
thanks banget adi…
tapi maksudku ada ga yang make perintahnya sql..?
jadi bisa pake fungsi2 distinct, sum, count, format…
soalnya ak kebiasa pake perintah2 gitu…
klo di vb yang koneknya ke dbf, bisa pake perintah sql… klo php gimana caranya ya? bisa ga?
btw thanks banget ya…
Oleh: mr_freak on Februari 28, 2008
at 2:13 am
sepengetahuanku kok gak ada ya…
Oleh: add_ on Maret 8, 2008
at 3:46 am
aku boleh ga ngutip tulisan ini buat di blog ku… abis baru belajar bikin blog… boleh ya.. nanti aku cantumin nama sama link penulisnya sekalian… boleh ga?
Oleh: misterfreak on Mei 9, 2008
at 7:21 am
[...] klo belum jelas.. bisa buka langsung sumbernya artikelnya disini [...]
Oleh: Koneksi PHP ke DBF « Mr FREAK on Mei 9, 2008
at 7:41 am
wah ada ngga yang udah jadi ….. migrasi dari dbf ke mysql
Oleh: ekoadip on Juni 20, 2008
at 2:30 am
gw lg kerja skripsi jg neh, buat program yg bs baca database apa aja (multi database), hrs bs baca sql, access n dbf.. ada referensi ga y?bgsx pake VB or PHP buat ngerjainx?thx yoooo…^^
Oleh: whiteliciouzz on Oktober 11, 2008
at 3:52 pm
mas kok digunakan untuk mengupdate data kok gak bisa ya?
ak gnakan gini dbase_update_record
kalau perintah yg lain bisa cma printah itu yg gak bsa..
tolong pencerahannya mas
Oleh: koko on November 21, 2008
at 7:42 am
Kalau pake dbase_update_record gak bisa coba pakai dbase_replace_record(parameter sama). Aku coba langsung “nggendring” alias loos gitu…
Oleh: ari solaris on Juni 8, 2009
at 9:29 am
Oleh: ari solaris on Juni 8, 2009
at 9:30 am
Om
Koq i coba slalu error Undefined function dbase_open
apa nya yang salah ney??
pake server apache2triad
Oleh: r03dy@ on Januari 5, 2009
at 7:30 am
Thank bro… ijin copy artikelnya buat catatan kalo lupa…
Oleh: n_mst on Januari 12, 2009
at 10:20 am
koneksi dbf ke php msh blum bisa, pdhl udah di arahin ke 192.168.0.1 atau (z:server_pabrik/simp)
tetep saja blm bisa konek,..
kayanya ada udang di balik terigu,..
mohon petunjuk master”,
tks
Oleh: HERI on Februari 2, 2009
at 6:57 am
kalo file .dbf nya dibuka kok ada kayak warning harus menset codepagenya terlebih dulu untuk masuk.
kayak ini
file namefile.dbf is not marked with a code page. please select the code page it was created in.
kalo ingin dihilangkan/disetting secara otomatis tu caranya bagaimana ya?
Oleh: hani on April 3, 2009
at 5:33 pm
Kalau pake dbase_update_record gak bisa coba pakai dbase_replace_record(parameter sama). Aku coba langsung “nggendring” alias loos gitu…
Oleh: ari solaris on Juni 8, 2009
at 9:29 am
-Kok no 6 gk bisa ya????
=>
$val=array(”data1″,”data2″);
$update=dbase_update_record($db,$val,$urutan);
=> gmn utk perub dtnya yg mn apa maksutnya ‘data1′ duganti ‘data2′ ato gmn.
- no 7.penambahan baru mekanisme nya gmn>blm jelas boz…
THANK’S B4
for no 1-5 i’ts usevul
hehehehe
Oleh: ardhy on Agustus 5, 2009
at 5:17 am
yang mapping ga bisa kemungkinan salah disini kalau ente copy script diatas….
for($x=1;$x,=$jum;$x++)
harusnya
for($x=1;$x<=$jum;$x++)
gue bisa berhasil tuh, tapi kalau $x,=$jum….alamat ga muncul apa2 di console
Oleh: rained on Desember 5, 2009
at 6:32 am