| QR | ID | Nama | WA | Paket | Status | Aksi |
|---|
1️⃣ Buat Database ngajiros_ziarkasih
cPanel → MySQL Databases → Create New Database: ngajiros_ziarkasih
CREATE TABLE peserta (
id VARCHAR(20) PRIMARY KEY,
nama_lengkap VARCHAR(255),
no_wa VARCHAR(20),
alamat TEXT,
usia INT,
jenis_kelamin ENUM('L','P'),
jumlah_peserta INT DEFAULT 1,
paket ENUM('Reguler','VIP'),
harga INT,
metode_bayar ENUM('Transfer','Tunai'),
status ENUM('Menunggu Konfirmasi','Lunas','Batal'),
qr_data TEXT,
created_at TIMESTAMP DEFAULT NOW()
);
2️⃣ File yang harus di-upload
📄 index.html (file ini)→ public_html/
📁 api/daftar.php→ public_html/api/
📄 verifikasi.php→ public_html/
Langkah Upload:
- Buka File Manager di cPanel ziarkasih.ngaji-roso.com
- Upload index.html ini ke public_html (replace)
- Buat folder api → upload daftar.php (edit password DB)
- Upload verifikasi.php ke public_html
- Buka https://ziarkasih.ngaji-roso.com → test daftar
- Scan QR → harus buka halaman verifikasi.php
📋 Code api/daftar.php & verifikasi.php
Copy paste ini. Jangan lupa ganti PASSWORD_DB_ANDA dengan password user database di cPanel.
Lihat api/daftar.php
<?php
header("Content-Type: application/json");
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: POST, GET, OPTIONS");
header("Access-Control-Allow-Headers: Content-Type");
$host="localhost"; $user="ngajiros_ziarka"; $pass="PASSWORD_ANDA"; $db="ngajiros_ziarkasih";
$conn=new mysqli($host,$user,$pass,$db);
$in=json_decode(file_get_contents("php://input"),true);
$id=$conn->real_escape_string($in['id']); $nama=$conn->real_escape_string($in['nama']);
$wa=$conn->real_escape_string($in['wa']); $alamat=$conn->real_escape_string($in['alamat']);
$paket=$conn->real_escape_string($in['paket']); $qr=$conn->real_escape_string($in['qr_data']);
$harga=$paket=='VIP'?650000:450000;
$sql="INSERT INTO peserta (id,nama_lengkap,no_wa,alamat,paket,harga,qr_data,status) VALUES ('$id','$nama','$wa','$alamat','$paket',$harga,'$qr','Menunggu Konfirmasi') ON DUPLICATE KEY UPDATE nama_lengkap='$nama'";
echo $conn->query($sql)?json_encode(["status"=>"success","id"=>$id]):json_encode(["error"=>$conn->error]);
Lihat verifikasi.php
<?php
$conn=new mysqli("localhost","ngajiros_ziarka","PASSWORD_ANDA","ngajiros_ziarkasih");
$id=$conn->real_escape_string($_GET['id']??''); $r=$conn->query("SELECT * FROM peserta WHERE id='$id'")->fetch_assoc();
?><html> ... tampilkan kartu + QR + status Lunas ... QRCode.toCanvas(qr, location.href) ... </html>