• Tidak ada hasil yang ditemukan

Lampiran 1. Kode Program

N/A
N/A
Protected

Academic year: 2022

Membagikan "Lampiran 1. Kode Program"

Copied!
8
0
0

Teks penuh

(1)

Lampiran 1. Kode Program

Kode Program 1. Proses Mengambil Soal

1. $id_judul_soal = $_GET['isiMateriSoal'];

2. include_once "modal/inputMateri.php";

3. $judulSoal = mysqli_query($conn, "SELECT * FROM tbl_judul_soal WHERE id_judul_soal='$id_judul_soal' ");

4. $rowJudulSoal = mysqli_fetch_array($judulSoal);

5. if (!empty($rowJudulSoal['materi'])) { 6. $name = "Edit Materi";

7. } else {

$name = "Input Materi";

}

8. if (isset($_POST['inputMateri'])) {

9. $id_judul_soal = $_POST['id_judul_soal'];

10. $materi = $_POST['materi'];

11. $inputMateri = mysqli_query($conn, "UPDATE tbl_judul_soal SET materi='$materi' WHERE id_judul_soal='$id_judul_soal' ");

12. if ($inputMateri) {

13. $_SESSION['pesan'] = "<div class='alert alert-success' role='alert'>

Berhasil Menginput Materi $rowJudulSoal[judul_soal] !!

</div>";

14. } else {

$_SESSION['pesan'] = '<div class="alert alert-danger" role="alert">

<span class="iconify" data-icon="ic:outline-do-not-disturb-off" data-inline="false"></span>

Terjadi Kesalahan !!

</div>';

15. } 16. } else {

17. $_SESSION['pesan'] = "";

18. }

Kode Program 1 berfungsi untuk menampilkan data soal. Kode program pada baris 1 digunakan untuk mendapatkan value dari ‘IsiMateriSoal’ method get yang dikirimkan dari halaman sebelumnya. Kode program baris 2 digunakan untuk memanggil file InputMateri.php dari folder modal. Kode program pada baris 3 digunakan untuk melakukan

(2)

query dari database untuk mendapatkan semua data. Kode program pada baris 4 digunakan untuk menyimpan hasil query ke dalam variable $rowJudulSoal lalu di fetch array, fetch array = mengembalikan nilai data bisa berupa nama atau berupa aray [0], [1], [2], dan seterusnya. Kode program pada baris 5 digunakan untuk memulai percabangan jika materi tidak kosong karena ada tanda !. Kode program pada baris 6 digunakan untuk perintah yang dieksekusi jika materi tidak kosong.

Kode program pada baris 7 digunakan untuk perintah yang dieksekusi jika materi kosong. Kode program pada baris 8 digunakan jika tombol dengan name inputMateri di klik maka akan masuk ke if. Kode program pada baris 9 digunakan untuk mendapatkan value dari form dengan name = id_judul_soal. Kode program 10 digunakan untuk mendapatkan value dari form dengan name = materi. Kode program pada baris 11 digunakan untuk query update ke tabel tbl_judul_soal, untuk materi berisikan value dari variabel $materi, dimana id judul soal adalah value dari variabel $id_judul_soal. Kode program pada baris 12 digunakan untuk percabangan berupa return boolean true/false. Jika query $inputMateri berupa true atau benar atau sukses, maka akan masuk ke if. Kode program pada baris 13 digunakan untuk melempar pesan berupa tag html dengan session jika query $inputMateri benar. Kode program pada baris 14 digunakan untuk melempar pesan berupa tag html dengan session jika query $inputMateri salah. Kode program pada baris 15-18 melempar pesan berupa nilai kosong dengan session, jika tombol dengan nama inputMateri tidak diklik atau tidak ada action.

Kode Program 2. Jawab Soal Pada Siswa

1. $id_judul_soal = $_GET['jawabSoal'];

2. $judulSoal = mysqli_query($conn, "SELECT * FROM tbl_judul_soal WHERE kelas='$rowSiswa[kelas]' AND id_judul_soal='$id_judul_soal' ");

3. $rowJudulSoal = mysqli_fetch_array($judulSoal);

4. $waktu = $rowJudulSoal['waktu'];

$telah_berlalu = 0;

$temp_waktu = ($waktu * 60) - $telah_berlalu;

$temp_menit = (int)($temp_waktu / 60);

$temp_detik = $temp_waktu % 60;

5. if ($temp_menit < 60) {

$jam = 0;

(3)

$menit = $temp_menit;

$detik = $temp_detik; } 6. else {

$jam = (int)($temp_menit / 60);

$menit = $temp_menit % 60;

$detik = $temp_detik;

}

