Kayıt Formunda Şifrelerin Eşit Kontrolünü Nasıl Yaparım
Kayıt Formunda Şifrelerin Eşit Kontrolünü Nasıl Yaparım
Bu Formdaki Şifrelerin Eşit Olup Olmadığını Post Etmeden Nasıl Kontrol Ederim
<?php
if ($_SESSION) {
echo '<div class="alert alert-warning" role="alert">Üye Girişi Yapmışsınız Zaten</div>';
}else{
if ($_POST) {
$ad = strip_tags($_POST["ad"]);
$kadi = strip_tags($_POST["kadi"]);
$soyad = strip_tags($_POST["soyad"]);
$mail = strip_tags($_POST["mail"]);
$sifre1 = strip_tags($_POST["sifre1"]);
$sifre2 = strip_tags($_POST["sifre2"]);
$resim = $_FILES["resim"];
$tarih = date('d.m.Y H:i:s');
$dosyauzan = substr($_FILES["resim"]["name"],-4,4);
$dosyaadi = md5(rand(0,999999)).$dosyauzan;
$dosyayolu = "images/userimg/".$dosyaadi;
$hakkinda = strip_tags($_POST["hakkinda"]);
if (!$ad || !$soyad || !$mail || !$sifre1 || !$sifre2 || !$resim || !$hakkinda) {
echo '<div class="alert alert-warning" role="alert">Gerekli Alanları Doldurun Lütfen</div>';
}elseif (mb_strlen($kadi,'UTF-8')>= 50) {
echo '<div class="alert alert-warning" role="alert">Kullanıcı Adı En Fazla 50 Karakter Olabilir</div>';
}else{
if ($sifre1 == $sifre2) {
$dosyatip = $_FILES["resim"]["type"];
if($dosyatip == "image/jpeg" || $dosyatip == "image/png" || $dosyatip == "image/gif"){
if(is_uploaded_file($_FILES["resim"]["tmp_name"])){
$tasi = move_uploaded_file($_FILES["resim"]["tmp_name"],$dosyayolu);
if($tasi){
$fr = $db->prepare("SELECT * FROM uyeler WHERE uye_mail=? AND uye_kadi=?");
$fr->execute(array($mail,$kadi));
$hg = $fr->rowCount();
if ($hg) {
echo '<div class="alert alert-warning" role="alert">Kullandığınız E-Mail Adresini Veya Kullanıcı Adını Başka Bir Üye Kullanıyor</div>';
unlink($dosyayolu);
}else{
$sifre3 = md5($sifre2);
$kayit = $db->prepare("INSERT INTO uyeler SET uye_adi=?,uye_soyad=?,uye_mail=?,uye_sifre=?,uye_resim=?,uye_hakkinda=?,uye_tarih=?,uye_kadi=?");
$ekle = $kayit->execute(array($ad,$soyad,$mail,$sifre3,$dosyayolu,$hakkinda,$tarih,$kadi));
if ($ekle) {
echo '<div class="alert alert-success" role="alert">Başarıyla Kaydoldunuz</div>';
header("refresh:2; url=index.php");
}else{
echo '<div class="alert alert-warning" role="alert">Bir Hata Oluştu Kayıt Olamadınız</div>';
}
}
}else{
echo'<div class="alert alert-warning" role="alert">Kayıt Olurken Bir Hata Oluştu</div>';
}
}else{
echo'<div class="alert alert-warning" role="alert">Kayıt Olurken Bir Hata Oluştu</div>';
}
}else{
echo'<div class="alert alert-warning" role="alert">Sadece Resim Yükleyebilirsiniz</div>';
}
}else{
echo '<div class="alert alert-warning" role="alert">Şifreler Uyuşmuyor Kayıt Olamadınız</div>';
}
}
}else{
?>
<div class="container m-auto" style="max-width: 500px;margin-top: 30px">
<h2><b><center>Kayıt Formu</center></b></h2><hr><br><span style="color:red"><center>Tüm Alanları Doldurunuz</center></span>
<form method="POST" enctype="multipart/form-data" id="form">
<div class="row" style="max-width: 500px;margin-top: 30px">
<div class="col">
<input type="text" required class="form-control" name="ad" placeholder="Adınız" autocomplete="off">
</div>
<div class="col">
<input type="text" required class="form-control" name="soyad" placeholder="Soyadınız" autocomplete="off">
</div>
</div>
<div class="form-group">
<input type="text" required style="max-width: 500px;margin-top: 20px" class="form-control" id="exampleFormControlInput1" name="kadi" placeholder="Kullanıcı Adınız" autocomplete="off">
</div>
<div class="form-group">
<input type="email" required style="max-width: 500px;margin-top: 20px" class="form-control" id="exampleFormControlInput1" name="mail" placeholder="E-Mail Adresiniz" autocomplete="off">
</div>
<div class="form-group" style="max-width: 500px;margin-top: 20px">
<input type="password" required class="form-control" id="passwordHelpBlock" autocomplete="off" name="sifre1" placeholder="Şifrenizi Girin">
<small id="passwordHelpBlock" class="form-text text-muted">
0-9 a-z Min 8 Karakter
</small>
</div>
<div class="form-group" style="max-width: 500px;margin-top: 20px">
<input type="password" required class="form-control" id="passwordHelpBlock" name="sifre2" autocomplete="off" placeholder="Şifrenizi Onaylayın">
</div>
<label for="customFile">Profil Resminiz</label><br>
<input type="file" required class="form-control" name="resim" id="customFile">
<div class="form-group" style="max-width: 500px;margin-top: 20px">
<textarea class="form-control" id="exampleFormControlTextarea1" rows="3" name="hakkinda" placeholder="Hakkınızda Biraz Bilgi Verin"></textarea><br>
<div class="container m-auto" style="max-width: 500px;margin-top: 20px">
<center><button type="submit" class="btn btn-outline-success" >Kayıt Ol</button></center></div>
</div>
</form>
</div>
<?php
}
}
?>
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (3)
HTML'de input elemanına ekleyebildiğimiz onkeyup
property si yardımıyla klavyeden her tuş girildiğinde kontrol fonksiyonumuzu çağırabiliriz.
Şöyle ki;
<input type="password" name="pass1" onkeyup="passControl()">
<input type="password" name="pass2" onkeyup="passControl()">
<span class="password-warning"></span>
function passControl() {
let pass1 = document.querySelector('[name="pass1"]');
let pass2 = document.querySelector('[name="pass2"]');
let warningText = document.querySelector(".password-warning");
if(pass1.value != pass2.value){
warningText.innerHTML = "Şifreler Uyuşmuyor!";
}else {
warningText.innerHTML = "";
}
}
Eğer istersen kontrol sonucu istenilen sonuç sağlanmıyorsa submit butonunu da devre dışı bırakabilirsin.
izledim onuda ekledim
bide şey sorucam butona basınca bir gif görünsün istiyorum onClick ile nasıl yaparım
Hatta çok daha iyisi Tayfun Abi'nin Javascript Form Kontrolü + CSS ile Kolay Yöntemi videosunu izlemeni tavsiye ederim. Tabi buradaki kontroller UX açısından yararlı olsa da kullanıcılar tarafından erişebilir durumda, dolayısıyla değiştirilerek bu kontroller atlanabilir. Bu yüzden backend kontrolünü de yapmayı unutma.