Membuat Form Input Quiz dengan PHP dan MySQL

Contoh Kasus:

Saya ingin membuat Form Input Quiz seperti gambar dibawah ini:

Lalu setelah semua data diisini, kemudian saya menekan tombol Simpan maka data tersebut akan disimpan ke dalam tabel quiz.

Pertanyaan:

Bagaimana membuatnya … ?

Jawaban:

Ikutilah langkah-langkah dibawah ini:

Pembuatan Tabel Quiz

Buatlah tabel quiz dengan struktur seperti terlihat pada gambar dibawah ini:

Catatan:

Untuk pembuatan tabel diatas kamu bisa menggunakan phpMyAdmin selengkapnya kamu bisa baca artikel ini.

Pembuatan Form Input Quiz

Buatlah satu form HTML bernama form_input_quiz.html dengan isi seperti dibawah ini:

<table id=”add_quiz”> 

<tr >

<form action=”insert_quiz.php” method=”post” name=”add_quiz”>

<td  width=”67″>Pertanyaan</td>

<td width=”269″><textarea name=”question” ></textarea></td>

</tr>

<tr>

<td >Pilihan 1 </td>

<td><input type=”text” name=”pil1″ ></td>

</tr>

<tr>

<td >Pilihan 2 </td>

<td><input type=”text” name=”pil2″ ></td>

</tr>

<tr>

<td >Pilihan 3 </td>

<td><input type=”text” name=”pil3″ ></td>

</tr>

<tr>

<td >Pilihan 4 </td>

<td><input type=”text” name=”pil4″ ></td>

</tr>

<tr>

<td >Jawaban</td>

<td ><input type=”text” name=”answer” ></td>

</tr>

<tr>

<td >Bobot </td>

<td>

<select name=”bobot”>

<option value=”10″>10</option>

<option value=”20″>20</option>

<option value=”30″>30</option>

<option value=”40″>40</option>

<option value=”50″>50</option>

</select>

</td>

</tr>

<tr>

<td colspan=”2″>

<div align=”center”>      <input type=”submit” name=”Submit” value=”Simpan”>

</form>

</div>

</td>

</tr>

</table>

Keterangan:

  • <form action=”insert_quiz.php” method=”post” name=”add_quiz”>, Kode ini berarti form mengirimkan datanya ke file insert_quiz.php menggunakan metode POST.

Catatan:

Untuk membuat Form diatas maka saya sarankan kamu baca artikel membuat tabel dalam Dreamweaver dan membuat elemen form dengan Dreamweaver.

Membuat File Koneksi dari PHP ke MySQL

Buatlah satu file PHP bernama koneksi_mysql.php dengan isi seperti dibawah ini:

<?php 

$server=”localhost”;

$user=”root”;

$password=””;

$database=”quiz”;

function koneksi_mysql(){

global $server, $user, $password, $database;

$koneksi_mysql=mysql_connect($server, $user, $password);

 

if(!$koneksi_mysql){

die(‘Koneksi ke Server MySQL gagal dikarenakan: ‘ . mysql_error());

}

$pilih_database=mysql_select_db($database, $koneksi_mysql);

if(!$pilih_database){

die(‘Pemilihan database gagal dilakukan karena: ‘ . mysql_error());

}

}

?>

Keterangan:

  • global $server, $user, $password, $database, Kode ini berarti saya membuat variabel $server, $user, $password dan $database bersifat global sehingga kita dapat mengambil nilainya dari dalam fungsi.
  • Untuk perintah mysql_connect() maka kamu bisa lihat detailnya disini.
  • Untuk perintah mysql_select_db() maka kamu bisa lihat detailnya disini.

Membuat File Penerima Data

Buatlah satu file PHP bernama simpan_kota.php dengan isi seperti kode dibawah ini:

<?php 

include_once”koneksi_mysql.php”;

koneksi_mysql();

$question=$_POST[‘question’];

$pil1=$_POST[‘pil1’];

$pil2=$_POST[‘pil2’];

$pil3=$_POST[‘pil3’];

$pil4=$_POST[‘pil4’];

$answer=$_POST[‘answer’];

$bobot=$_POST[‘bobot’];

$sql=”select * from fahmi_soal”;

$query=mysql_query($sql);
$baris=mysql_num_rows($query);

$no=$baris+1;

$q=”q”.$no;

$sql=”insert into fahmi_soal values(‘$q’,’$question’,’$pil1′,’$pil2′,’$pil3′,’$pil4′,’$bobot’,’$answer’,’$tgl’)”;

$eksekusi_query=mysql_query($sql);

if(!$eksekusi_query){

die(“Query kamu salah dikarenakan:”. mysql_error());

}

?>

Keterangan:

  • include_once”koneksi_mysql.php”; Kode ini berarti saya memanggil file koneksi_mysql.php agar saya bisa menggunakan kode dalam file tersebut.
  • $question=$_POST[‘question’], kode ini berarti saya menerima data  pertanyaan yang dikirim dari elemen form yang bernama ‘question’ yaitu name=”question”.
  • Untuk Syntax INSERT INTO maka kamu bisa baca artikelnya disini.

 

 

Jika tutorial ini bermanfaat silahkan katakan ‘Terima Kasih Fahmi Basya Kartapura‘.

You may also like...