query("SELECT * FROM settings WHERE id = 1")->fetch();
$gizli_anahtar = $ayarlar['tc_sifre_anahtari'];
$mesaj = "";
if ($_POST) {
$ad_soyad = trim($_POST['ad_soyad']);
$tc_no = trim($_POST['tc_no']);
$eposta = trim($_POST['eposta']);
$telefon = trim($_POST['telefon']);
$adres = trim($_POST['adres']);
$sifre = trim($_POST['sifre']);
// Temel Kontroller
if (empty($ad_soyad) || empty($tc_no) || empty($eposta) || empty($sifre) || empty($adres)) {
$mesaj = "Lütfen tüm zorunlu alanları doldurun.";
} elseif (strlen($tc_no) != 11) {
$mesaj = "TC Kimlik Numarası 11 haneli olmalıdır.";
} else {
// E-posta daha önce kayıt edilmiş mi?
$kontrol = $db->prepare("SELECT id FROM users WHERE eposta = ?");
$kontrol->execute([$eposta]);
if ($kontrol->rowCount() > 0) {
$mesaj = "Bu e-posta adresi zaten sisteme kayıtlı.";
} else {
// Şifreyi Güvenli Hash yapma
$yeni_sifre = password_hash($sifre, PASSWORD_DEFAULT);
// TC Kimlik Numarasını Şifreleme
$sifreli_tc = tcSifrele($tc_no, $gizli_anahtar);
// Kullanıcı IP Adresi
$kayit_ip = getIP();
// Veritabanına Ekleme
$ekle = $db->prepare("INSERT INTO users (ad_soyad, tc_no, eposta, sifre, telefon, adres, kayit_ip) VALUES (?, ?, ?, ?, ?, ?, ?)");
$sonuc = $ekle->execute([$ad_soyad, $sifreli_tc, $eposta, $yeni_sifre, $telefon, $adres, $kayit_ip]);
if ($sonuc) {
$user_id = $db->lastInsertId();
// SİSTEME LOG YAZIYORUZ
logYaz($db, $user_id, "Yeni Üyelik", "$ad_soyad isimli kullanıcı $kayit_ip IP adresi ile üye oldu.");
$mesaj = "Kayıt başarıyla tamamlandı! Giriş yapabilirsiniz.";
// Buradan giriş sayfasına yönlendirme yapabilirsin: header("Refresh: 2; url=giris.php");
} else {
$mesaj = "Kayıt esnasında bir hata oluştu.";
}
}
}
}
?>
'.$mesaj.'
'; } ?>