Kode Program 2 berfungsi untuk mengambil data soal yang akan dijawab oleh siswa. Kode program pada baris 1 digunakan untuk mendapatkan value dari ‘JawabSoal’

method get yang dikirimkan dari halaman sebelumnya. Kode program pada baris 2 digunakan untuk melakukan query dari database untuk mendapatkan semua data. Kode program pada baris 3 digunakan untuk menyimpan hasil query ke dalam variabel

$rowJudulSoal lalu di fetch array, fetch array = mengembalikan nilai data bisa berupa nama atau berupa array [0], [1], [2], dan seterusnya. Kode program pada baris 4-6 digunakan untuk mengatur waktu pada saat mengerjakan soal.

Kode Program 3. Ulasan Nilai Pada Siswa

1. $cekMenjawabEssay = mysqli_query($conn, "SELECT * FROM tbl_nilai_essay WHERE nisn='$_SESSION[nisn]' AND id_judul_soal='$id_judul_soal' ");

2. if (mysqli_num_rows($cekMenjawabEssay) > 0) {

3. $nilaiBenar = mysqli_query($conn, "SELECT * FROM tbl_nilai_essay WHERE nisn='$_SESSION[nisn]' AND id_judul_soal='$id_judul_soal' AND nilai='10' ");

4. $nilaiSalah = mysqli_query($conn, "SELECT * FROM tbl_nilai_essay WHERE nisn='$_SESSION[nisn]' AND id_judul_soal='$id_judul_soal' AND nilai='0' ");

5. $ygBenar = mysqli_num_rows($nilaiBenar);

6. $ygSalah = mysqli_num_rows($nilaiSalah);

7. $rataEssay = 100 / $jumlahSoalEssay * $ygBenar;

8. } else {

$ygBenar = 0;

$ygSalah = 0;

$rataEssay = 0;

}

9. if ($rataEssay == 0) {

(4)

$nilaiRata2 = $nilaiChoise / 2;

$nilai = round($nilaiRata2);

} 10. else {

$nilaiRata2 = $nilaiChoise + $rataEssay;

$dibagi = $nilaiRata2 / 2;

$nilai = round($dibagi);

}

Kode Program 3 berfungsi untuk menilai soal essay siswa. Kode program pada baris 1 digunakan untuk mengambil semua data yang ada di database. Kode program pada baris 2-4 digunakan untuk memberikan nilai jika jawaban benar diberi nilai 10 dan jika jawaban salah diberi nilai 0. Kode program pada baris 5-6 total data dari query nilai benar dan nilai salah. Kode program pada baris 7-10 digunakan untuk melakukan perhitungan nilai essay dan menghitung nilai rata-rata.

Kode Program 4. Jawaban Essay

1. $jawabanEssay = mysqli_query($conn, "SELECT * FROM tbl_jawaban_essay ");

