• 27-01-2021, 22:02:52
    #1
    <?php error_reporting(0);
    @ob_start();
    @session_start();
    @include("include/baglan.php");
    @include("include/fonksiyonlar.php");
    oturumkontrolana();
     ?>
    bu kodlar her projemde kullanırım. sunucuda sıkıntısız çalışır oturum açmamışsa giris.php ye yönlendirir. ama wamp serverde bu kodlar varken sayfa bembeyaz ve giris.php ye yönlendirmiyor. ama şimdi yaptığım bir çalışmada çalışma yaparken canlı görmeliyim. nasıl bu sorunu çözebilirim. yardımlarınızı alabilirmiyim.
  • 27-01-2021, 22:12:25
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Yönlendirmek için oturumkontrolana(); bu fonksiyon mu çalışıyor? Fonksiyonu görmek lazım session olunca mı yönlendirme yapıyor? şuanda ob_start ile başlatmışsınız ama herhangi bir session tanımlaması yok
  • 27-01-2021, 22:15:31
    #3
    umut28 adlı üyeden alıntı: mesajı görüntüle
    Yönlendirmek için oturumkontrolana(); bu fonksiyon mu çalışıyor? Fonksiyonu görmek lazım session olunca mı yönlendirme yapıyor? şuanda ob_start ile başlatmışsınız ama herhangi bir session tanımlaması yok
    fonksiyon bu ( internete yüklediğimde sıkıntı yok)
    function oturumkontrolana(){
         $ogrencimail = $_SESSION['ogrencimail'];
         $ogrencisifre = $_SESSION['ogrencisifre'];
         $oturumkontrol = mysql_query("select * from ogrenci where ogrencimail ='$ogrencimail'  and ogrencisifre ='$ogrencisifre'"); 
         $durum = mysql_fetch_array($oturumkontrol);
         if($durum){ }else{ echo '<script language="javascript">window.location="giris.php";</script>'; die(); }
     }
  • 27-01-2021, 22:22:59
    #4
    error_reporting(0); kısmını kaldırınca



    ( ! ) Error: Call to undefined function mysql_connect() in C:wamp64wwwtuskarakutuincludebaglan.php on line 1( ! ) Fatal error: Uncaught Error: Call to undefined function mysql_connect() in C:wamp64wwwtuskarakutuincludebaglan.php on line 1
    hatalarını alıyorum
    oysa baglan.php de kodlarım şöyle : veritabanı adıda root


    <?php $bag = mysql_connect("localhost","root",""); mysql_select_db("root",$bag) or die    ("<br><br><center><font color='red'><strong>Veritabanina Baglanti Yapamadim! </strong> <br><br>Lutfen Bilgileri Kontrol Ederek Yeniden Deneyiniz.</center>"); 
    
    mysql_query("SET NAMES 'utf8'");
    ?>
  • 27-01-2021, 22:26:25
    #5
    hocam sunucuda mysql_connect fonksiyonu desteklenmiyor olabilir başka bir bağlantı yöntemiyle deneyin
  • 27-01-2021, 22:34:12
    #6
    Sürüm ve Pdo kaynaklı olduğunu anladım.
    Fonksiyonlarıyla birlikte bana kütüphanesini paylaşacak olan varmı. oturumkontrol için PDO
  • 27-01-2021, 22:46:10
    #7
    ahmetderyalar adlı üyeden alıntı: mesajı görüntüle
    Sürüm ve Pdo kaynaklı olduğunu anladım.
    Fonksiyonlarıyla birlikte bana kütüphanesini paylaşacak olan varmı. oturumkontrol için PDO
    Maalesef hocam benim elimde hazır bir kütüphane bulunmuyor ama github üzerinde illa ki bulursunuz
  • 27-01-2021, 22:47:11
    #8
    teşekkürler
  • 27-01-2021, 22:58:35
    #9
    Kimlik doğrulama veya yönetimden onay bekliyor.
    mysql_connect php 7 ve üzerinde çalışmayacaktır, kodlarınız oldukça eski ve sql injectiona müsait durumda. Fonkiyonunuzu şu şekilde değiştirmeyi deneyin;
    function oturumkontrolana(){
         global $database; // database adlı değişkende pdo bağlantısı yaptığınızı varsayıyorum
         if ( !isset( $_SESSION['ogrencimail'] ) || !isset( $_SESSION['ogrencisifre'] ) ) return false;
         $ogrencimail = $_SESSION['ogrencimail'];
         $ogrencisifre = $_SESSION['ogrencisifre'];
         $oturumkontrol = $database->prepare("SELECT COUNT(*) FROM ogrenci WHERE ogrencimail = :mail AND ogrencisifre = :password");
         $oturumkontrol->bindValue("mail", $ogrencimail, PDO::PARAM_STR);
         $oturumkontrol->bindValue("password", $ogrencisifre, PDO::PARAM_STR);
         $oturumkontrol->execute();
         $durum = $oturumkontrol->fetch()[0];
         if ( $durum ) return true; return false;
     }
    Sonrasında oturumkontrolana(); şeklinde kullanmak yerine

    if ( oturumkontrolana() ) {
      header('Location: giris.php', true, 303);
      exit;
    }
    Tarzında bir kullanım yapmanızı tavsiye ederim.