
Login giriş ekranı sorunum var
9
●168
- 04-01-2024, 23:49:31Beni Hatırlaya tıklamayınca aynı ekrana atıyor. sorun neden kaynaklanır acaba?

- 04-01-2024, 23:52:17Ekran görüntüsü değil kodları paylaşmalısın. Aksi taktirde; kodlama dili nedir? Arka planda ne dönüyor? Nasıl anlayacağız?
- 04-01-2024, 23:54:25TuncayTEKE adlı üyeden alıntı: mesajı görüntüle
<div class="container"> <div id="login"> <div class="row"> <div class="col-sm-8 col-sm-offset-2 col-md-6 col-md-offset-3 col-lg-4 col-lg-offset-4"> <div class="well"> <div id="bilgi"></div> <form id="login-form" class="form-horizontal" method="post"> <div id="grup-mail" class="form-group"> <input type="hidden" name="git" value="<?php echo $git?>"> <label for="mail" class="col-sm-2 control-label">Email</label> <div class="col-sm-10"> <input type="email" class="form-control" id="mail" name="mail" placeholder="Email"> </div> </div> <div id="grup-sifre" class="form-group"> <label for="sifre" class="col-sm-2 control-label">Şifre</label> <div class="col-sm-10"> <input type="password" class="form-control" id="sifre" name="sifre" placeholder="Parola"> </div> </div> <div id="grup-bnh" class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <div class="checkbox"> <label> <input type="checkbox" name="hatirla" value="0"> Beni Hatırla </label> </div> </div> </div> <div class="form-group"> <div class="col-sm-12 text-center"> <button type="submit" id="btn-submit" class="btn btn-info"> Giriş </button> <a href="<?php echo SITE_URL?>kayit/<?php echo $git_url?>" id="yeni-kayit" class="btn btn-success"> Yeni Kayıt </a> <span id="sifremi_unuttum" class="btn btn-danger">Şifremi Unuttum</span> <span id="sifre_hatirlat" class="btn btn-danger" style="display:none">Bağlantı Gönder</span> </div> </div> <div id="hatirlat_bilgi" class="form-group text-center" style="display:none"> Şifre Yenileme Linki Mail adresinize gönderilir.<br><strong>Lütfen Gereksiz Posta(Junk mail) Klasörünü kontrol etmeyi unutmayınız</strong> </div> </form> </div> </div> </div> </div> </div> <script> $("#sifremi_unuttum").click( function() { $("#login-form").attr('id', 'hatirlat-form'); $("#grup-bnh").hide(); $("#grup-sifre").hide(); $("#btn-submit").remove(); $("#yeni-kayit").remove(); $("#sifremi_unuttum").remove(); $("#sifre_hatirlat").show(); $("#hatirlat_bilgi").show(); }); $("#sifre_hatirlat").click( function() { var m = $("#mail").val(); m = encodeURIComponent(m); fd = "sifre_hatirlat="+m; $.post('', fd).done(function( data ) { if(data != 'ok' ) { alert(data); } else { $("#sifre_hatirlat").remove(); $("#grup-mail").remove(); $("#hatirlat_bilgi").remove(); $("#bilgi").html('<p class="text-center"><br>İşlem Tamam. <strong>Şifre yenileme linki mail adresinize gönderildi.</strong><br><strong>Lütfen Gereksiz Posta(Junk mail) Klasörünü kontrol etmeyi unutmayınız</strong><br></p>'); } }); }); $("#login-form").submit( function() { $("#bilgi").html(""); var mail = $("#mail").val(); var sifre = $("#sifre").val(); var sonuc = ''; var fd = $("#login-form").serialize(); $.post('', fd).done(function( data ) { if(data != '' ) { $("#bilgi").html(data); } else { //window.location.href = '<?php echo $git?>'; } }); return false; }); </script>
<?php define('UYE_GIRIS', true ); if( isset( $_GET['loc'] ) ) { //echo 111; yonlendir( $_SERVER['REQUEST_SCHEME'].'://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'], true ); } $title = 'Giriş'; $site->title = SITE_ADI.' - Giriş'; $git_url =(isset($_GET['git']) ) ? '?git='.$_GET['git'] : null; $git = $site->giris_yonlen(); if( isset( $_POST['sifre_hatirlat'] ) ) { ob_clean(); $bilgi = null; $mail = $_POST['sifre_hatirlat']; $mail = filter_var( $mail, FILTER_SANITIZE_EMAIL ); if( filter_var( $mail, FILTER_VALIDATE_EMAIL ) === false ) $bilgi = 'Email adresi Geçersiz'; else { $sql = "SELECT uye_id,uye_ad, uye_soyad, uye_code FROM uyeler WHERE uye_mail='$mail'"; $q = $db->query($sql); if($q->num_rows) { $al = $db->obj($q); $code = $al->uye_code; $mail_to = array(); $mail_islem = 'sifre_hatirlat'; $arr['to'] = $mail; $arr['baslik'] = 'İnternetreklamı - Şifre Hatırlat'; $arr['mesaj'] = 'Sayın '.$al->uye_ad.' '.$al->uye_soyad; $arr['mesaj'] .= '<br>İnternetreklamı Firma Rehberi için Şifremi Unuttum bağlantısı kullanıldı.<br>'; $arr['mesaj'] .= '<br>Şifenizi hatırlamıyorsanız aşağıdaki linke tıklayın. Herhangi bir işlem yapmadığınız taktirde eski şifreniz hala aktiftir.<br><br>'; $arr['mesaj'] .= '<a href="'.$site_url.'sifre_guncelle/?sh='.$code.'">Şifre Yenilemek için Lütfen Tıklayın!</a>'; $arr['mesaj'] .= '<br><br>Saygılarımızla... <br><br>internetreklami.net<br>'; include INC_PATH.'mail.php'; } else { $bilgi = 'Girdiğiniz Mail adresi Kayıtlarımızda bulunmuyor..'; } } echo $bilgi; die(); } if( isset( $_POST['mail'] ) ) { ob_clean(); $arr = array(); $bilgi = null; foreach( $_POST as $key => $v ) { $v = trim($v); $ex = 'uye_'; if( $key == 'mail' ) { // Remove all illegal characters from email $v = filter_var( $v, FILTER_SANITIZE_EMAIL ); if( filter_var( $v, FILTER_VALIDATE_EMAIL ) === false ) $bilgi = 'Email adresi Geçersiz<br>'; } elseif( $key == 'sifre' ) { if( ! $v ) { $bilgi.= 'Şifre Boş Bırakılamaz.'; } } ${$ex.$key} = $v; } if( $bilgi ) { $hata = $bilgi; } else { $uye_sifre = md5(sha1($uye_sifre)); $sql = "SELECT uye_id,uye_aktif,uye_durum FROM uyeler WHERE uye_mail='$uye_mail' AND uye_sifre='$uye_sifre'"; $q = $db->query( $sql ); if( $q->num_rows == true ) { $r = $db->obj( $q ); if( $r->uye_aktif < 1 ) $hata = 'Üyelik Aktif Edilmemiş. Lütfen mail adresinize gönderilen Aktivasyon İşlemini Yapınız. Gereksiz-Spam klasörünü kontrol etmeyi unutmayınız.'; if( $r->uye_durum < 1 ) $hata = 'Üyeliğiniz Dondurulmuş<br> Lütfen Bizimle İrtibata Geçiniz'; else { $_SESSION['uye'] = $r->uye_id; // cookie if(isset($uye_hatirla)) { $arr['id'] = $r->uye_id; $arr['db_key'] = 'uye_id'; $arr['alanlar']['uye_cookie'] = md5(microtime()); setcookie("bnh", $arr['alanlar']['uye_cookie'], time()+720000000,'/', '.'.DOMAIN); $arr['table'] = $table_uyeler; $k = $db->guncelle($arr); } if($uye_git) { $git = base64_decode($uye_git); echo "<script>window.location.href = '$git'</script>"; die(); } else { $git = SITE_URL.'/profil/'; echo "<script>window.location.href = '$git'</script>"; die(); } } } else { $hata = 'Geçersiz Kullanıcı Adı veya Şifre'; } //echo $site->bilgi( 'İslem Tamam' ); } echo hata($hata, 'text-center'); die(); } $inc_tema = 'giris.tmp.php'; //include 'footer.php'; ?> - 04-01-2024, 23:55:46kodu attımda önceden düzgün çalışıyordu . editleme yapmadım bu dosyalarda başka yerden sıkıntı gibi . hangi dosya olabilirTuncayTEKE adlı üyeden alıntı: mesajı görüntüle
- 05-01-2024, 00:42:39Script genelinde girişleri Session üzerinden kontrol ediliyorsa bu sayfanın include edildiği sayfanın en başında session_start(); kullanılmalı var mı bi kontrol edin.
Giriş bilgileri kontrol edildikten sonra; Satır 77 ve 87 arasında Session yalnızca uye değeriyle ID girilmiş. Ancak beni hatırla seçili geldiğinde artı olarak Cookie oluşturulmuş ve oluşturulan Cookie ve üye id değeri veri tabanda güncellenmiş.
else { $_SESSION['uye'] = $r->uye_id; // cookie if(isset($uye_hatirla)) { $arr['id'] = $r->uye_id; $arr['db_key'] = 'uye_id'; $arr['alanlar']['uye_cookie'] = md5(microtime()); setcookie("bnh", $arr['alanlar']['uye_cookie'], time()+720000000,'/', '.'.DOMAIN); $arr['table'] = $table_uyeler; $k = $db->guncelle($arr); }Sitenin diğer sayfalarında giriş yapılıp yapılmadı yalnızca $_SESSION['uye'] olarak kontrol ediliyorsa giriş yapmalı. Ancak 85. satırda güncellenen $table_uyeler den herhangi bir bilgi de kontrol ediliyorsa ilgi alan güncellenmediği için giriş yapmaz. - 05-01-2024, 01:02:25TuncayTEKE adlı üyeden alıntı: mesajı görüntüle
<input type="checkbox" checked / required name="hatirla" value="1"> Beni Hatırla
kutucuğu zorunlu tıklama haline getirdim. baya uğraştım yapamadım. en mantıklısı bu geldi - 05-01-2024, 01:07:58Scriptin geneli kontrol etmeden ancak bu kadar oluyor. Genel anlamda sorun yok. Ama dediğim gibi session başlatıldı mı veya sadece session uye mi kontrol ediliyor. Bu kodlardan anlaşılmıyor.
Cookie hep oluşacaksa 80 ve 87. satırları da bypass edebilirsiniz. Yani hatırla seçse de seçmese de cookie oluşturup devam eder
// if(isset($uye_hatirla)) { $arr['id'] = $r->uye_id; $arr['db_key'] = 'uye_id'; $arr['alanlar']['uye_cookie'] = md5(microtime()); setcookie("bnh", $arr['alanlar']['uye_cookie'], time()+720000000,'/', '.'.DOMAIN); $arr['table'] = $table_uyeler; $k = $db->guncelle($arr); // } - 05-01-2024, 01:12:57Beni hatırla tamamen silinebilirde. fazla bilgim tecrübem yok hocam .cookie nedir nasıl bypass edilir bilmiyorum. o kısmı silince . beni hatırla tikli olsa bile giriş yapmıyorTuncayTEKE adlı üyeden alıntı: mesajı görüntüle
- 05-01-2024, 01:21:21Silmeyeceksin hocam. O kısmı silince yine cookie oluşturmaz. 80 ve 87 satırların başına // işareti koyacaksın.