script php membuat soal pilihan ganda

share

  • script php membuat soal pilihan ganda

    Script PHP Membuat Soal Pilihan Ganda


    Cara script PHP membuat soal pilihan ganda yang digunakan untuk ujian berbasis web merupakan tutorial cara input daftar soal beserta kunci jawaban dan langsung sekaligus menampilkan hasil nilai sesuai dengan database mysql.
  • script php membuat soal pilihan ganda
    Service
    1. Complete Website
    2. Only web script
    3. Web modification
    4. Application program
    5. Free web template
    6. Free application
    7. Basic SEO
    8. Article request
    9. Tutorial programing
  • script php membuat soal pilihan ganda
    MOTO
    "Kepuasan Pelanggan adalah Prioritas kami, Sebagai Pemicu Semangat Dalam Memberikan Pelayanan Terbaik".
  • script php membuat soal pilihan ganda Teknologi dan Bahasa
    PHP-5, HTML-5, CSS3, SQL Server, MySQL Database, Access Database, Java, JavaScript, dan Visual Basic.
  • script php membuat soal pilihan ganda
    VISI
    "Menjadi penyedia layanan yang terpercaya dan maju dalam dunia Teknologi Informasi."

Script PHP Membuat Soal Pilihan Ganda

Script PHP membuat soal pilihan ganda yang digunakan untuk ujian berbasis web merupakan tutorial cara input daftar soal beserta kunci jawaban dan langsung sekaligus menampilkan hasil nilai sesuai dengan database mysql. Jadi yang pertama adalah membuat soal pilihan ganda dengan php mysql terlebih dulu sehingga kumpulan soal ujian dan kunci jawabannya tersimpan di dalam database. Kemudian teknis mengikuti ujian nya adalah peserta memilih jawaban dalam bentuk pilihan ganda dari soal yang tampil pada halaman browser, setelah selesai mengerjakan dan klik submit maka jawaban akan dicocokkan dengan kunci jawaban yang sudah tersedia. Script php untuk membuat soal pilihan ganda ini juga dilengkapi dengan nilai hasil ujian secara langsung setelah jawaban dikirim oleh peserta.

Tutorial cara script php membuat soal pilihan ganda ini kami lakukan pada sistem operasi Windows 10 menggunakan web server XAMPP ver 7.3 dengan mysql ekstensi database mysqli. Untuk mengikuti tutorial ini pastikan komputer anda telah terinstall web server XAMPP tersebut dan menggunakan bahasa pemrograman php 7. Oke, sepertinya pembahasan tutorial cara membuat soal pilihan ganda dengan php dan database mysql sehingga dapat digunakan untuk ujian perserta berbasis web secara online dapat segera kita mulai.

Script PHP Membuat Soal Pilihan Ganda



membuat soal dengan php

Berikut langkah-langkah tutorial cara script php membuat soal pilihan ganda online berbasis web lengkap dengan kunci jawaban sesuai database dan langsung menampilkan hasil nilai ujian yang dikirim oleh peserta.

1. Membuat Folder Direktori Tutorial.

Silahkan membuat nama folder terserah Anda, karena akan memproses kode php sebaiknya terletak di dalam direktori xampp htdocs atau sesuaikan dengan web server yang digunakan. Contoh nama folder yang kami buat adalah "tutorial", sehingga url folder menjadi c:\xampp\htdocs\tutorial\. Semua file php dan assets lain harus tersimpan di dalam folder direktori ini.

2. Membuat Rancangan Database.

Dalam tutorial cara script php membuat soal pilihan ganda ini kita membutuhkan database mysql dan tabel yaitu tabel soal yang berfungsi untuk menampung data soal ujian dan kunci jawaban. Kemudian tabel tersebut juga didesain memiliki atribut untuk menyimpan direktori image, hal ini bertujuan agar dapat membuat soal yang memerlukan gambar. Dan selain menyimpan jawaban dalam bentuk pilihan ganda, pada tabel ini juga sekaligus menyimpan kunci jawaban.

Untuk lebih jelasnya, perhatikan gambar di bawah ini.

script php membuat soal pilihan ganda

Sebagaimana desain database seperti di atas, tbl_soal soal memiliki atribut secara urut yaitu id_soal sebagai primary key dan AI, soal, a, b, c, d, kunci, gambar, tanggal, dan aktif. Agar tutorial cara membuat soal pilihan ganda dengan php ini dapat teman-teman ikuti dengan lancar, silahkan buat tabel database dengan desain yang sama seperti di atas, atau copas saja kode sql di bawah ini.