2. if (isset($_POST['periksaSoalEssay'])) { 3. $jumlahSoal = $_POST['jumlahSoal'];

4. $pilihan = $_POST["pilihan"];

5. $id_judul_soal = $_POST['id_judul_soal'];

6. $nisn = $_POST['nisn'];

7. $tambahSatu = $jumlahSoal + 1;

8. for ($x = 1; $x < $tambahSatu; $x++) {

$inputNilaiEssay = mysqli_query($conn, "INSERT INTO tbl_nilai_essay (soal,nilai,id_judul_soal,nisn)

VALUES('$x','$pilihan[$x]','$id_judul_soal','$nisn')");

$ubahStatus = mysqli_query($conn, "UPDATE tbl_jawaban_essay SET status='sudah diperiksa' WHERE nisn='$nisn' AND id_judul_soal='$id_judul_soal' ");

}

Kode Program 4 berfungsi untuk memeriksa soal essay yang telah dikerjakan oleh siswa. Kode program pada baris 1 digunakan untuk mengambil data jawaban essay dari

(5)

database. Kode program pad baris 2-6 digunakan untuk mengambil data jumlah soal, pilihan, id judul soal, dan nisn. Kode program pada baris 7 digunakan untuk menjumlah soal ditambah 1. Kode program pada baris 8 berfungsi untuk membuat perulangan, jika sudah diperiksa dan diberi nilai maka ubah di tbl_jawaban_essay menjadi sudah diperiksa.

Kode Program 5. Feedback

1. $judulSoal = mysqli_query($conn, "SELECT * FROM tbl_judul_soal WHERE nip='$_SESSION[nip]' ");

2. if (isset($_POST['nisn'])) { 3. $nisn = $_POST['nisn'];

4. $resultSiswa = mysqli_query($conn, "SELECT * FROM tbl_siswa WHERE nisn='$nisn' ");

5. $rowResult = mysqli_fetch_array($resultSiswa);

6. $result = $rowResult['nama'];

7. } 8. else { 9. $result = "";

10. }

Kode Program 5 berfungsi untuk memberikan feedback hasil jawaban soal essay kepada setiap siswa. Kode program pada baris 1 digunakan untuk mengambil data dari database. Kode program pada baris 2 digunakan untuk mendapatkan value dari form dengam name = nisn. Kode program pada baris 3 digunakan untuk mendapatkan semua data Berdasarkan nisn. Kode program pada baris 4 digunakan untuk menyimpan hasil query yang ditampung dalam variabel $rowResult. Kode program pada baris 5-10 digunakan untuk menaruh hasil fetch array dari database ke dalam variable $result.

(6)

Lampiran 2. Tabel Database

Tabel 1. Tabel Registrasi Akun Guru

Entitas Tipe Data Deskripsi

Id_guru Int Primary Key

nip Int Nip Guru

Nama Char Nama guru

waliKelas Int Sebagai wali kelas

universitas Text Asal universitas

password Char Kata sandi akun guru

Tabel 2. Tabel Biodata Siswa

Entitas Tipe Data Deskripsi

Id_siswa Int Primary Key

Nisn Char Nisn siswa

Nama Char Nama siswa

Kelas Int Kelas siswa

tanggalLahir Date Tanggal lahhir siswa

password Char Kata sandi akun siswa

Ortu Char Nama orang tua

hpOrtu Char No Hp orang tua

Alamat Text Alamat tinggal siswa

Jk Enum Jenis kelamin siswa

Foto Char Foto siswa

Tabel 3. Tabel Tambah Materi

Entitas Tipe Data Deskripsi

Id_materi Int Primary Key

Id_judul soal Int Foreign Key

Listmateri Text Materi-materi yang

(7)

dibagikan

Tanggalterbit Date Waktu terbit materi

Judulmateri Char Judul materi

Tabel 4. Tabel Kunci Jawaban Soal

Entitas Tipe Data Deskripsi

Id_soal Int Primary Key

Soal Text Nama soal

Knc_jawaban Varchar Kunci jawaban soal

Id_judul_soal Int Foreign key

Aktif Enum Status

Tabel 5. Tabel Nilai

Entitas Tipe Data Deskripsi

Id_jawaban Int Primary Key

Nisn Char Nisn siswa

Benar Int Kunci jawaban soal

Salah Int Kunci jawaban soal

Kosong Int Status

Nilai Char Nilai siswa

Id_judul_Soal Int Foreign Key

jenisSoal Enum Jenis soal yang dikerjakan

(8)

Lampiran 3. Sertifikat HKI

Referensi

Dokumen terkait

&#34;We consider it one of our more vital and important sponsorships, one that helps ensure that the industry’s future leaders have the tools to succeed.&#34; Currently, both Tyler

Pelbagai konflik yang tercitra dalam teks Ayam Jantan Ayam Betina ini adalah hasil kegagalan mengawal diri hayawani sekali gus berlaku penolakan terhadap nilai

Analisis Pengaruh Free Cash Flow, Leverage, Profitability, Risk, Growth Dan Firm Size Terhadap Dividend Payout Ratio (Studi Empiris Pada Perusahaan Manufaktur Yang Listing Di

Bobot biomassa tanaman padi yang diberi A. Fakta ini berkaitan dengan kemampuan tanah sawah menl'ediakan hara P yang cukup besar pada kedua perlakuan tersebut.

Menurut ibu Susi bagaimana pelaksaan/ penyelenggaraan kebijakan yang dilalcukan oleh pemerintah kota Pangkal Pinang dalam hal kepariwisataan apakah dapat

Dengan melakukan wawancara kepada narasumber terpercaya di STMIK Bina Sarana Global (Ketua STMIK Global dan HRD) untuk mendapatkan data yang akurat, informasi yang

(b) Kewajiban SAP dalam Pasal 8.1 tidak akan berlaku jika klaim yang disebabkan oleh (i) pelanggaran terhadap Pasal 2 oleh Pelanggan, (ii) penggunaan Layanan Cloud

Perealisasian sebuah Coupled-Line Directional Coupler untuk pengukuran parameter- parameter yang terdapat pada antena WiMAX menggunakan bahan substrat yang memiliki spesifikasi