Langsung ke konten utama

Pembuatan program sederhana scoring perlombaan pencak silat menggunakan php dan mysql sebagai penyimpanan database nya


Scoring atau sistem penilaian pertandingan pencak silat adalah cara untuk menentukan pemenang dalam pertandingan. Dalam pertandingan pencak silat, penilaian dilakukan oleh wasit dan juri yang akan memberikan nilai berdasarkan teknik, kelincahan, kecepatan, keterampilan, ketepatan, dan kekuatan dari setiap peserta.

Penilaian pada pertandingan pencak silat biasanya menggunakan sistem skor, di mana setiap peserta akan diberi skor oleh setiap juri. Kemudian, skor dari setiap juri akan dijumlahkan dan dihitung nilai rata-ratanya untuk menentukan skor akhir peserta. Peserta dengan skor tertinggi akan dinyatakan sebagai pemenang.

Sistem penilaian pada pertandingan pencak silat biasanya mencakup beberapa aspek seperti teknik, strategi, sikap, dan penampilan. Oleh karena itu, wasit dan juri harus memahami dan menguasai teknik dan aturan yang berlaku serta memiliki kemampuan dan keahlian yang mumpuni dalam pencak silat. Hal ini sangat penting agar sistem penilaian dapat dilakukan dengan tepat dan adil. 

Pembuatan Program Sederhana

Untuk pembuatan scoring untuk lomba olahraga pencak silat menggunakan bahasa pemrograman PHP dan MySQL sebagai penyimpanan data:

Membuat Database

Langkah pertama yang harus dilakukan adalah membuat database untuk menyimpan data peserta dan nilai mereka. Untuk ini, dapat menggunakan MySQL dan mengaksesnya melalui PHP.

CREATE DATABASE nama_database;
USE nama_database;

CREATE TABLE peserta (
  id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  nama VARCHAR(30) NOT NULL,
  alamat VARCHAR(50),
  email VARCHAR(50),
  telp VARCHAR(20),
  kategori VARCHAR(30)
);

CREATE TABLE nilai (
  id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  id_peserta INT(6) UNSIGNED,
  juri_1 INT(3),
  juri_2 INT(3),
  juri_3 INT(3),
  FOREIGN KEY (id_peserta) REFERENCES peserta(id)
);

Menambahkan Data Peserta

Setelah membuat tabel, dapat menambahkan data peserta ke dalam tabel 'peserta' dengan mengirimkan query INSERT ke MySQL. Untuk lomba pencak silat, data peserta biasanya mencakup nama, alamat, email, nomor telepon, dan kategori yang diikuti. 

<?php

// Koneksi ke MySQL
$koneksi = mysqli_connect("localhost", "username", "password", "nama_database");

// Tambah data peserta
$sql = "INSERT INTO peserta (nama, alamat, email, telp, kategori) VALUES ('John Doe', 'Jl. Sudirman No. 10', 'john.doe@gmail.com', '081234567890', 'dewasa')";

if (mysqli_query($koneksi, $sql)) {
  echo "Data peserta berhasil ditambahkan";
} else {
  echo "Error: " . $sql . "<br>" . mysqli_error($koneksi);
}

// Tutup koneksi
mysqli_close($koneksi);

Menghitung Nilai Peserta

Setelah data peserta ditambahkan, dapat menghitung nilai mereka berdasarkan teknik dan kekuatan yang ditampilkan selama pertandingan. Untuk lomba pencak silat, biasanya terdapat beberapa teknik yang harus dinilai, seperti jurus, serangan, pertahanan, dan gerakan lainnya. Nilai ini kemudian dapat dimasukkan ke dalam tabel 'nilai' menggunakan query UPDATE.

<?php
// Koneksi ke MySQL
$koneksi = mysqli_connect("localhost", "username", "password", "nama_database");

// Hitung nilai peserta
$id_peserta = 1;
$juri_1 = 8; // teknik jurus
$juri_2 = 9; // teknik serangan
$juri_3 = 7; // teknik pertahanan
$nilai_total = ($juri_1 + $juri_2 + $juri_3) / 3;

// Update tabel nilai
$sql = "UPDATE nilai SET juri_1='$juri_1', juri_2='$juri_2', juri_3='$juri_3' WHERE id_peserta='$id_peserta'";
if (mysqli_query($koneksi, $sql)) {
  echo "Nilai peserta berhasil dihitung";
} else {
  echo "Error: " . $sql . "<br>" . mysqli_error($koneksi);
}

