| <?php
/** * @author renoldi * @copyright 2013 */
// memulai session session_start(); include('fungsi.php');
// ambil data dari url yaitu proses $proses = $_GET['proses']; if ($proses == '') $proses = 'proses';
// cegah dari sql injection dan cros site scripting $proses = filter_str($proses);
switch ($proses){ case 'login':
//cek apakah user sudah login atau belum if (!cek_session('admin')){ echo '<h3> JFK Admin Area, Please Login</h3>' .'<form action="index.php?proses=proses_login" method="post">' .'<table border="0" cellpadding="0">' .'<tr>' .'<td>Username :</td>' .'<td><input type="text" name="username" /></td>' .'</tr>' .'<tr>' .'<td>Password :</td>' .'<td><input type="password" name="password" /></td>' .'</tr>' .'<tr><td><input type="submit" value="LOGIN"></td></tr>'; } else{ echo '<h3>Wecome to JFK\'s Admin Area<h3>' .'<p>Silahkan pilih link proses berikut :</p>' .'<a href="berita.php">Manage Berita</a>' .'<a href="member.php">Manage Member</a>' .'<a href="bukutamu.php">Manage Buku Tamu</a>' .'<a href="index.php?proses=logout">Logout</a>'; } break;
case 'prose_login': // cegah SQL injection $username = filter_str($username); $password = filter_str($password);
// panggil fungsi login untuk mecocokan data konek_db();
if (!login('admin', $username, $password)) echo 'Username atau password salah!.<br><br><a href="javascript: history.back()"><<back</ah>'; else{ //buat session karena berhasil login $_SESSION['admin'] = $username; echo 'Login berhsi. Klik <a href="index.php">Disini<a/> Untuk masuk area Admin'; } brack;
case 'logout': if(!logout('admin')) echo 'Tidak bisa Logout. <a href="index.php">Login</a> Dulu</a>'; else echo 'Anda telah Logout dari sistem. <a href="index.php">Login</a> Lagi<a/>'; breack; } ?> |
| filenya ada dua 1 fungsi.php 2 index.php klo yg fungsi kyk gini
<?php
/** * @author renoldi * @copyright 2013 */ // fungsi untuk koneksi ke MySQL function konek_db($localhost='localhost', $user='root', $pass=''){ @ $koneksi = mysql_connect($localhost,$user,$pass); if (!$koneksi) mysql_select_db('javakids'); return $koneksi; }
//fungsi login function login($tabel, $username, $password){ $query = "SELECT * FROM $tabel WHERE username='$username' AND password='$password'"; $hasil = mysql_query($query); // cek jumlah baris yang akan dikembalikan if (mysql_num_rows($hasil)) return true; else return falsel; }
// cegah dari sql injection dan cross site scripting function filter_str($string){ $filter = ereg_replace('[^a-zA-Z0-9_]', '', $string); return $filter; }
//cek setiap fiel apa ada yang kosongn function cek_field($vsr){ foreach ($var as $field){ if ($field == '' || !isset($field)) return false; } return false; }
//cek kevalidasian email function cek_email($email){ // fungsi untuk mengecek kevalitan email if (ereg('^[a-zA-Z0-9_\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]$', $email)) return true; else return false; }
// fungsi untuk logout function logout($nama_session){ if (isset($_SESSION['$nama_session'])){ unset($_SESSION['$nama_session']); session_destroy(); return true; } else return false; }
//cek session function cek_session($nama_session){ if (isset($_SESSION['$nama_session'])) return true; else return false; }
?>
klo yang index kyk gini
<?php
/** * @author renoldi * @copyright 2013 */
// memulai session ini_set('display_errors',0); session_start(); include('fungsi.php');
/* ambil data dari url yaitu proses $proses = $_GET['proses']; if ($proses == '') $proses = 'proses'; */
$proses = $_GET['proses']; if ($proses == ''){ $proses = 'proses'; }
// cegah dari sql injection dan cros site scripting $proses = filter_str($proses);
switch ($proses){ case 'login': //cek apakah user sudah login atau belum if (!cek_session('admin')){ echo '<h3> JFK Admin Area, Please Login</h3>' .'<form action="index.php?proses=proses_login" method="post">' .'<table border="0" cellpadding="0">' .'<tr>' .'<td>Username :</td>' .'<td><input type="text" name="username" /></td>' .'</tr>' .'<tr>' .'<td>Password :</td>' .'<td><input type="password" name="password" /></td>' .'</tr>' .'<tr><td><input type="submit" value="LOGIN"></td></tr>'; } else{ echo '<h3>Wecome to JFK\'s Admin Area<h3>' .'<p>Silahkan pilih link proses berikut :</p>' .'<a href="berita.php">Manage Berita</a>' .'<a href="member.php">Manage Member</a>' .'<a href="bukutamu.php">Manage Buku Tamu</a>' .'<a href="index.php?proses=logout">Logout</a>'; } break; case 'prose_login': // cegah SQL injection $username = filter_str($username); $password = filter_str($password); // panggil fungsi login untuk mecocokan data konek_db(); if (!login('admin', $username, $password)) echo 'Username atau password salah!.<br><br><a href="javascript: history.back()"><<back</ah>'; else{ //buat session karena berhasil login $_SESSION['admin'] = $username; echo 'Login berhsi. Klik <a href="index.php">Disini<a/> Untuk masuk area Admin'; } brack; case 'logout': if(!logout('admin')) echo 'Tidak bisa Logout. <a href="index.php">Login</a> Dulu</a>'; else echo 'Anda telah Logout dari sistem. <a href="index.php">Login</a> Lagi<a/>'; breack; } ?>
klo databasenya kayak gini
-- phpMyAdmin SQL Dump -- version 4.0.4.1 -- http://www.phpmyadmin.net -- -- Host: localhost -- Generation Time: Oct 29, 2013 at 12:08 -- Server version: 5.6.12 -- PHP Version: 5.5.3
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */;
-- -- Database: `javakids` -- CREATE DATABASE IF NOT EXISTS `javakids` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci; USE `javakids`;
-- --------------------------------------------------------
-- -- Table structure for table `admin` --
CREATE TABLE IF NOT EXISTS `admin` ( `username` varchar(16) NOT NULL, `password` varchar(16) NOT NULL, PRIMARY KEY (`username`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
-- -- Table structure for table `bukutamu` --
CREATE TABLE IF NOT EXISTS `bukutamu` ( `id_bt` int(4) NOT NULL AUTO_INCREMENT, `tgl_post` varchar(20) NOT NULL, `nama` varchar(30) NOT NULL, `email` varchar(30) NOT NULL, `komentar` varchar(255) NOT NULL, PRIMARY KEY (`id_bt`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
-- --------------------------------------------------------
-- -- Table structure for table `member` --
CREATE TABLE IF NOT EXISTS `member` ( `username` varchar(16) NOT NULL, `password` varchar(16) NOT NULL, `nama` varchar(30) NOT NULL, `email` varchar(30) NOT NULL, `alamat` varchar(100) NOT NULL, `kodepos` int(7) NOT NULL, `kota` varchar(20) NOT NULL, PRIMARY KEY (`username`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
-- -- Table structure for table `news` --
CREATE TABLE IF NOT EXISTS `news` ( `id_berita` int(4) NOT NULL AUTO_INCREMENT, `jdl_berita` varchar(75) NOT NULL, `isi_berita` text NOT NULL, `tgl_berita` varchar(12) NOT NULL, PRIMARY KEY (`id_berita`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; |
Tidak ada komentar:
Posting Komentar