-- phpMyAdmin SQL Dump
-- version 4.9.0.1
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Generation Time: Oct 06, 2020 at 09:13 AM
-- Server version: 10.4.6-MariaDB
-- PHP Version: 7.3.9

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
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 utf8mb4 */;

--
-- Database: `db_tutorial`
--

-- --------------------------------------------------------

--
-- Table structure for table `tbl_soal`
--

CREATE TABLE `tbl_soal` (
  `id_soal` int(11) NOT NULL,
  `soal` text NOT NULL,
  `a` varchar(50) NOT NULL,
  `b` varchar(50) NOT NULL,
  `c` varchar(50) NOT NULL,
  `d` varchar(50) NOT NULL,
  `kunci` varchar(50) NOT NULL,
  `gambar` varchar(100) NOT NULL,
  `tanggal` date NOT NULL,
  `aktif` enum('Y','N') NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `tbl_soal`
--

INSERT INTO `tbl_soal` (`id_soal`, `soal`, `a`, `b`, `c`, `d`, `kunci`, `gambar`, `tanggal`, `aktif`) VALUES
(1, 'HTML merupakan singkatan dari ....', 'Home Tool  Markup Language', 'Hyperlinks and Text Markup Language', 'Hyper Text Markup Language', 'Hyper Tool Markup Language', 'c', '', '2018-07-02', 'N'),
(2, 'Siapa yang mengembangkan Sejarah Web pertama kali?', 'Ruben', 'Thomas Alpha Edison', 'Tim Berners-Lee', 'Albert Einstein', 'c', '', '2018-07-02', 'Y'),
(3, 'Profesi dalam pengembangan web, kecuali...', 'Web Developer', 'Web Programer', 'Web Administrator', 'Web Browser', 'd', '', '2018-07-18', 'Y'),
(4, 'Browser bawaan OS Windows adalah ?', 'Opera mini', 'Mozila', 'Chrome', 'Internet Explorer', 'd', '', '2018-07-02', 'Y'),
(5, 'Apa kepanjangan WWW ?', 'World Wide Web', 'Wide World Web', 'Web Wide World', 'World Web Wide', 'a', '', '2018-07-02', 'N'),
(6, 'Multimedia adalah ?', 'Teknologi yg memadukan gambar,video dan suara.', 'teknologi yg memadukan Daftar', 'teknologi yg memadukan Baris dan kolom', 'Teknologi yg memadukan Kelistrikan', 'a', '', '2018-07-02', 'N'),
(7, 'Menurut Anda, di bawah ini adalah gambar?', 'Avatar', 'Pelangi', 'Singa Laut', 'Bulan', 'a', 'avatar-1.png', '2020-10-04', 'Y');

--
-- Indexes for dumped tables
--

--
-- Indexes for table `tbl_soal`
--
ALTER TABLE `tbl_soal`
  ADD PRIMARY KEY (`id_soal`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `tbl_soal`
--
ALTER TABLE `tbl_soal`
  MODIFY `id_soal` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=8;
COMMIT;

/*!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 */;

3. Menampilkan Ujian Soal Pilihan Ganda.

Pada tutorial script php membuat soal pilihan ganda online berbasis web ini, data soal ujian yang ada di database ditampilkan terlebih dulu kemudian baru dikerjakan oleh peserta. Oleh karena itu, pada langkah ini kita akan menampilkan seluruh soal aktif yang ada di database berikut dengan pilihan ganda dalam bentuk radio button. Kemudian ada tombol submit untuk mengirimkan jawaban, tampilan ini juga sekaligus berfungsi sebagai homepage atau halaman index.

Simpan sebagai index.php

<html>
<head>
	<title>Tutorial Membuat Soal Pilihan Ganda dengan Script PHP</title>
</head>
<body>
	<h3>KERJAKAN SOAL PILIHAN GANDA DI BAWAH INI!</h3>
	<table border="0">
		<tbody>
			<?php
				include "koneksi.php";
				$query	=mysqli_query($conn, "SELECT * FROM tbl_soal WHERE aktif='Y' ORDER BY id_soal DESC");
				$jumlah =mysqli_num_rows($query);
				$no = 0;
				while($data = mysqli_fetch_array($query)){
				$no++
			?>
			<form action="jawab.php" method="POST">
				<input type="hidden" name="id[]" value="<?php echo $data['id_soal']; ?>">
				<input type="hidden" name="jumlah" value="<?php echo $jumlah; ?>">
				<tr>
					<td><?php echo $no?>.</td>
					<td><?php echo $data['soal'];?></td>
				</tr>
				<?php
					if(!empty($data['gambar'])){
						echo "<tr><td></td><td><img src='assets/img/$data[gambar]' width='80' height='80'></td></tr>";
					}
				?>
				<tr>
					<td></td>
					<td>A. <input name="pilihan[<?php echo $data['id_soal']?>]" type="radio" value="A"><?php echo $data['a'];?></td>
				</tr>
				<tr>
					<td></td>
					<td>B. <input name="pilihan[<?php echo $data['id_soal']?>]" type="radio" value="B"><?php echo $data['b'];?></td>
				</tr>
				<tr>
					<td></td>
					<td>C. <input name="pilihan[<?php echo $data['id_soal']?>]" type="radio" value="C"><?php echo $data['c'];?></td>
				</tr>
				<tr>
					<td></td>
					<td>D. <input name="pilihan[<?php echo $data['id_soal']?>]" type="radio" value="D"><?php echo $data['d'];?></td>
				</tr>
				<?php
				}
				?>
				<tr>
					<td height="40"></td>
					<td>
						<input type="submit" name="submit" value="Jawab" onclick="return confirm('Perhatian! Apakah Anda sudah yakin dengan semua jawaban Anda?')">
						<input type="reset" value="Reset">
					</td>
				</tr>
			</form>
		</tbody>
	</table>
</body>
</html>

Perhatikan script php membuat soal pilihan ganda di atas, baris ke-10 include "koneksi.php" berisi script php untuk membuat koneksi ke database, baris ke-11 adalah query select tabel database yaitu tbl_soal untuk menampilkan soal pilihan ganda aktif. Data soal pilihan ganda aktif ditampilkan dalam array menggunakan perulangan while pada baris ke-14 dan ditampung dalam variabel $data menggunakan fungsi mysqli_fetch_array. Maka untuk menampilkan data cukup dengan memberi nilai atribut pada variabel $data menggunakan echo, misal untuk menampilkan soal pertanyaan maka script nya menjadi <?php echo $data['soal']?> begitu seterusnya untuk atribut yang lain. Perlakuan kusus untuk input pilihan ganda dengan radio button, pastikan input name dengan nama pilihan[], pakai kurung siku sebagai tanda array.

Sampai disini script php membuat soal pilihan ganda selesai pada tahap menampilkan pada halaman browser, selanjutnya adalah melakukan action atau mengirimkan jawaban. Yaitu pada file action jawab.php sebagaimana didefinisikan oleh form action pada baris ke-17 menggunakan method POST, pada file ini seluruh jawaban akan dikoreksi secara otomatis.

Jika file index.php di atas dieksekusi dengan cara akses ke "localhost/tutorial" maka akan menampilkan daftar soal ujian, sebagaimana gambar di bawah ini.

script php membuat soal pilihan ganda

Jika tombol "Jawab" diklik maka akan langsung mengkoreksi jawaban pilihan ganda yang dipilih, sekaligus menampilkan informasi berapa jawaban benar dan salah, berapa soal tidak terjawab, serta nilai skor akhir.

4. Membuat Script PHP Action Koreksi Jawaban

Script PHP ini akan tereksekusi jika tombol "jawab" diklik, yang dilakukan pada script ini adalah eksekusi instruksi untuk mencocokkan jawaban yang dikirim dengan kunci jawaban di database, dan beberapa eksekusi turunan lainnya. Dan inti dari pembahasan tutorial kita kali ini tentang cara script php membuat soal pilihan ganda adalah pada bagian ini, dimana intstruksi dan informasi ditampilkan pada script ini.

Simpan sebagai jawab.php

<?php
	include "koneksi.php";
	if(isset($_POST['submit'])){
		if(empty($_POST['pilihan'])){
		?>
			<script language="JavaScript">
                alert('Oops! Serius. Anda tidak mengerjakan soal apapun ...');
                document.location='./';
            </script>
		<?php
		}
		
		$pilihan	=$_POST["pilihan"];
		$id_soal	=$_POST["id"];
		$jumlah		=$_POST["jumlah"];
		
		$score	=0;
		$benar	=0;
		$salah	=0;
		$kosong	=0;

		for($i=0;$i<$jumlah;$i++){
			$nomor	=$id_soal[$i];
			
			// jika peserta tidak memilih jawaban
			if(empty($pilihan[$nomor])){
				$kosong++;
			}
			// jika memilih
			else {
				$jawaban	=$pilihan[$nomor];

				// cocokan kunci jawaban dengan database
				$query	=mysqli_query($conn, "SELECT * FROM tbl_soal WHERE id_soal='$nomor' AND kunci='$jawaban'");
				$cek	=mysqli_num_rows($query);
				
				// jika jawaban benar (cocok dengan database)
				if($cek){
					$benar++;
				}
				// jika jawaban salah (tidak cocok dengan database)
				else {
					$salah++;
				}
			}
			/*
				----------
				Nilai 100
				----------
				Hasil = 100 / jumlah soal * Jawaban Benar
			*/
			// script php membuat soal pilihan ganda
			// hitung skor
			$hitung =mysqli_query($conn, "SELECT * FROM tbl_soal WHERE aktif='Y'");
			$jumlah_soal	=mysqli_num_rows($hitung);
			$score	=100 / $jumlah_soal * $benar;
			$hasil	=number_format($score,2);
		}
	}

	// Tampilkan Hasil Ujian Soal Pilihan Ganda
	echo"
	<table border='0'>
		<tbody>
			<tr>
				<td colspan='4'><h4>Nilai Ujian Anda</h4></td>
			</tr>
			<tr>
				<td width='80'><u>Benar ✔</u></td>
				<td width='80'><u>Salah ✕</u></td>
				<td width='140'><u>Tidak Terjawab !</u></td>
				<td width='100'><u>Skor Akhir #</u></td>
			</tr>
			<tr>
				<td align='center'>$benar</td>
				<td align='center'>$salah</td>
				<td align='center'>$kosong</td>
				<td align='right'><b>$hasil</b></td>
			</tr>
		</tbody>
	</table>
	";
	echo "<br /><a href='./'><< kembali</a>";
?>

Perhatikan juga dengan fokus script php membuat soal pilihan ganda di atas, baris ke-13 script tersebut menampung nilai "pilihan" menggunakan $_POST['pilihan'] yang didapatkan dari setiap soal yang dikerjakan dengan cara pilihan ganda dalam bentuk radio button. Kemudian semua jawaban akan dikoreksi pada script baris ke-34 yaitu SELECT * FROM tbl_soal WHERE id_soal='$nomor' AND kunci='$jawaban', artinya jika jawaban yang dipilih sesuai dengan id_soal dan kunci jawaban maka hasilnya "benar". Jika tidak cocok maka hasilnya salah, jika variabel pilihan tidak memuat nilai maka dianggap tidak menjawab, begitu seterusnya hingga script ini melakukan perhitungan skor. Lebih detailnya silahkan perhatikan script php jawab di atas, gunakan logika dan kondisi serta perhatikan juga note yang kami tuliskan.

Jika script php membuat soal pilihan ganda "jawab.php" di atas dieksekusi maka akan menampilkan informasi berapa jumlah jawaban benar dan jawaban salah, berapa soal tidak terjawab dan nilai skor akhir, sebagaimana pada gambar di bawah ini.

script php membuat soal pilihan ganda

Sampai disini tutorial cara membuat soal pilihan ganda dengan php mysql telah selesai, dan dipastikan script ini dapat menampilkan seluruh daftar soal serta langsung mengkoreksi hasil jawaban peserta ujian. Tentu saja script ini belum sepenuhnya dapat diimplementasikan tanpa customisasi, silahkan teman-teman kembangkan lagi, dan terapkan langsung ke dalam sebuah aplikasi berbasis web, sejenis aplikasi ujian online, CAT, CBT, dan lain sebagainya.

Tutorial Script PHP Membuat Soal Pilihan Ganda

Download Script PHP

Sekian penjelasan tentang bagaimana cara script php membuat soal pilihan ganda berbasis web untuk peserta ujian online lengkap dengan kunci jawaban sesuai database dan nilai skor. Untuk mendapatkan source code atau script Anda dapat langsung mendownload melalui link di atas, jika link download tidak aktif atau error mohon hubungi kami melalui SMS atau email atau melalui form komentar dan obrolan. Semoga dapat membantu.

Baca juga :


Script PHP Membuat Soal Pilihan Ganda

Tags: membuat soal pilihan ganda dengan php mysql, membuat soal pilihan ganda di php, soal pilihan ganda dengan php, pilihan ganda php, script php membuat soal pilihan ganda


Reliable

script php membuat soal pilihan ganda

Advertise

jasa pasang iklan murah

Payment & Donation

script php membuat soal pilihan ganda

Rekening BCA : 343 1156 006

a/n : Andi Hatmoko

Rekening MANDIRI : 13300 11921 079

a/n : Andi Hatmoko

script php membuat soal pilihan ganda

Account :

andihatmoko@gmail.com

Live Chat

Evan2021-06-12, 02:48 am
Harga aoftware bkin ektp brp?
parlin2021-06-11, 14:42 pm
berapa harga dan bisa gk di ganti menu sesui dengan kebutuhan untuk aplikasi data pegawai
Retno2021-06-04, 15:13 pm
utk aplikasi arsip dokumen kantor, harganya brp ya pak?
NOFAL2021-06-02, 20:57 pm
hallo, untuk aplikasi penjualan retail brp harganya? ini sistem bisnisnya source code di ksh atau cloud?
Ezi Fitriana2021-05-26, 21:42 pm
mohon info biaya buat aplikasi sistem informasi dan pelayanan online buat Kantor Desa
arif2021-05-26, 04:33 am
Gan aplikasi hrd harga brp?
Sayuti2021-05-25, 15:06 pm
Mau tanya klo Biaya buat Aplikasi Penilaian Kinerja Atau SKP brp ya?
Farah Ghaida2021-05-20, 15:13 pm
maaf pa sy mau tanya biaya pembuatan aplikasi data kepegawaian
Rachma2021-05-08, 19:26 pm
Untuk program aplikasi arsip dokumen biayanya berapa ya? dan apakah ada pembatasan maksimal berapa kb per dokumen?
Donald Amrul2021-05-04, 09:53 am
Mas username member saya apa ya lupa saya coba cek mas
yudhi2021-05-02, 22:26 pm
aplikasi peta hukum tidak bisa demo
zainuddin2021-05-02, 08:07 am
mohon informasi harga cuti online
zulkifli2021-04-25, 22:45 pm
brapa harganya aplikasi data ke anggotaan sederhana yang bisa lampirkan foto dan di print
iyus Mohamad2021-04-23, 13:04 pm
untuk pembuatan program aplikasi arsip dokumen perkiraan biayanya berapa ya?
irvan2021-04-14, 11:00 am
saya ingin membeIi untuk instansi pemerintah saya, bagaimana pembeIiannya ya
Muhamad Budi2021-04-09, 13:31 pm
saya mau beli aplikasi KGB
Nourma Berdh2021-04-08, 14:28 pm
untuk pembuatan program aplikasi arsip dokumen perkiraan biayanya berapa ya?
Sahlani2021-03-25, 19:33 pm
Saya mau pesan absensi karyawan berbasis web yang sederhana_
Shany2021-03-19, 08:59 am
saya ingin coba demo yang aplikasi inventory berbasis web, harganya berapa ya
Din2021-03-17, 12:24 pm
Mas mau tanya, kalo mau bikin script berikut penjelasannya berapa ya ? biar mengerti kalau mau edit edit
fahmi2021-03-16, 02:16 am
Berapa ya harga aplikasi perjalanan dinas ini?
dela2021-03-10, 10:23 am
ka untuk pembelian aplikasi manajemen anggota berapa budgetnya? dan mendapatkan source codenya tidak ya?
Irwan TB2021-03-04, 08:43 am
Saya Minat dgn aplikasi server _ Sofware input data siswa_ Bagaimana caranya
Reza2021-03-03, 16:42 pm
Mas saya ingin ngambil data dari database, terus data itu dikalkulasi dibutton html saya dan muncul alert hasilnya?
isna2021-02-26, 23:59 pm
saya minat Aplikasi pengajuan judul skripsi online bang_
susanto2021-02-19, 05:06 am
berapa harga aplikasi data mahasiswa?
Juni2021-02-18, 09:55 am
Klo aplikasi koperasi simpan pinjam aplikasinya yg pembayaran tiap minggu ? Berapa badgetnya
Efpu2021-02-18, 07:18 am
Harga untuk aplikasi arsip berapa ?
Adind2021-02-11, 16:39 pm
saya sudah isi sesuai dengan yg ada di database tapi keterangannya username dan password nya salah gmna tuh kak?
Jagad2021-01-22, 20:44 pm
Aplikasi nya mantap gan, yang arsip digital_ source code sangat terstruktur dan berkarakter, jadi mudah dipelajari_ Thx
regista2021-01-20, 10:45 am
Hallo kak info saya ingin download aplikasi rental barang kak
Akbar2021-01-18, 14:36 pm
Terima kasih programnya, sebagai referensi tugas akhir

Post your chat:


Name



Email



Chat



Confirm you are NOT a spammer

 
script php membuat soal pilihan ganda