• 30-03-2018, 11:22:09
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba arkadaşlar,
    Bir kayıt formum var. Formdan gelen bilgileri jquery ile veritabanına kayıt ettiriyorum. Ancak güvenlik kodu için bir türlü sonucu yazdıramadım. Formu eksiksiz ve güvenlik kodunu doğru girdiğimde kayıt ediyor. Güvenlik kodunu yanlış girdiğimde kayıt etmiyor ancak "Güvenlik kodunu yanlış girdiniz" uyarısını yazmıyor. Sorun nerede ben göremedim. Yardımcı olabilir misiniz?
    Form
    <form action="kaydet.php" method="post" onsubmit="return false;" name="cv" id="cv">
                <div class="fr_form_in"><input name="adsoyad" type="text" class="input" placeholder="AD SOYAD" /></div>
                <div class="fr_form_in"><input name="telefon" type="text" class="input" placeholder="TELEFON" /></div>
                <div class="fr_form_in"><input name="eposta" type="text" class="input" placeholder="E-POSTA" /></div>
                <div class="fr_form_in"><input name="adres" type="text" class="input" placeholder="ADRES" /></div>
                <div class="fr_form_inn"><textarea name="neden" class="inputy" placeholder="NEDEN GAYRİMENKUL DANIŞMANI OLMAK İSTEDİĞİNİZİ KISACA AÇIKLAYIN!"></textarea></div>
                <div class="fr_form_in"><strong style="color:#FFF;">Güvenlik Kodu</strong><br /><img alt="" src="guvenlik.php"></div>
                <div class="fr_form_in"><input name="guv" type="text" class="input" placeholder="Güvenlik Kodu" /></div>
                <div class="fr_form_in"><input name="gonder" type="submit" class="inputb" value="BAŞVUR" onclick="BasvuruYap()" /></div>
                <div class="basvurusonuc" style="color:#FFF; width:400px; height:30px; margin-left:auto; margin-right:auto;"></div>
            </form>
    Jquery
    <script type="text/javascript">
        function BasvuruYap(){
            $("div.basvurusonuc").empty();
            var adsoyad        = $("input[name=adsoyad]").val();
            var telefon        = $("input[name=telefon]").val();
            var eposta        = $("input[name=eposta]").val();
            var adres        = $("input[name=adres]").val();
            var neden        = $("textarea[name=neden]").val();
            var guv            = $("input[name=guv]").val();
                function MailKontrol(eposta) {
                                var kontrol = new RegExp(/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/i);
                                return kontrol.test(eposta);
                }
                    if(MailKontrol(eposta)){
                        if(adsoyad == ""){
                            $("div.basvurusonuc").append("Lütfen Adınızı ve Soyadınızı Yazınız.");
                        }else if(eposta == ""){
                            $("div.basvurusonuc").append("Lütfen E-Mail Adresinizi Yazınız.");
                        }else if(telefon == ""){
                            $("div.basvurusonuc").append("Lütfen Cep Telefonunuzu Yazınız.");
                        }else if(guv == ""){
                            $("div.basvurusonuc").append("Lütfen Güvenlik Kodunu Yazınız!");
                        }else{
                            var degerler = "adsoyad="+adsoyad+"&telefon="+telefon+"&eposta="+eposta+"&adres="+adres+"&guv="+guv+"&neden="+neden;
                        
                            $.ajax({
                                type     : "POST",
                                url        : "kaydet.php",
                                data    : degerler,
                                success    : function(sonuc){
                                    if(sonuc == "OK"){
                                            $(":input").not(":button, :submit, :reset, :hidden").each( function() {
                                            this.value = this.defaultValue;
                                            });
                                            $("div.basvurusonuc").append("Başvurunuz başarıyla gerçekleşti. En kısa sürede sizinle iletişime geçeceğiz.");
                                        
                                            }else if(sonuc == "NO"){
                                            $(":input").not(":button, :submit, :reset, :hidden").each( function() {
                                            this.value = this.defaultValue;
                                            });
                                            $("div.basvurusonuc").append("Bir Hata Oluştu! Lütfen Tekrar Deneyiniz.");
                                            
                                            }else if(sonuc == "Sec"){
                                            $(":input").not(":button, :submit, :reset, :hidden").each( function() {
                                            this.value = this.defaultValue;
                                            });
                                            $("div.basvurusonuc").append("Güvenlik Kodunu Hatalı Girdiniz.");
                                            
                                            }else{
                                            $("div.basvurusonuc").append("Bir Hata Oluştu! Lütfen Tekrar Deneyiniz.");
                                                 }    
                                    
                                }
                            
                            })
                        
                        }
                    }else{
                        $("div.basvurusonuc").append("Lütfen Geçerli Bir E-Mail Adresi Yazınız.");
                    }
        }
    
    </script>
    Kaydet.php
    <?php
    session_start();
    include("db.php");
    echo "<meta http-equiv=\"Content-Type\" content=\"text/HTML; charset=utf-8\" />";
    if($_POST["guv"] == $_SESSION["guv"]){
    
        $adsoyad    = strip_tags(addslashes($_POST["adsoyad"]));
        $telefon    = strip_tags(addslashes($_POST["telefon"]));
        $eposta        = strip_tags(addslashes($_POST["eposta"]));
        $adres        = strip_tags(addslashes($_POST["adres"]));
        $neden        = strip_tags(addslashes($_POST["neden"]));
        $tarih        = date("d.m.Y");                                                            
        if($adsoyad == "" or $telefon == "" or $eposta == ""){
            echo "NO";
        }else{
            $yukle    = mysql_query("insert into basvuru (adsoyad, telefon, eposta, adres, neden, tarih) values ('$adsoyad', '$telefon', '$adres', '$eposta', '$neden', '$tarih')");    
            if($yukle){
                echo "OK";
                    }else{
                echo "NO";
                    }
        }
    }else{
    echo "Sec";    
    }
    ?>
  • 02-04-2018, 15:51:44
    #2
    birden fazla hata yapıyor olabilirsiniz.

    - guvenlik.php de güvenlik kodunuzu oluştururken bir session başlattınız ve atamasını yaptınız mı ? $_SESSION["guv"] bunu guvenlik.php de oluşturmanız gerekiyor.
    İsterseniz örnek olarak size bir guvenlik kodu oluşturan kodlarımı paylaşabilirim.

    var telefon        = $("input[name=telefon]").val();
    bu tabir yerine tüm inputlara bir id atayın ve kodu şu şekilde düzenleyin.
    var telefon        = $("#telefon").val();
    yeni input kodu:
    <input name="telefon" type="text" class="input" id="telefon" placeholder="TELEFON" />
    diğer durum formu siz ajax ile post etmişsiniz kaydet.php ye dolayısıyla form html kodu içerisinde action="kaydet.php" e gerek yok. Js actionun önüne geçtiği için muhtemelen etkisizleştirecek ama yinede silin derim.

    Tüm bunlara rağmen ters giden birşeyler olursa, pm ile skype adresinizi bildirin lütfen. Görüşelim.