Membuat Aplikasi Polling Sederhana dengan PHP MySQLi

polling system
Hallo teman-teman ONPHPID, kali ini ONPHPID akan membuat sebuah Sistem Poling sederhana dengan PHP dan MySQLi, dimana Polling adalah sebuah metode yang digunakan untuk mengetahui pendapat umum, terhadap suatu kasus (case) atau masalah tertentu. Sistem Poling biasa digunakan untuk menilai sesuatu seperti artikel, kepuasan pelanggan, kuesioner bahkan pemilihan pemilu.
Penghitungan Poling dapat dilakukan dengan rumus berikut :
dimana :

Untuk mengimplementasikan rumus di atas ONPHPID membuat sistem poling yang sederhana untuk menetukan siapa yang paling cantik dari gambar berikut :

Bagaimana membuatnya ?

PASTIKAN XAMPP SUDAH BERJALAN
Pertama, kalian bisa membuat database dengan mana “votes”, lalu import table sql yang ada disini.
Kedua, buat sebuah folder project di htdocs kalian dengan nama “vote”.
Ketiga, buat file baru dengan nama config.php lalu isi dengan kode koneksi kedatabase dengan new mysqli berikut :
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbname = 'votes';
$connect = new mysqli($dbhost, $dbuser, $dbpass, $dbname);
if ($connect->connect_error) {
die('Error Koneksi : ' . $connect->connect_error);
}
view rawconfig.php hosted with ❤ by GitHub
keempat, buatlah file index.php lalu isi dengan kode berikut :
<?php
// koneksi database
require 'config.php';
?>
<html>
<head>
<title>Sistem Vote</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="vote-container">
<table>
<tr>
<th colspan="2">Cantik Yang Mana ?</th>
</tr>
<tr>
<?php
$sql = "SELECT * FROM vote_opsi";
$query = $connect->query($sql);
while ( $row = $query->fetch_assoc() ) : ?>
<td>
<div class="persentase"></div>
<a href="vote-count.php?nomer=<?php echo $row['id_opsi'];?>">
<img src="<?php echo $row['thumbnail'];?>" width="150" alt=""/>
<p><?php echo $row['nama_opsi'];?></p>
</a>
</td>
<?php endwhile; ?>
</tr>
</table>
</div>
</body>
</html>
view rawindex.php hosted with ❤ by GitHub
untuk melihat hasilnya kalian bisa akses localhost/vote/ melalui browser kesayangan kalian.
Sampai pada langkah ini Gambar Pilihan tidak akan bisa ditampilkan karena kita belum membuat folder penyimpan foto dan belum menyediakan foto untuk ditampilkan.
Kelima, buatlah folder bernama photo lalu isi folder tersebut dengan gambar berikut
  • unduh dan simpan dengan nama isyana.jpg
  • unduh dan simpan dengan nama raisa.jpg
Penamaan foto atau gambar yang kalian unduh berkaitan dengan value dari table vote_opsi didalam database, tepatnya di field “thumbnail”. jadi pastikan nama foto dengan value pada field “thumbnail” ada kesesuaian.
Keenam, buat file vote-count.php untuk menambahkan vote baru kedalam database. berikut kodenya :
<?php
require_once 'config.php';
if (isset($_GET['nomer']) && ! empty($_GET['nomer'])) {
$nomerVote = $_GET['nomer'];
// sql untuk menambahkan vote kedatabase
$sql = "INSERT INTO voting (id_opsi, date_create) VALUES ('$nomerVote', NOW()) ";
$insert = $connect->query($sql);
if ($insert) {
echo "<script>alert('Terima Kasih atas Vote nya'); window.location.href='index.php';</script>";
exit();
} else {
die('Oops!! Internal Error');
}
}
view rawvote-count.php hosted with ❤ by GitHub
kemudian buka file index.php dan tambahkan kode berikut tepat dibawah kode require 'config.php';

Nah sampai disini kita sudah bisa menyumbangkan ‘vote’ kita, namun kita belum bisa melihat persentase dari kedua opsi. oleh karenanya kita akan lanjut kelangkat tujuh.
Ketujuh, buat file baru dengan nama functions.php untuk membuat fungsi penghitungan hasil vote sesuai dengan rumus di atas:
<?php
/**
* getPolling adalah fungsi untuk mengambil dan menambilkan
* poling atau hasil vote yang diperoleh, sekaligus di convert
* kedalam persen
*
* @param int $id id_opsi
* @return string
*/
function getPolling($id)
{
global $connect;
// sql untuk mengambil semua data;
$sql = "SELECT * FROM voting";
$query = $connect->query($sql);
// total seluruh voting
$totalVote = $query->num_rows;
$query->close();
// sql untuk mengabil data yang spesifik (sesuai $id)
$sqlSpesifik = "SELECT * FROM voting WHERE id_opsi = '$id'";
$querySpesifik = $connect->query($sqlSpesifik);
// total voting dari $id (satu opsi)
$voteOpsi = $querySpesifik->num_rows;
$querySpesifik->close();
$hitungVote = '';
// $totalVote Tidak boleh 0;
if ($totalVote) {
// round() adalah fungsi pembulatan
$hitungVote = round( ($voteOpsi/$totalVote) * 100 );
}
return empty($hitungVote) ? '0%' : $hitungVote . '%';
}
view rawfunctions.php hosted with ❤ by GitHub
kemudian buka file index.php tambahkan kode berikut tepat dibawah kode require 'vote-count.php';

masih di file index.php, cari kode berikut :
lalu ubah dengan kode berikut :
nah sekarang kita sudah bisa melihat berapa persentase dari masing-masing opsi. untuk mempercantik kita akan menambahkan css.
Kedelapan, buat file style.css dan isi dengan kode berikut :
body {
/*text-align: center;*/
}
.vote-container {
width: 600px;
margin:0 auto;
text-align: center;
}
.vote-container table {
width: 100%;
}
.vote-container table th,
.vote-container table td {
padding:10px;
text-align: center;
}
view rawstyle.css hosted with ❤ by GitHub
Baik sekian tutorial poling system dari ONPHPID,
source code bisa kalian ambil di sini.
Sekian dan selamat belajar pemrograman php.

Komentar

  1. Membuat Aplikasi Polling Sederhana Dengan Php Mysqli >>>>> Download Now

    >>>>> Download Full

    Membuat Aplikasi Polling Sederhana Dengan Php Mysqli >>>>> Download LINK

    >>>>> Download Now

    Membuat Aplikasi Polling Sederhana Dengan Php Mysqli >>>>> Download Full

    >>>>> Download LINK ai

    BalasHapus

Posting Komentar

Postingan populer dari blog ini

Login, Session, dan Logout

Cara Membuat File Setup / Installer Aplikasi Sendiri dengan Inno Setup Compiler