// Tutup koneksi
mysqli_close($koneksi);

Menampilkan Score 

Untuk menampilkan skor dari nilai yang sudah dihitung, dapat menggunakan query SELECT pada tabel 'nilai' untuk mengambil data nilai dari setiap peserta. Berikut contoh kodenya: 

<?php

// Koneksi ke MySQL
$koneksi = mysqli_connect("localhost", "username", "password", "nama_database");

// Ambil data nilai dari tabel nilai
$sql = "SELECT peserta.nama, peserta.kategori, nilai.juri_1, nilai.juri_2, nilai.juri_3, ((nilai.juri_1 + nilai.juri_2 + nilai.juri_3) / 3) as nilai_total FROM peserta INNER JOIN nilai ON peserta.id = nilai.id_peserta";

$result = mysqli_query($koneksi, $sql);

// Tampilkan data nilai
if (mysqli_num_rows($result) > 0) {
  echo "<table><tr><th>Nama Peserta</th><th>Kategori</th><th>Nilai Juri 1</th><th>Nilai Juri 2</th><th>Nilai Juri 3</th><th>Nilai Total</th></tr>";

  while($row = mysqli_fetch_assoc($result)) {

    echo "<tr><td>" . $row["nama"]. "</td><td>" . $row["kategori"]. "</td><td>" . $row["juri_1"]. "</td><td>" . $row["juri_2"]. "</td><td>" . $row["juri_3"]. "</td><td>" . $row["nilai_total"]. "</td></tr>";

  }
  echo "</table>";
} else {
  echo "Tidak ada data nilai";

}

// Tutup koneksi

mysqli_close($koneksi);

Kode di atas akan menampilkan tabel yang berisi data nilai dari setiap peserta, termasuk nilai total mereka yang sudah dihitung menggunakan rumus rata-rata. Kamu dapat menyesuaikan tampilan tabel sesuai dengan kebutuhan. 

Untuk code dan struktur database diatas merupakan contoh sederhana untuk pengelolaan scoring olah raga, dalam hal ini pencak silat, untuk kepentingan lebih lanjut, bisa dikembangkan dengan menggunakan framework dan kemanan yang lebih baik.

Komentar

Postingan populer dari blog ini

Fungsi lain tombol penerima panggilan di headset

Kegunaan tombol yang berada di headset utamanya adalah untuk menerima panggilan dan pause panggilan. Dan headset itu sendiri, kadang juga digunakan untuk mendengarkan music, digunakan bersama saat main game, supaya suara yang dikeluarkan oleh gadget tidak terlalu keras sehingga mengurangi beban gadget. Dengan mengurangi beban gadget, ada beberapa yang beranggapan kalau itu akan menghemat batere.

Apa itu index file seperti index.html, index.php kegunaannya dan bagaimana membuat custom nya

Index file adalah file yang berfungsi sebagai halaman utama atau tampilan pertama dari sebuah website. File ini memiliki nama default yang bervariasi, tergantung pada jenis server dan konfigurasinya, namun beberapa nama default yang umum digunakan adalah index.html, index.php, index.jsp, atau index.asp.

Membersihkan cache dan dalvik-cache menggunakan link2sd

Mungkin banyak yang menanyakan kenapa internalnya selalu berkurang free space nya. Padahal tidak menginstall applikasi baru. Hanya melakukan aktifitas normal. Dan sampai pada waktunya, internal memory low dan tidak bisa menambah aplikasi baru lagi.  Ada kemungkinan file cache dari sebuah aplikasi atau dalvik yang dibuat oleh OS android sudah  mulai membengkak. Sehingga perlu di bersihkan secara manual supaya tersedia penyimpanan kosong yang banyak. Sebelum mengetahui cara membersihkan cache dan dalvik cache, kita kupas sekilas apa itu cache dan dalvik cache. Cache adalah sebuah data file sementara yang di hasilkan oleh sebuah applikasi guna mempercepat pemrosesan dimasa yang akan datang (Cache Wikipedia) .  Dalvik-cache adalah ruang kosong sementara yang di pake oleh java virtual machine untuk menjalankan aplikasi android (Dalvik Wikipedia) .