case 'show': // dapatkan data page dari URL $page = filter_str($_GET['page']); if ($page == '') { $page = 0; } $hari = filter_str($_GET['hari']); $kat = filter_str($_GET['kat']); // if ($kat == '') // $kat = 'komputer'; $waktu = new waktu(); // buat objek waktu $waktu->set_date(); // cek kondisi hari untuk menentukan timestamp if ($hari == 'today') { $waktu->set_mode(2); // tanggal tetap $tstamp = $waktu->set_tgl(1); // sekarang dalam detik } elseif ($hari == 'kemarin' || $hari == 'lama') { $waktu->set_mode(0); // dikurangi $tstamp = $waktu->set_tgl(1, 1); // kemarin dalam detik } // variabel untuk melakukan query $query = "SELECT * FROM tb_iklan,kategori WHERE tb_iklan.id_kategori=kategori.id_kategori AND tb_iklan.id_kategori='{$kat}'"; if ($hari == 'lama') { $query = "SELECT * FROM tb_iklan,kategori WHERE tb_iklan.id_kategori=kategori.id_kategori AND tb_iklan.id_kategori='{$kat}'"; } $page = filter_str($page);
if (!cek_field($_POST)) { $pesan_error = "Error: Masih ada field yang kosong.<br>\n"; } if (strlen($isi) < 10) { $pesan_error .= "Error: Kelihatannya iklan anda terlalu pendek.<br>\n"; } // jika $pesan_error tidak kosong maka ada error if ($pesan_error != '') { $pasang = $pesan_error . $kembali; } else { // buat variabel untuk dimasukan ke database $tgl = date('d-m-Y, H:i'); $user = $_SESSION['member']; $waktu = new waktu(); $waktu->set_date(); $waktu->set_mode(2); // mode tetap $skr = $waktu->set_tgl(1); // sekarang dalam detik $hasil = mysql_query("INSERT INTO tb_iklan VALUES (0, '{$kategori}', '{$user}', '{$jdl_iklan}',\n\t\t\t\t'{$isi}', '{$tgl}', '{$skr}')"); // cek status if (!$hasil) { $pasang = "Error: Tidak dapat mamasukan data ke database.<br>\n" . "<a href='mailto: root@localhost'>Kontak Admin</a>\n"; } else { $pasang = "<p>Iklan berhasil di-post.</p>\n"; } } break; } } // akhir dari else
// handel setiap proses dengan switch dan case switch ($proses) { case 'login': // cek apakah admin sudah login atau belum if (!cek_session('admin')) { $judul = "<h2 align=center>iklanUNPAM - login</h2>\n"; $admin = "\n\t\t<form action='index.php?proses=proses_login' method='post'>\n\t\t<table align=center border='0' cellpadding='4'>\n\t\t\t<tr bgcolor='#7cb500' align='center'>\n\t\t\t\t<td colspan='2' class='putih'>Admin Login</td></tr>\n\t\t\t<tr><td>Username: </td><td><input type='text' name='username'></td></tr>\n\t\t\t<tr><td>Password: </td><td><input type='password' name='password'></td></tr>\n\t\t\t<tr><td></td><td><input type='submit' value='L O G I N'></td></tr>\n\t\t\t<tr bgcolor='#7cb500' height='20'><td colspan='2'></td></tr>\n\t\t</table>\n\t\t</form>\n\n"; // kosongkan nilai variabel $admin_menu $admin_menu = ''; $login = ''; } else { $admin = "\n\t\t<h2>Selamat datang di control panel - iklanUNPAM</h2>\n\t\t<p>Silahkan pilih menu disamping untuk memanaje website iklanUNPAM</p>\n"; // panggil class waktu $waktu = new waktu(); $waktu->set_date(); $waktu->set_mode(0); // mode pengurangan $waktu_itu = $waktu->set_tgl(1, $lama_iklan); // $lama_iklan di konfig.php // hapus iklan yang dippost lebih dari $lama_iklan $hasil = mysql_query("DELETE FROM tb_iklan WHERE timestamp<{$waktu_itu}"); // cek status if (!$hasil) { $admin .= "<p>Error: gagal menghapus iklan pada database.<br>\n{$kembali}</p>\n"; } } break; case 'proses_login': $username = filter_str($_POST['username']); $password = filter_str($_POST['password']); $password = balik_md5($password);
if ($skr >= $data['next_post']) { $isi = "POSTED BY: {$user}\n" . "*******************************\n\n" . $isi . "\n\n\n" . str_repeat("*", 70) . "\n" . "Anda menerima email ini karena anda adalah member dari \n" . "iklanUNPAM\n" . "(c) 2015 iklanUNPAM\n" . str_repeat("*", 70); $from = "From: {$data['1']}"; // email user // lakukan looping untuk mengirim email ke seluruh member $hasil = mysql_query("SELECT * FROM member WHERE username != '{$user}'"); while ($data = mysql_fetch_array($hasil)) { $to = $data['email']; // alamat email masing2 member mail($to, $subject, $isi, $from); // kirim email } $waktu = new waktu(); // buat objek waktu $waktu->set_date(); $waktu->set_mode(1); // mode penambahan $next = $waktu->set_tgl(1, $lama_email); // dalam detik, $lama_email hari ke depan // update nilai next_post $query = mysql_query("UPDATE tb_email SET next_post={$next} WHERE username='******'"); if (!$query) { $email_ad = "<p>Gagal Mengupdate database.</p>\n"; } else { $email_ad = "<p>Email berhasil dikirim.</p>\n"; } } else { // kalkulasi dari detik menjadi hari $nanti = floor(($data['next_post'] - $skr) / 60 / 60 / 24); $email_ad = "<p><font color='red'>Maaf, saat ini anda belum bisa mengirim email. " . "Anda dapat mengirim email {$nanti} hari lagi.</font></p>\n"; }