PHP ile Veritabanında Kayıt Kontrolü
Merhaba, Aşağıdaki formda daha önce kayıtlı olan kişilerin T.C. Kimlik numaraları ile eşleştirilip tekrar kayıt olmasını engellemek istiyorum.
Bunu nasıl yapacağım ile ilgili bana yardımcı olabilir misiniz?
PhpMyAdmin SQL içe aktarma dosyası
-- phpMyAdmin SQL Dump
-- version 5.0.2
-- https://www.phpmyadmin.net/
--
-- Anamakine: localhost:3306
-- Üretim Zamanı: 14 Mar 2021, 21:16:09
-- Sunucu sürümü: 5.7.24
-- PHP Sürümü: 7.2.19
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Veritabanı: `basvuru`
--
-- --------------------------------------------------------
--
-- Tablo için tablo yapısı `basvurular`
--
CREATE TABLE `basvurular` (
`id` int(20) NOT NULL,
`sinav_tarih` varchar(30) NOT NULL,
`sinav_saat` varchar(30) NOT NULL,
`tc_no` varchar(11) NOT NULL,
`adiniz` varchar(30) NOT NULL,
`soyadiniz` varchar(30) NOT NULL,
`dogum_tarihi` varchar(30) NOT NULL,
`eposta` varchar(50) DEFAULT NULL,
`adres` varchar(300) NOT NULL,
`telefon` varchar(11) NOT NULL,
`ev_telefon` varchar(11) DEFAULT NULL,
`okul` varchar(200) NOT NULL,
`hes_kodu` varchar(30) NOT NULL,
`veli_adi` varchar(30) NOT NULL,
`veli_eposta` varchar(50) NOT NULL,
`veli_telefon` varchar(11) NOT NULL,
`veli_meslek` varchar(30) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Dökümü yapılmış tablolar için indeksler
--
--
-- Tablo için indeksler `basvurular`
--
ALTER TABLE `basvurular`
ADD PRIMARY KEY (`id`);
--
-- Dökümü yapılmış tablolar için AUTO_INCREMENT değeri
--
--
-- Tablo için AUTO_INCREMENT değeri `basvurular`
--
ALTER TABLE `basvurular`
MODIFY `id` int(20) NOT NULL AUTO_INCREMENT;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
baglan.php Dosyası
<?php
$db = mysqli_connect("localhost","root","","basvuru");
if(!$db)
{
die("Connection failed: " . mysqli_connect_error());
}
$db->set_charset("utf8");
?>
index.php Dosyası
<?php
include "../baglan.php"; // Using database connection file here
if(isset($_POST['submit']))
{
$sinav_tarih = $_POST['sinav_tarih'];
$sinav_saat = $_POST['sinav_saat'];
$tc_no = $_POST['tc_no'];
$adiniz = $_POST['adiniz'];
$soyadiniz = $_POST['soyadiniz'];
$dogum_tarihi = $_POST['dogum_tarihi'];
$eposta = $_POST['eposta'];
$adres = $_POST['adres'];
$telefon = $_POST['telefon'];
$ev_telefon = $_POST['ev_telefon'];
$okul = $_POST['okul'];
$hes_kodu = $_POST['hes_kodu'];
$veli_adi = $_POST['veli_adi'];
$veli_eposta = $_POST['veli_eposta'];
$veli_telefon = $_POST['veli_telefon'];
$veli_meslek = $_POST['veli_meslek'];
$insert = mysqli_query($db,"INSERT INTO `basvurular`(`sinav_tarih`, `sinav_saat`, `tc_no`, `adiniz`, `soyadiniz`, `dogum_tarihi`, `eposta`, `adres`, `telefon`, `ev_telefon`, `okul`, `hes_kodu`, `veli_adi`, `veli_eposta`, `veli_telefon`, `veli_meslek`) VALUES ('$sinav_tarih','$sinav_saat','$tc_no','$adiniz','$soyadiniz','$dogum_tarihi','$eposta','$adres','$telefon','$ev_telefon','$okul','$hes_kodu','$veli_adi','$veli_eposta','$veli_telefon','$veli_meslek')");
if(!$insert)
{
echo mysqli_error();
}
else
{
echo "<div class='container'>";
echo "<div class='py-5 text-center'>";
echo "<div class='alert alert-success' role='alert'>";
echo "Kaydınız Başarıyla Gerçekleştirilmiştir.";
echo "<br />";
echo "<br />";
echo "<a href='../index.php' type='button' class='btn btn-success'>Anasayfaya Git</a>";
echo "</div>";
echo "</div>";
echo "</div>";
}
}
mysqli_close($db); // Close connection
?>
<!doctype html>
<html lang="tr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors">
<meta name="generator" content="Hugo 0.80.0">
<title>Yargı Akademi - Bursluluk ve Kabul Sınavı Başvuru Formu</title>
<!-- Bootstrap core CSS -->
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl" crossorigin="anonymous">
<style>
.bd-placeholder-img {
font-size: 1.125rem;
text-anchor: middle;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
@media (min-width: 768px) {
.bd-placeholder-img-lg {
font-size: 3.5rem;
}
}
</style>
<!-- Custom styles for this template -->
<link href="form-validation.css" rel="stylesheet">
</head>
<body class="bg-light">
<div class="container">
<main>
<div class="py-5 text-center">
<img class="d-block mx-auto mb-4" src="assets/img/logo.png" alt="" width="50%">
<h2>Bursluluk ve Kabul Sınavı</h2>
<p class="lead">Sınava girecek tüm öğrencilerimize başarılar dileriz.</p>
</div>
<div>
<ol type="1">
<li>Sınava, cep telefonu, tablet bilgisayar vb. elektronik eşya getirilmemelidir.</li>
<li>Sınava gelirken, sınav giriş kartınızın yanı sıra kimlik kartınızı da yanınızda getirmeyi unutmayınız.</li>
<li>Sınav başlamadan 15 dakika önce salondaki yerinizi almalısınız.</li>
<li>Sonuç karnenizi, sınava girdiğiniz kurumdan sınav giriş kartınızla alabilirsiniz.</li>
<li>Öğrencilerin kazandığı indirim veya burs, sadece sınava girdikleri okul için geçerlidir.</li>
</ol>
</div>
<br />
<br />
<div class="row g-3">
<div class="col-md-7 col-lg-12">
<h3 align="center" class="mb-3">Sınav Kayıt Formu</h3>
<hr class="my-4">
<form class="needs-validation" method="POST" novalidate>
<div class="row">
<div class="col offset-s1 s10 m12 l12">
<blockquote class="blockquote-form-page">
<div class="flow-text"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-person-circle" viewBox="0 0 16 16">
<path d="M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"/>
<path fill-rule="evenodd" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z"/>
</svg> <strong>Sınav</strong> Tarih ve Saat Bilgileri</div>
</blockquote>
<hr class="my-4">
</div>
</div>
<div class="row g-3">
<div class="col-md-6">
<label for="sinav_tarih" class="form-label">Sınav Tarihi</label>
<select class="form-select" name="sinav_tarih" required>
<option value="">Seç...</option>
<option value="09.04.2021">09 Nisan 2021 Cuma</option>
<option value="10.04.2021">10 Nisan 2021 Cumartesi</option>
</select>
<div class="invalid-feedback">
Sınav Tarihi Seçiniz.
</div>
</div>
<div class="col-md-6">
<label for="sinav_saat" class="form-label">Sınav Saati</label>
<select class="form-select" name="sinav_saat" required>
<option value="">Seç...</option>
<option value="09:00">09:00</option>
<option value="13:00">13:00</option>
<option value="15:00">15:00</option>
</select>
<div class="invalid-feedback">
Sınav Saati Seçiniz.
</div>
</div>
</div>
<hr class="my-4">
<div class="row">
<div class="col offset-s1 s10 m12 l12">
<blockquote class="blockquote-form-page">
<div class="flow-text"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-person-circle" viewBox="0 0 16 16">
<path d="M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"/>
<path fill-rule="evenodd" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z"/>
</svg> <strong>Öğrenci</strong> Kişisel Bilgileri</div>
</blockquote>
<hr class="my-4">
</div>
</div>
<div class="row g-3">
<div class="col-sm-6">
<label for="tc_no" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-person-lines-fill" viewBox="0 0 16 16">
<path d="M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-5 6s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zM11 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5zm.5 2.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1h-4zm2 3a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1h-2zm0 3a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1h-2z"/>
</svg> Öğrenci T.C. Kimlik Numarası **<span class="text-muted"> (Zorunlu)</span></label>
<input type="text" class="form-control" name="tc_no" placeholder="11 Haneli T.C. Kimlik Numaranızı yazınız." minlength="11" maxlength="11" value="" required>
<div class="invalid-feedback">
Geçerli bir T.C. Kimlik Numarası gereklidir.
</div>
</div>
<div class="col-sm-6">
<label for="adiniz" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-person-check-fill" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M15.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L12.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0z"/>
<path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z"/>
</svg> Öğrenci Adı *<span class="text-muted"> (Zorunlu)</span></label>
<input type="text" class="form-control" name="adiniz" placeholder="Lütfen Adınızı yazınız." minlength="3" maxlength="20" value="" required>
<div class="invalid-feedback">
Geçerli bir ad gereklidir.
</div>
</div>
<div class="col-sm-6">
<label for="soyadiniz" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-person-check-fill" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M15.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L12.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0z"/>
<path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z"/>
</svg> Öğrenci Soyadı *<span class="text-muted"> (Zorunlu)</span></label>
<input type="text" class="form-control" name="soyadiniz" placeholder="Lütfen Soyadınızı yazınız." minlength="2" maxlength="20" value="" required>
<div class="invalid-feedback">
Geçerli bir soyad gereklidir.
</div>
</div>
<div class="col-sm-6">
<label for="dogum_tarihi" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-calendar-date" viewBox="0 0 16 16">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-calendar-date-fill" viewBox="0 0 16 16">
<path d="M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zm5.402 9.746c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2z"/>
<path d="M16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zm-6.664-1.21c-1.11 0-1.656-.767-1.703-1.407h.683c.043.37.387.82 1.051.82.844 0 1.301-.848 1.305-2.164h-.027c-.153.414-.637.79-1.383.79-.852 0-1.676-.61-1.676-1.77 0-1.137.871-1.809 1.797-1.809 1.172 0 1.953.734 1.953 2.668 0 1.805-.742 2.871-2 2.871zm-2.89-5.435v5.332H5.77V8.079h-.012c-.29.156-.883.52-1.258.777V8.16a12.6 12.6 0 0 1 1.313-.805h.632z"/>
</svg>
</svg> Öğrenci Doğum Tarihi *<span class="text-muted"> (Zorunlu)</span></label>
<input type="date" class="form-control" name="dogum_tarihi" placeholder="Doğum Tarihinizi Gün.Ay.Yıl olarak yazınız." value="0000-00-00" required>
<div class="invalid-feedback">
Geçerli bir doğum tarihi gereklidir. Gün.Ay.Yıl (Örn. 05.10.2007)
</div>
</div>
<div class="col-6">
<label for="eposta" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-envelope-open-fill" viewBox="0 0 16 16">
<path d="M8.941.435a2 2 0 0 0-1.882 0l-6 3.2A2 2 0 0 0 0 5.4v.313l6.709 3.933L8 8.928l1.291.717L16 5.715V5.4a2 2 0 0 0-1.059-1.765l-6-3.2zM16 6.873l-5.693 3.337L16 13.372v-6.5zm-.059 7.611L8 10.072.059 14.484A2 2 0 0 0 2 16h12a2 2 0 0 0 1.941-1.516zM0 13.373l5.693-3.163L0 6.873v6.5z"/>
</svg> E-Posta Adresiniz<span class="text-muted"> (Zorunlu Değil)</span></label>
<input type="email" class="form-control" name="eposta" id="eposta" placeholder="Örn: [email protected]">
<div class="invalid-feedback">
Lütfen gönderilebilecek duyurular için geçerli bir e-posta adresi girin.
</div>
</div>
<div class="col-6">
<label for="adres" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-house-fill" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M8 3.293l6 6V13.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5V9.293l6-6zm5-.793V6l-2-2V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5z"/>
<path fill-rule="evenodd" d="M7.293 1.5a1 1 0 0 1 1.414 0l6.647 6.646a.5.5 0 0 1-.708.708L8 2.207 1.354 8.854a.5.5 0 1 1-.708-.708L7.293 1.5z"/>
</svg> Adresiniz * <span class="text-muted"> (Zorunlu)</span></label>
<input type="text" class="form-control" name="adres" id="adres" minlength="10" placeholder="Örn: Merkez Mahallesi Akdeniz Caddesi No:18" required>
<div class="invalid-feedback">
Geçerli bir adres gereklidir.
</div>
</div>
<div class="col-6">
<label for="telefon" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-phone-fill" viewBox="0 0 16 16">
<path d="M3 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V2zm6 11a1 1 0 1 0-2 0 1 1 0 0 0 2 0z"/>
</svg> Cep Telefonu Numaranız **<span class="text-muted"> (Zorunlu)</span></label>
<input type="text" class="form-control" name="telefon" placeholder="Cep Telefonunuzu Yazınız." minlength="11" maxlength="11" required="" pattern="[0-9]{4}[0-9]{3}[0-9]{2}[0-9]{2}">
<span class="text-muted">Format: 05551234567</span>
<div class="invalid-feedback">
Lütfen numaranızı istenilen formatta giriniz..
</div>
</div>
<div class="col-6">
<label for="ev_telefon" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-telephone-fill" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/>
</svg> Ev Telefonu Numaranız<span class="text-muted"> (Zorunlu Değil)</span></label>
<input type="text" class="form-control" name="ev_telefon" placeholder="Ev Telefonunuzu Yazınız." minlength="11" maxlength="11" pattern="[0-9]{4}[0-9]{3}[0-9]{2}[0-9]{2}">
<span class="text-muted">Format: 03245151515</span>
<div class="invalid-feedback">
Lütfen numaranızı istenilen formatta giriniz..
</div>
</div>
<div class="col-6">
<label for="okul" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-building" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M14.763.075A.5.5 0 0 1 15 .5v15a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5V14h-1v1.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V10a.5.5 0 0 1 .342-.474L6 7.64V4.5a.5.5 0 0 1 .276-.447l8-4a.5.5 0 0 1 .487.022zM6 8.694L1 10.36V15h5V8.694zM7 15h2v-1.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5V15h2V1.309l-7 3.5V15z"/>
<path d="M2 11h1v1H2v-1zm2 0h1v1H4v-1zm-2 2h1v1H2v-1zm2 0h1v1H4v-1zm4-4h1v1H8V9zm2 0h1v1h-1V9zm-2 2h1v1H8v-1zm2 0h1v1h-1v-1zm2-2h1v1h-1V9zm0 2h1v1h-1v-1zM8 7h1v1H8V7zm2 0h1v1h-1V7zm2 0h1v1h-1V7zM8 5h1v1H8V5zm2 0h1v1h-1V5zm2 0h1v1h-1V5zm0-2h1v1h-1V3z"/>
</svg> Okulu *<span class="text-muted"> (Zorunlu)</span></label>
<input type="text" class="form-control" name="okul" minlength="10" placeholder="Okulunuzun Adını Giriniz." required="">
<span class="text-muted">Örnek: Akdeniz İlköğretim Okulu</span>
<div class="invalid-feedback">
Lütfen Okulunuzun adını giriniz..
</div>
</div>
<div class="col-6">
<label for="hes_kodu" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-file-earmark-code-fill" viewBox="0 0 16 16">
<path d="M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM6.646 7.646a.5.5 0 1 1 .708.708L5.707 10l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708l2-2zm2.708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 10 8.646 8.354a.5.5 0 1 1 .708-.708z"/>
</svg> HES Kodu *<span class="text-muted"> (Zorunlu)</span></label>
<input type="text" class="form-control" name="hes_kodu" placeholder="U3H6-9247-S5" minlength="5" required="">
<span style="color: red;" class="text">HES Kodunuzu nasıl alacağınızı bilmiyorsanız <a href="https://hayatevesigar.saglik.gov.tr/hes.html#" target="blank_">buraya</a> tıklayınız.</span>
<div class="invalid-feedback">
Lütfen HES Kodunuzu giriniz..
</div>
</div>
<hr class="my-4">
<div class="row">
<div class="col offset-s1 s10 m12 l12">
<blockquote class="blockquote-form-page">
<div class="flow-text"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-person-circle" viewBox="0 0 16 16">
<path d="M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"/>
<path fill-rule="evenodd" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z"/>
</svg> <strong>Veli</strong> Bilgileri</div>
</blockquote>
<hr class="my-4">
</div>
</div>
<div class="row g-3">
<div class="col-sm-6">
<label for="veli_adi" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-person-check-fill" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M15.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L12.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0z"/>
<path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z"/>
</svg> Veli Adı ve Soyadı *<span class="text-muted"> (Zorunlu)</span></label>
<input type="text" class="form-control" name="veli_adi" placeholder="Lütfen Adınızı ve Soyadınızı yazınız." minlength="3" value="" required>
<div class="invalid-feedback">
Geçerli bir ad ve soyad yazınıc.
</div>
</div>
<div class="col-6">
<label for="veli_eposta" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-envelope-open-fill" viewBox="0 0 16 16">
<path d="M8.941.435a2 2 0 0 0-1.882 0l-6 3.2A2 2 0 0 0 0 5.4v.313l6.709 3.933L8 8.928l1.291.717L16 5.715V5.4a2 2 0 0 0-1.059-1.765l-6-3.2zM16 6.873l-5.693 3.337L16 13.372v-6.5zm-.059 7.611L8 10.072.059 14.484A2 2 0 0 0 2 16h12a2 2 0 0 0 1.941-1.516zM0 13.373l5.693-3.163L0 6.873v6.5z"/>
</svg> Veli E-Posta Adresiniz<span class="text-muted"> (Zorunlu Değil)</span></label>
<input type="email" class="form-control" name="veli_eposta" id="veli_eposta" placeholder="Örn: [email protected]">
<div class="invalid-feedback">
Lütfen gönderilebilecek duyurular için geçerli bir e-posta adresi girin.
</div>
</div>
<div class="col-6">
<label for="veli_telefon" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-phone-fill" viewBox="0 0 16 16">
<path d="M3 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V2zm6 11a1 1 0 1 0-2 0 1 1 0 0 0 2 0z"/>
</svg> Cep Telefonu Numaranız *<span class="text-muted"> (Zorunlu)</span></label>
<input type="text" class="form-control" name="veli_telefon" placeholder="Cep Telefonunuzu Yazınız." minlength="11" maxlength="11" required="" pattern="[0-9]{4}[0-9]{3}[0-9]{2}[0-9]{2}">
<span class="text-muted">Format: 05551234567</span>
<div class="invalid-feedback">
Lütfen numaranızı istenilen formatta giriniz..
</div>
</div>
<div class="col-sm-6">
<label for="veli_meslek" class="form-label"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-person-check-fill" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M15.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L12.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0z"/>
<path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z"/>
</svg> Veli Mesleği<span class="text-muted"> (Zorunlu Değil)</span></label>
<input type="text" class="form-control" name="veli_meslek" placeholder="Lütfen Mesleğinizi yazınız." minlength="3" value="">
<div class="invalid-feedback">
Geçerli bir meslek giriniz.
</div>
</div>
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" id="checkbox" required="">
<label class="form-check-label" for="checkbox"><span>Kişisel verilerin korunması</span> hakkında bilgilendirmeyi okudum, anladım ve kabul ediyorum.</label>
<div class="invalid-feedback">
Geçerli bir meslek giriniz.
</div>
</div>
</div>
<hr class="my-4">
<input class="w-100 btn btn-primary btn-lg" type="submit" name="submit" value="Gönder">
</form>
</div>
</div>
</main>
<footer class="my-5 pt-5 text-muted text-center text-small">
<p class="mb-1">© Erdemli 2021 Yargı Akademi</p>
<ul class="list-inline">
<li class="list-inline-item"><a href="#">Gizlilik Politikası</a></li>
<li class="list-inline-item"><a href="#">Kullanım Sözleşmesi</a></li>
<li class="list-inline-item"><a href="../index.php">İletişim</a></li>
</ul>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-b5kHyXgcpbZJO/tY9Ul7kGkf1S0CWuKcCD38l8YkeH8z8QjE0GmW1gYU5S9FOnJ0" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/@popperjs/[email protected]/dist/umd/popper.min.js" integrity="sha384-KsvD1yqQ1/1+IA7gi3P0tyJcT3vR+NdBTt13hSJ2lnve8agRGXTTyNaBYmCR/Nwi" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.min.js" integrity="sha384-nsg8ua9HAw1y0W1btsyWgBklPnCUAFLuTMS2G72MMONqmOymq585AcH49TLBQObG" crossorigin="anonymous"></script>
<script src="form-validation.js"></script>
</body>
</html>
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (2)
makife ek olarak
ılk once tc leri post ederken sag sol boşlukları sıldıt trim ltrim vs
sonra 11 hanemı saydır strlen ıle
sonra bir tane sorgu olustur bu aldıgın tc veri tabanında varmı
if(isset($_POST['tc_no'])&& (!empty($_POST['tc_no']))){ // form post edıldımı ve bosmu bak
$tc=trim($_POST['tc_no']); // boşlukları sıl
$say=strlen($tc); //11 hanemı say
if($say==11){ // 11 hane ıse ıslem yaptır
$bak=$db->prepare("SELECT * FROM basvurular WHERE tc_no=?"); //PDO ıle yazılan sorgulama
$bak->execute([$say]);
$varmi=$bak->rowCount();// varsa 1 yoksa 0 degerı donecek kayıtları saydık
if($varmi==1){ //1 degerı dondu kayıt et verı tabanına
BURAYA INSERT ISLEMI YAP
}else{
echo "bu kayıt zaten var";
}
}
}
Öncelikle bu şekilde kullanıcıdan aldığınız verileri kontrol etmeden direk db'ye kayıt ederseniz SQLInjection açığı kaçınılmaz :)
PDO kullanmanı tavsiye ederim ve $_POST'tan gelen veriyi kontrolden geçirmelisin.http://www.erbilen.net/pdo-kullanimi/
Posttan gelen veriyi kontrol ettikten sonra SELECT ile Posttan gelen TCno var mı diye kontrol ettirirsin.Yoksa Ekleme işlemini yaptırırsın.
Ek olarak PhpMyAdmin den TCno ya UNIQUE yani Benzersiz yaparsan kayıt ederken TCno varsa hata verir.