• 17-11-2018, 20:48:16
    #10
    Mehmetmasa adlı üyeden alıntı: mesajı görüntüle
    Bu şekilde denermisiniz.

    <?php
    
                           if(isset($_POST["submit"])){
                               $kadi = $_POST["kadi"];
                               $sifre = $_POST["sifre"];
                               $query = $db->query('SELECT  * FROM uyeler WHERE kadi = ? AND sifre = ?');
                               $query ->execute([
                                   $kadi , $sifre
                               ]);
                               if($query->rowCount() > 0){
                                   $_SESSION["oturum"] = true;
                                   $_SESSION["kadi"] = $kadi;
                                   $_SESSION["sifre"] = $sifre;
                                   echo '<b style="color:green;">Giriş Yapıldı</b>';
                                   header('refresh:1; url=index.php');
                               }else{
                                   echo "<b style='color:red;'>Kullanıcı Adı Veya Şifre Yanlış</b>";
                               }
                           }
    
    ?>
    Böyle çalışmaz hocam, execute fonksiyonu prepare fonksiyonu ile dönen nesneye özel bir fonksiyondur. query ile çalışmaz. Yani
    $db->query
    yerine
    $db->prepare
    kullanmak zorunlu ya da query ile kullanıyorsanız doğrudan bilgileri girmelisiniz.


    @ScriptEvin eğer veritabanı yapınızı atarsanız belki daha çok yardımcı olabiliriz.
  • 18-11-2018, 11:21:04
    #11
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Sorun çözülmüştür arkadaşlar teşekkürler.
  • 19-11-2018, 14:17:22
    #12
    $kadi = $_POST["kadi"];
    $sifre = $_POST["sifre"];
    $query = $db->query('SELECT * FROM uyeler WHERE kadi = ? AND sifre = ?');
    $query ->execute(array($kadi, $sifre));
    if($db->rowCount() > 0){
    $_SESSION["oturum"] = true;
    $_SESSION["kadi"] = $kadi;
    $_SESSION["sifre"] = $sifre;
    echo '<b style="color:green;">Giriş Yapıldı</b>';
    header('refresh:1; url=index.php');
    }else{
    echo "<b style='color:red;'>Kullanıcı Adı Veya Şifre Yanlış</b>";
    }
    }
  • 19-11-2018, 14:23:59
    #13
    Yıllar önce böyle bir video çekmiştim, biraz eski ama halen iş görür.


    https://www.youtube.com/watch?v=hGECn8kdJXw
  • 19-11-2018, 20:45:08
    #14
    Şifre bilgileri veritabanında md5 tarzı bir şifreleme yöntemiyle saklanıyorsa;

    $sifre = md5($_POST['sifre']);

    Farklı bir yöntem varsa karşılaştırma fonksiyonuda vardır. Normalde ilk önce kullanıcı adına göre satır çekilir ve satır boş değilse şifre daha sonra kontrol ettirilir. Fakat bu kullanımda yanlış değil.