Portal Blog #Rezza Sofyan

Script PHP Polling (Vote)

Script PHP Polling (Vote)

assalamualaikum ..
saya akan membagi sedikit ilmu :D
yg ini dapat bikin saya namun menggunakan Images/gambar :D


Kali ini saya coba berbagi tentang script polling namun berbentuk localhost, Cukup sederhana cara membuatnya. Terlebih dahulu kita buat table database untuk polling , field yang akan digunakan ada 3, yaitu jelek ,sedang dan bagus . Untuk mempermudah, tiap field kita isi dengan tipe data integer saja ,dengan panjang 10.


CREATE DATABASE 'polling' 

next

CREATE TABLE `polling` ( 
`jelek` INT ( 10 ) NOT NULL , 
`sedang` INT ( 10 ) NOT NULL , 
`bagus` INT ( 10 ) NOT NULL
) ENGINE = MYISAM ; 

Berikut script untuk membuat form polling berikut hasil pollingnya
koneksi.php
<?
php mysql_connect ( "dbhost" , "dbuser" , "dbpass" ) ;
mysql_select_db ( "dbname" ) ;
?> 


polling.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form action="polling_proses.php" method="post">
<table width="200" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><b>POLLING</b></td>
</tr>
<tr>
<td>
<input type="radio" name="polling" value="jelek">Jelek<br>
<input type="radio" name="polling" value="sedang">Sedang<br>
<input type="radio" name="polling" value="bagus">Bagus
</td>
</tr>
<tr>
<td><input type="submit" value="Submit" name="tombol"></td>
</tr>
</table>
<br>
<?
include"koneksi.php"; //script ini untuk mengkoneksikan tabel yg kita buat didatabase 

$cek=mysql_query("select * from polling");
$cek_hasil=mysql_fetch_array($cek);
if($cek_hasil[jelek]=="") // karena pada saat pembuatan tabel polling, tiap field datanya masih kosong , maka kita isi tiap field dengan nilai 0.
{
mysql_query("insert into polling(jelek,sedang,bagus) values('0','0','0')"); // mengisi field dengan nilai 0 
}
else
{
$query=mysql_query("select * from polling");
$data=mysql_fetch_array($query);
$total=$data[jelek]+$data[sedang]+$data[bagus];
if($total=='0') //karena jumlah total = 0 , berarti masing2 field berisi data = '0' 
{
$jelek='0';
$sedang='0';
$bagus='0';
}
else
{
$jelek=($data[jelek]/$total)*100;
$sedang=($data[sedang]/$total)*100;
$bagus=($data[bagus]/$total)*100;
}
}
?>

<table width="200" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="58"><b>Hasil</b></td>
<td width="142"></td>
</tr>
<tr>
<td>Jelek</td>
<td>: <? printf("%.2lf\n",$jelek);?> %</td>
</tr>
<tr>
<td>Sedang</td>
<td>: <? printf("%.2lf\n",$sedang);?> %</td>
</tr>
<tr>
<td>Bagus</td>
<td>: <? printf("%.2lf\n",$bagus);?> %</td>
</tr>
</table>
<br>
 </form>
</body>
</html>



polling_proses.php 

  

<?

ob_start(); 
include"koneksi.php";

$polling=$_REQUEST['polling'];

$query=mysql_query("select * from polling");

$data=mysql_fetch_array($query);


if($polling=='jelek')

{

$nilai=$data[jelek]+1;

mysql_query("update polling set jelek='$nilai'");

header('Location:polling.php');

}

else if($polling=='sedang')

{

$nilai=$data[sedang]+1;

mysql_query("update polling set sedang='$nilai'");

header("Location:polling.php");

}

else

{

$nilai=$data[bagus]+1;

mysql_query("update polling set bagus='$nilai'");

header("Location:polling.php");

}

ob_end_flush(); 

?> 


Note :
Perintah ob_start dan ob_end_flush untuk mengatasi masalah error pada header . Error pada header bisa dikarenakan "include , session, cookie". Selamat mencoba :D
sumber : Imam Riyanto :)



share this article to: Facebook Twitter Google+ Linkedin Technorati Digg
Posted by Unknown, Published at 02.11 and have 5 komentar

5 komentar:

Silahkan Komentar jika ada keluhan anda :)
terima kasih dari Kezhot :)
Salam Rezza Sofyan -_-