$proses = $_GET['proses']; if ($proses == '') { $proses = 'form'; } $proses = filter_str($proses); // handel setiap proses dengan case dan switch switch ($proses) { case 'form': $login = "******" . "<center>Bagi member silahkan login dibawah ini.</center>\n" . "<form action='login.php?proses=proses_form' method='post'>\n" . "<table align=center border='1' cellpadding='4'>\n" . " <tr bgcolor='#7cb500' height='20'><td colspan='2'></td></tr>\n" . "<tr>\n <td>Username: </td>\n" . " <td><input type='text' name='username'></td>\n </tr>\n" . "<tr>\n <td>Password: </td>\n" . " <td><input type='password' name='password'></td>\n </tr>" . "<tr>\n <td></td>\n" . " <td><input type='submit' value='LOGIN'></td>\n </tr>\n" . "<tr bgcolor='#7cb500' height='20'><td colspan='2'>\n\t<p>Lupa Password? Klik <a href='lupa_pass.php'>disini</a>.</p>\n\t<p>Belum Menjadi Member? <a href='daftar.php'>Daftar</a> sekarang.</p></td></tr>\n" . "</table>\n</form>\n"; break; case 'proses_form': // ambil data yang dipost sekaligus filter $username = filter_str($_POST['username']); $password = filter_str($_POST['password']); // enkripsi password $password = balik_md5($password); konek_db(); // koneksikan ke MySQL server // gunakan fungsi login untuk mencocokan data if (!login('member', $username, $password)) { $login = "******"; } else { $_SESSION['member'] = $username; // buat session member $login = "******" . "untuk masuk ke member area."; } mysql_close(); } // panggil class skin $skin = new skin(); // buat objek skin
case ini berfungsi untuk memasukan account administrator ke database ini dikarenakan fungsi yang kita gunakan login adalah balik_md5() dan untuk menghasilkan string chiper ini hanya bisa dilakukan lewat script PHP bukan pada MySQL untuk memanggil fungsi ini harus diketikan langsung pada address bar index.php?proses=__add_admin_to_database__ lalu ENTER untuk mencegah eksploitasi sistem, kita tidak menyediakan form untuk menambahkan account admin ke database melainkan langsung melakukan query */ // kosongkan nilai $admin_menu $admin_menu = ''; // tentukan username dan password yang diinginkan $username = '******'; $password = balik_md5('__pas123__'); // lakukan query INSERT untuk memasukan acount ke database $hasil = mysql_query("INSERT INTO admin VALUES('{$username}', '{$password}')"); if (!$hasil) { $admin = "Error: Gagal memasukan ke database. Mungkin account " . "sudah dimasukan. <br>\n{$kembali}"; } else { $admin = "Acount untuk administrator berhasil dimasukan ke database. <br>" . "<a href='index.php'>Login</a>\n"; } break; } // akhir dari switch mysql_close(); // tutup koneksi $skin = new skin(); // buat object skin $skin->ganti_skin('../template/skin_utama.php');
$email = $_POST['email']; // cek kevalidan email if (!cek_email($email)) { $lupa = "<p>Error: Email tidak valid.<br>\n{$kembali}</p>\n"; } else { // lakukan query untuk mencocokan data $hasil = mysql_query("SELECT * FROM member WHERE username='******' AND email='{$email}'"); // cek hasil if (mysql_num_rows($hasil) == 0) { $lupa = "<p>Error: Username atau email tidak ada didatabase.<br>\n{$kembali}</p>"; } else { // jika cocok maka buat password baru, update database lalu kirim email // panggil fungsi pass_acak() untuk mendapatkan password secara acak $new_pass = pass_acak(); // enkripsi password $pass_enkrip = balik_md5($new_pass); // update password yang ada di database $q_update = mysql_query("UPDATE member SET password='******' WHERE username='******'"); // cek status if (!$q_update) { $lupa = "<p>Error: Gagal mengupdate password didatabase.<br>\n{$kembali}</p>" . "Kontak <a href='mailto: elank37@gmail.com'>Admin</a>"; } else { // kirim email $to = $email; // alamat email user $subject = "Password Baru Anda - iklanUNPAM"; $tgl_reset = date('d-m-Y, H:i'); $isi = "Dari elank37@gmail.com\n" . "==================================\n\n" . "Pada tanggal {$tgl_reset} anda dengan username {$username}, telah\n" . "melakukan request password. Dan di bawah ini adalah password\n" . "baru anda.\n\n" . "====================================\n" . "Username: {$username}\n" . "Password: {$password}\n" . "====================================\n\n" . "Gunakan password diatas untuk masuk ke member area. Kemudian\n" . "update kembali password anda agar mudah anda ingat.\n\n" . "===========================\n" . "Admin iklanUNPAM\n" . "===========================\n"; $from = "From: elank37@gmail.com"; // ganti dengan email anda // jika anda tidak memiliki program mail server atau anda belum di server
$alamat = addslashes($_POST['alamat']); $kota = addslashes($_POST['kota']); $telpon = addslashes($_POST['telpon']); // buat variabel pesan_error $pesan_error = ''; // cek semua field if (!cek_field($_POST)) { $pesan_error = "Error: Masih ada field yang kosong<br>\n"; } if (!cek_email($email)) { $pesan_error .= "Error: Email tidak valid.<br>\n"; } if ($pass1 != $pass2) { $pesan_error .= "Error: Password tidak sama.<br>\n"; } $pass1 = balik_md5($pass1); // enkripsi password // cek isi dari pesan error jika tidak kosong maka ada error if ($pesan_error != '') { $profil = $pesan_error . $kembali; } else { // masukkan ke database $hasil = mysql_query("UPDATE member SET password='******', email='{$email}', nama='{$nama}',\n\t\t\t\talamat='{$alamat}', kota='{$kota}', telpon='{$telpon}' WHERE username='******'"); // cek status if (!$hasil) { $profil = "Profil gagal diupdate. <br>\n {$kembali}"; } else { $profil = "Profil berhasil diupdate. <br>\n {$kembali}"; } } break;