Jumat, 31 Juli 2015

PHP

Ane cuma ngasih tau cara bikin admin panelnya, maksudnya kaya buat edit judul, deskripsi, via admin panel. Bukan admin panel sepenuhnya. Tapi, dari kode dasar ini bisa kalian kembangin untuk fitur lainnya, yang penting kalian tau dasarnya dulu
Logika nya, jika ingin membuat admin panel yang bisa mengubah konten dari sebuah web, berarti harus ada koneksi antara database, tampilan, dan program inti. Untuk database kita menggunakan MySQL via phpmyadmin. Nah, pertama, kita bikin koneksi ke database dulu yuk. Sebelumnya, kalian bikin db nya dulu di php my admin, gausah pake table atau apa. polos aja dulu. terus sekarang bikin file namanya koneksi.php, fungsinya untuk mengkoneksikan ke db

koneksi.php
<?php
$host	= "localhost";
$user	= "username database";
$pass	= "password database";
$name	= "nama database";

mysql_connect("$host", "$user", "$pass");
mysql_select_db("$name");
?>

Bikin tabel
Setelah kalian selesai membuat file koneksi.php tadi, sekarang kita bikin tabel di databasenya. Saya pake phpmyadmin versi 3.5.1, setelah login, pilih database yang tadi ente buat + udah dimasukin ke koneksi.php. terus disebelah kiri klik tulisan "create table". table name tulis aja "jc_setting", terus bikin coloumn set_id, type nya INT, length nya 11, terus coloumn set_name, type varchar, length nya 32, terus set_content, length 255, type varchar, dan set_url, setingannya sama kaya set_content.

Insert data ke kolom
Sekarang insert data dulu ke kolom di databasenya, pencet menu insert. lalu isikan data seperti ini. Klik untuk memperbesar gambar.
contoh

Bikin template webnya standar
Nah sekarang bikin web templatenya dulu. standar aja, kan buat contoh >_<. kasih nama index.php
<?php
include 'koneksi.php';
include 'head.php';
nah sekarang bikin file lagi dengan nama head.php
<html>
	<head>
		<title><?php
$sql = mysql_query("SELECT * FROM jc_setting WHERE set_id=1");
if(mysql_num_rows($sql) != 0){
	while($data = mysql_fetch_assoc($sql)){
		echo ''.$data['set_content'].'';
	}
}
?> 

- 

<?php
$sql = mysql_query("SELECT * FROM jc_setting WHERE set_id=2");
if(mysql_num_rows($sql) != 0){
	while($data = mysql_fetch_assoc($sql)){
		echo ''.$data['set_content'].'';
	}
}
?></title>
</head>
<body>
<h1>welcome to <?php
$sql = mysql_query("SELECT * FROM jc_setting WHERE set_id=1");
if(mysql_num_rows($sql) != 0){
	while($data = mysql_fetch_assoc($sql)){
		echo ''.$data['set_content'].'';
	}
}
?> </h1>
</body>
</html>
ini sengaja ane buat panjang biar ente ente pada ngerti itu data muncul dari mana. perhatiin tulisan WHERE set_id=1, bisa ente main mainin tuh, mau ORDER BY ASC atau DESC, atau apalah terserah ente. main experiment aja kaya pas pertama ane belajar ini. ane belajar ini sendiri :3

Bikin halaman admin buat ngatur konten websitenya
Nah bikin file baru lagi, namanya admin.php
<?php
session_start();
ob_start();
include'config.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>admin site</title>
</head>
<body>
<h1>Site configuration</h1>
<!------------- Ganti Judul ---------------->
<?php
$sql = mysql_query("SELECT * FROM jc_setting WHERE set_id=1");
if(mysql_num_rows($sql) != 0){
	while($data = mysql_fetch_assoc($sql)){
		echo '<b>Site Name:</b> '.$data['set_content'].'';
	}
}
?> <a href="admin.php?aksi=edit&id=1">Edit</a><br>
<?php	
//edit judul
	if(@$_GET['aksi'] == "edit"){
		$id = abs((int)$_GET['id']);
		$get = mysql_query("SELECT * FROM jc_setting WHERE set_id='$id'");
		$dataGet = mysql_fetch_assoc($get);
		
		if(@$_POST['save-judul']){
			$Title	= $_POST['judul'];
			
			if($Title){
				$up = mysql_query("UPDATE jc_setting SET set_content='$Title' WHERE set_id='1'");
				if($up){
					echo '<script language="javascript">alert("Data Successfully Saved!"); document.location="admin.php?aksi=edit&id=1";</script>';
				}else{
					echo '<div class="error">ERROR: Fail to Save Data.</div>';
				}
			}else{
				echo '<div class="error">ERROR: Enter your new site name.</div>';
			}
		}
		
		echo '<form action="" method="post">';
		echo '<h3>Change Site Name</h3>';
    	echo '<p>New Site Name:<br /><input type="text" name="judul" placeholder="Masukan Judul Web Anda Yang Baru" /></p>';
        echo '<input type="submit" name="save-judul" value="save" />';
    	echo '</form>';
	}?>
	
<!------------- Ganti Deskripsi ---------------->
<hr style="margin-top:20px;"><?php
$sql = mysql_query("SELECT * FROM jc_setting WHERE set_id=2 ORDER BY set_content ASC");
if(mysql_num_rows($sql) != 0){
	while($data = mysql_fetch_assoc($sql)){
		echo '<b>Web Description:</b> '.$data['set_content'].'';
	}
}
?> <a href="admin.php?aksi=edit&id=2">Edit</a><br>
<?php	
//edit deskripsi
	if(@$_GET['aksi'] == "edit"){
		$id = abs((int)$_GET['id']);
		$get = mysql_query("SELECT * FROM jc_setting WHERE set_id='2'");
		$dataGet = mysql_fetch_assoc($get);
		
		if(@$_POST['save-desc']){
			$Description	= $_POST['deskripsi'];
			
			if($Description){
				$up = mysql_query("UPDATE jc_setting SET set_content='$Description' WHERE set_id='2'");
				if($up){
					echo '<script language="javascript">alert("Data Has Been Saved."); document.location="admin.php?aksi=edit&id=2";</script>';
				}else{
					echo '<div class="error">ERROR: Failed to Save Data.</div>';
				}
			}else{
				echo '<div class="error">ERROR: Enter Your Site Description.</div>';
			}
		}
		
		echo '<form action="" method="post">';
		echo '<h3>Change Web Description</h3>';
    	echo '<p>Web Description:<br /><input type="text" name="deskripsi" placeholder="Masukan Deskripsi Web Anda Yang Baru" /></p>';
        echo '<input type="submit" name="save-desc" value="save" />';
    	echo '</form>';
	}?>
        <div class="clear"></div>

</body>
</html>
Taraaa... jadi deh. tapi kalo di perhatiin, itu kode vuln sama mysqli loh :v entar deh kapan kapan di bahas cara ngepatch nya. Oh iya ini halaman adminnya sederhana, kalo mau pake login segala macem, ini bisa baca tutorial dari gua sebelumnya yaitu Cara membuat sistem login dan signup dengan PHP, MySQL, dan jQuery

Tidak ada komentar:

Posting Komentar