2013-01-01

perhatikan database dan table yang digunakan


memutuskan bikin coding yang singkat adalah pilihan yang tepat.. tetapi kalau malah merepotkan lebih baik jangan.. apalagi codingnya berkaitan dengan edit tablenya.. beberapa coding tidak memperbolehkan edit coding dgn mudah

saya mau nanya seputar combo box yang terhubung ke database.. mudah2an pertanyaan saya bisa dimengerti..


jadi gini, saya punya file tambah.php sama ubah.php.. nah di file tambah.php itu saya punya combo box yang isinya itu dari filed2 tabel yang ada di database, misalnya di tabel itu berisi : keuangan, administrasi, distribusi..
misalkan saya input data pada file tambah.php, dan pada combo box itu saya milih 'keuangan'.. terus saya simpan datanya..
nah terus saya ingin merubahnya data yang saya inputkan tadi, maka saya pilih file ubah.php..
pertanyaannya, gimana caranya agar value pada combo box di file ubah.php itu sesuai dengan yang ada di database.. jadi di combo boxnya itu udah mengarah pada pilihan 'keuangan'..
edit 1 table tertentu harus ditentukan table mana aja yang boleh di edit/tidak.. karena ini masalah keamanan. belum lagi tentang fieldnya yang mana aja yg boleh di edit.. contoh yang gk boleh di edit adalah id.


Sisanya masalah kebiasaan saja bagaimana kamu membuat bentuk fieldnya. Karena memahami membuat database bukan dengan teori tapi kebiasaan, saya juga mungkin melakukan hal yang sama yaitu memakai integer buat hal yang tak dihitung..

Balik ke topik utama, dengan pertanyaan seperti ini.. kesulitan utama yang akan dihadapi adalah bagaimana memastikan hasil isian kamu ke field yang tepat.. Itu tidak mudah dan tidak sulit..

  • pertama masalah tipe field (di atas) yang bisa kamu sesuaikan.
  • id adalah sesuatu yang penting. Perhatikan id adalah kata kunci utama, bila ini ada hubungan ama field lain, maka kamu butuh kata kunci tamu ato guest / secondary key. Misal dalam table administrasi ada id yang dari keuangan.. maka id itu disebut guest key. Kalau ada salah penamaan tolong info..
  • penamaan dari field, sebagus-bagusnya kamu membuat field!! kamu harus menentukan nama yang tepat untuk field tersebut. Ini nantinya berguna saat kamu keluarkan atau di join dengan tabel lain..
  • rule untuk field tersebut. Ini tak langsung berhubungan dengan tipe field, makanya kadang tipe field dibuat integer agar isiannya angka.. Disini bisa dibilang rule pertama saya boleh di hindari, karena asumsi orang berbeda-beda
  • terakhir yang paling penting adalah memastikan field tujuan tepat. Tes dengan phpmyadmin atau tools sejenis.
Beberapa hal yang suka miss adalah kita tidak memasukkan error reporting dalam input / insert atau update. Jangan lupa saat memasukkan field/data, masukkan juga error reporting. Error reporting disini adalah

$f = mysql_query($sql) or die( mysql_error() );
nb: mysql_error() adalah error reporting. hal ini berguna bila ternyata ada masalah pada table (ngak bisa terisi) dan kamu sudah bisa mendeteksi.. 
Sedikit curhat, saya memiliki script yang berjalan normal (insert data), tapi mendadak saya menemukan script itu tidak jalan.. Sedihnya script ini ternyata error dari 6 bulan yang lalu dan tidak ada laporan tentang errornya! ternyata sumbernya si table gagal input data baru!! akhirnya di repair maka datanya bisa terisi.. Dari sini terlihat kebutuhan dari error_repoting tersebut.

Untuk jawaban detailnya saya tidak akan berikan sebelum memahami tulisan diatas.. karena pertanyaan ini agak sulit dijawab sekali jalan!

Tidak ada komentar: