1. Buatlah sebuah desain JFrame seperti dibawah ini :
Form user ini terdapat sebuah Tabbed Pane. Tab yang pertama adalah tambah user, tambah user ini bertujuan untuk mendata user atau administrator baru. Sehingga operator baru yang menjalankan aplikasi minimarket akan di eksekusi pada form ini.
Form user ini terdapat sebuah Tabbed Pane. Tab yang pertama adalah tambah user, tambah user ini bertujuan untuk mendata user atau administrator baru. Sehingga operator baru yang menjalankan aplikasi minimarket akan di eksekusi pada form ini.
Form User(Tambah User)
Form User (Reset Password)
2. Setelah anda membuatnya, langkah selanjutnya adalah deklarasikan sebuah variable untuk koneksi, ResulSet dan Statement.
koneksi koneksi; ResultSet resultSet; Statement statement;
3. Panggil koneksi tepat dibawah initComponents( ) :
koneksi = new koneksi();
4. Kemudian menampilkan tabel yang isinya diambil dari database dan ditampilkan pada form user. Yang akan di tampilkan pada form user adalah username, nama, alamat dan nomor telepon, dimana nomor telepon sebagai Primary Key. Scriptnya dapat dilihat sebagai berikut :
private void tampilanadministrator() { Object header[] = {"USERNAME", "NAMA", "ALAMAT", "NO TELEPON"}; DefaultTableModel defaultTableModel = new DefaultTableModel(null, header); tabeladmin.setModel(defaultTableModel); //menghapus tabel sebelum menampilkan data int baris = tabeladmin.getRowCount(); for (int i = 0; i < baris; i++) { defaultTableModel.removeRow(i); } String sql = "select username, nama, alamat, no_telepon from user"; try { statement = koneksi.con.createStatement(); resultSet = statement.executeQuery(sql); while (resultSet.next()) { String kolom1 = resultSet.getString(1); String kolom2 = resultSet.getString(2); String kolom3 = resultSet.getString(3); String kolom4 = resultSet.getString(4); String kolom[] = {kolom1, kolom2, kolom3, kolom4}; defaultTableModel.addRow(kolom); } } catch (Exception e) { JOptionPane.showMessageDialog(null, e.getMessage()); System.out.println("" + e.getMessage()); } }
5. Kemudian letakkan tampilanadministrator() dibawah initComponents( ) agar dapat langsung berjalan ketika form user di compile.
6. Buat sebuah private void insert () untuk melakukan insert data ke dalam database dan di tampilkan dalam tabel form user. Perlu diketahui dalam membuat insert data ini, harus benar-benar terlindungi agar password user tidak diketahui oleh user lain. Maka dari itu dibuat sebuah enkripsi data menggunakan MD5. MD5 berfungsi untuk melindungi password dengan merubahnya keladam bentuk huruf maupun angka secara random. Skripnya datap dilihat dibawah ini :
private void insert() { char[] passw = txtPassword.getPassword(); String sandi = ""; for (int i = 0; i < passw.length; i++) { sandi = sandi + passw[i]; } int level; if (comboLevel.getSelectedItem().equals("Admin")) { level = 0; } else { level = 1; } try { String sql = "insert into user values('" + txtUser.getText() + "' ,md5('" + sandi + "' )," + level + " ,'" + txtNama.getText() + "' ,'" + txtAlamat.getText() + "','" + txtTelpon.getText() + "')"; statement.executeUpdate(sql); } catch (Exception e) { JOptionPane.showMessageDialog(null, "error pada insert : " + e.getMessage()); } }
7. Buat private void reset () dan private void delete(). Reset digunakan untuk mengatur ulang password ulang apabila mengalami lupa password. Karena jika password lupa maka tidak dapat menjalankan sistem. Sedangkan delete untuk menghapus data user atau administrator ketika data tersebut tak digunakan. Berikut Source Code nya:
Reset :
private void reset() { try { String sql = "update user set password=md5('" + txtPassword2.getText() + "') where username='" + txtUser2.getText() + "'"; statement = koneksi.con.createStatement(); statement.executeUpdate(sql); statement.close(); } catch (Exception e) { JOptionPane.showMessageDialog(null, e.getMessage()); } }
Delete :
private void Hapusadministrator() { String query = "delete from user where no_telepon = '" + txtTelpon.getText() + "'"; try { statement.executeUpdate(query); } catch (Exception e) { JOptionPane.showMessageDialog(null, e.getMessage()); } }
8. Jika selesai, langkah berikutnya, hanya memanggil script void tersebut kedalam action button. Caranya adalah double klik pada button, misalkan button insert atau add. Kemudian kita ketik insert(); agar dapat dijalankan ketika button di klik.
9. Coba jalankan program. dan kemudian lakukan insert, delete maupun reset password. Jika berhasil maka akan muncul seperti gambar yang saya posting dibawah ini :
a. Saat program dijalankan, tabel user muncul :
char[]passw=txtPassword.getPassword();
BalasHapusString sandi = "";
for (int i = 0; i <passw.length; i++) {
sandi = sandi +passw[i];
char[] nya error tolong gan dibantu masih new bie pengen bisa
gan bener tuh error?
BalasHapussama dengan pertanyaan di atas gan pas di kodi
BalasHapusngan char []passw
gan, boleh minta source programnya nggak? terus saya juga mau nanya, kalau mau update password gmana yah? seperti, saya mau update password berdasarkan nama user "ini". kira-kira gmana gan? kalau bisa buatin tutorialnya di blog agan. terimakasih
BalasHapuskoneksi koneksi;
BalasHapusResultSet resultSet;
Statement statement;
Koding yang ini di tempatin dimana ya gan?
Gan masuk tekan tombol insert atau add nya tidak fungsi, padahal di kodingannya udah di ketik insert();
BalasHapus