OneCompiler

tugasforumWEB

102


<?php // Koneksi ke database MySQL $host = "localhost"; $username = "root"; $password = ""; $dbname = "binus_registration"; $conn = new mysqli($host, $username, $password, $dbname); // Cek koneksi if ($conn->connect_error) { die("Koneksi gagal: " . $conn->connect_error); } // Inisialisasi variabel $nik = $name = $dob = $email = $phone = ""; $nikErr = $nameErr = $dobErr = $emailErr = $phoneErr = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { // Validasi NIK if (empty($_POST["nik"])) { $nikErr = "NIK wajib diisi"; } elseif (!preg_match("/^[0-9]{16}$/", $_POST["nik"])) { $nikErr = "NIK harus 16 digit angka"; } else { $nik = $_POST["nik"]; } // Validasi nama if (empty($_POST["name"])) { $nameErr = "Nama wajib diisi"; } else { $name = $_POST["name"]; } // Validasi tanggal lahir if (empty($_POST["dob"])) { $dobErr = "Tanggal lahir wajib diisi"; } else { $dob = $_POST["dob"]; } // Validasi email if (empty($_POST["email"])) { $emailErr = "Email wajib diisi"; } elseif (!filter_var($_POST["email"], FILTER_VALIDATE_EMAIL)) { $emailErr = "Format email tidak valid"; } else { $email = $_POST["email"]; } // Validasi nomor telepon if (empty($_POST["phone"])) { $phoneErr = "Nomor telepon wajib diisi"; } elseif (!preg_match("/^[0-9]{10,15}$/", $_POST["phone"])) { $phoneErr = "Nomor telepon tidak valid"; } else { $phone = $_POST["phone"]; } // Jika semua validasi lolos, masukkan data ke MySQL if (empty($nikErr) && empty($nameErr) && empty($dobErr) && empty($emailErr) && empty($phoneErr)) { $stmt = $conn->prepare("INSERT INTO students (nik, name, dob, email, phone) VALUES (?, ?, ?, ?, ?)"); $stmt->bind_param("sssss", $nik, $name, $dob, $email, $phone); $stmt->execute(); echo "Mahasiswa baru berhasil didaftarkan!"; $stmt->close(); } } $conn->close(); ?> <!DOCTYPE html> <html> <head> <title>Form Pendaftaran Mahasiswa Baru</title> </head> <body> <h2>Pendaftaran Mahasiswa Baru</h2> <form method="POST" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>"> NIK: <input type="text" name="nik" value="<?php echo $nik; ?>"> <span style="color:red"><?php echo $nikErr; ?></span><br><br>
    Nama: <input type="text" name="name" value="<?php echo $name; ?>">
    <span style="color:red"><?php echo $nameErr; ?></span><br><br>

    Tanggal Lahir: <input type="date" name="dob" value="<?php echo $dob; ?>">
    <span style="color:red"><?php echo $dobErr; ?></span><br><br>

    Email: <input type="text" name="email" value="<?php echo $email; ?>">
    <span style="color:red"><?php echo $emailErr; ?></span><br><br>

    Nomor Telepon: <input type="text" name="phone" value="<?php echo $phone; ?>">
    <span style="color:red"><?php echo $phoneErr; ?></span><br><br>

    <input type="submit" value="Daftar">
</form>
</body> </html>