12 lines
2.4 KiB
PHP
12 lines
2.4 KiB
PHP
<?php
|
|
require __DIR__ . '/bootstrap.php'; require_admin(); $error='';
|
|
if($_SERVER['REQUEST_METHOD']==='POST') {
|
|
verify_csrf();
|
|
$name=trim($_POST['nama']??''); $email=trim($_POST['email']??''); $phone=trim($_POST['nowa']??''); $position=trim($_POST['posisi']??''); $gender=$_POST['jk']??''; $password=$_POST['password']??'';
|
|
if($name==='' || strlen($name)>100 || !filter_var($email,FILTER_VALIDATE_EMAIL) || strlen($email)>100 || $phone==='' || strlen($phone)>25 || $position==='' || strlen($position)>100 || !in_array($gender,['Pria','Wanita'],true) || strlen($password)<8) $error='Lengkapi data dengan benar. Password peserta minimal 8 karakter.';
|
|
elseif(one('SELECT id FROM in_daper WHERE email=?','s',[$email])) $error='Email tersebut sudah dipakai peserta lain.';
|
|
else { query('INSERT INTO in_daper(kode,nama,jk,email,nowa,posisi,cek,level,password) VALUES(0,?,?,?,?,?,0,0,?)','ssssss',[$name,$gender,$email,$phone,$position,password_hash($password,PASSWORD_DEFAULT)]); $_SESSION['flash']='Peserta berhasil ditambahkan. Berikan email dan password kepada peserta untuk login di halaman recruitment.'; redirect('idap.php'); }
|
|
}
|
|
page_start('Tambah peserta', 'participants');
|
|
?><a class="text-link back" href="idap.php">← Daftar peserta</a><section class="card form-card"><h2>Undang talenta baru</h2><p class="muted">Email dan password ini dipakai peserta untuk mengikuti tes.</p><?php if($error): ?><div class="notice error"><?=e($error)?></div><?php endif; ?><form method="post"><?php csrf_field(); ?><div class="form-grid"><?php foreach(['nama'=>'Nama lengkap','email'=>'Email peserta','nowa'=>'Nomor WhatsApp','posisi'=>'Posisi dilamar'] as $key=>$label): ?><label><?=$label?><input name="<?=$key?>" type="<?=$key==='email'?'email':'text'?>" maxlength="<?=$key==='nowa'?25:100?>" value="<?=e($_POST[$key]??'')?>" required></label><?php endforeach; ?><label>Jenis kelamin<select name="jk" required><option value="">Pilih</option><?php foreach(['Pria','Wanita'] as $gender): ?><option <?=($_POST['jk']??'')===$gender?'selected':''?>><?=$gender?></option><?php endforeach; ?></select></label><label>Password awal<input name="password" type="password" minlength="8" autocomplete="new-password" required></label></div><div class="form-actions"><a class="button secondary" href="idap.php">Batal</a><button class="button">Simpan peserta</button></div></form></section><?php page_end(); ?>
|