• 08-03-2009, 00:44:18
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    merhaba arkadaşlar ben bi kullanıcı giriş sistemiyo yapıyorum ancak bi türlü giriş yapamıyorum kodlar aşağıda yazdım nerde sorun var yardımcı olursanız sevinirim..

    giris.php
    <?php
    if (!$hata =="") {
    echo "<font face=\"verdana\" size=\"2\" color=\"#800000\"><b>Giriş Sırasında Hata Oluştu</b><br>";
    echo "Şifre veya Kullanıcı Adı Yanlış. Tekrar Deneyin<br>";
    }
    ?>
    <form action="giris_tamamla.php" method="post">
    <table width="100%">
      <tr>
        <td width="35%" bordercolor="#99CCFF">Kullanıcı Adı :</td>
        <td width="65%" bordercolor="#99CCFF"><span style="color: navy; border-style: none; background-color: silver">
          <input type="text" name="user" id="user" size="20">
        </span></td>
      </tr>
      <tr>
        <td bordercolor="#99CCFF">Şifre :</td>
        <td bordercolor="#99CCFF"><span style="color: navy; border-style: none; background-color: silver">
          <input type="password" name="sifre" is="sifre" size="20">
        </span></td>
      </tr>
      <tr>
        <td bordercolor="#99CCFF">&nbsp;</td>
        <td bordercolor="#99CCFF"><label>
          <input type="submit" name="submit" id="submit" value="Giriş">
        </label></td>
      </tr>
    </table>
    
    </form>
    giris_tamamla.php
    <?php
    
    $user = $_POST['user'];
    $sifre = $_POST['sifre'];
    
    if ((!$user =="") and (!$sifre =="")) {
    include("ayar.php");
    $sql = "select * from yonetici where user='$user' and sifre='$sifre' ";
    $kontrol = mysql_query($sql);
    $kayitsayisi = mysql_num_rows($kontrol);
    if ($kayitsayisi == "0") {
    header ("Location: giris.php?hata=yes");
    } else {
    $kontrol_ok = mysql_fetch_array($kontrol);
    setcookie ("kullanici", "$kontrol_ok[user]");
    header ("Location: yonetici.php");
    }
    }
    else {
    header ("Location: giris.php?hata=yes");
    }
    ?>
  • 08-03-2009, 00:49:04
    #2
    $_SESSION kullansan daha iyi cookie değiştirilebilinir.
  • 08-03-2009, 00:53:28
    #3
    <?php
    $user = $_POST['user'];
    $sifre = $_POST['sifre'];
    if ((!$user == "") and (!$sifre == ""))
    {
        include ("ayar.php");
        $sql = "select * from yonetici where user='$user' and sifre='$sifre' ";
        $kontrol = mysql_query($sql);
        $kayitsayisi = mysql_num_rows($kontrol);
        if ($kayitsayisi == "0")
        {
            header("Location: giris.php?hata=yes");
        } else
        {
            $kontrol_ok = mysql_result($kontrol,0,"user");
            setcookie("kullanici", $kontrol_ok[user], time()+3600); //3600=1 saat
            header("Location: yonetici.php");
        }
    } else
    {
        header("Location: giris.php?hata=yes");
    }
    ?>
    ama güvenli degil
  • 08-03-2009, 00:54:17
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    ---
    Cevap verilmiş
  • 08-03-2009, 00:56:22
    #5
    LaCReMeL adlı üyeden alıntı: mesajı görüntüle
    <?php
    $user = $_POST['user'];
    $sifre = $_POST['sifre'];
    if ((!$user == "") and (!$sifre == ""))
    {
        include ("ayar.php");
        $sql = "select * from yonetici where user='$user' and sifre='$sifre' ";
        $kontrol = mysql_query($sql);
        $kayitsayisi = mysql_num_rows($kontrol);
        if ($kayitsayisi == "0")
        {
            header("Location: giris.php?hata=yes");
        } else
        {
            $kontrol_ok = mysql_result($kontrol,0,"user");
            setcookie("kullanici", $kontrol_ok[user], time()+3600); //3600=1 saat
            header("Location: yonetici.php");
        }
    } else
    {
        header("Location: giris.php?hata=yes");
    }
    ?>
    ama güvenli degil
    yaa hocamm peki güvenli olması için ne yapabilirimm..
  • 08-03-2009, 01:02:26
    #6
    ACYN adlı üyeden alıntı: mesajı görüntüle
    yaa hocamm peki güvenli olması için ne yapabilirimm..
    setcookie("kullanici", $kontrol_ok[user], time()+3600); //3600=1 saat

    yerine $_SESSION['kullanici'] = $kontrol_ok['user'];

    kontrolleir yaparkende

    if ( empty($_SESSION['kullanici']) )
    {
    echo 'giriş yapmadınız.';
    }
    else
    {
    //yönetici kodları
    }
  • 08-03-2009, 01:02:33
    #7
    ACYN adlı üyeden alıntı: mesajı görüntüle
    yaa hocamm peki güvenli olması için ne yapabilirimm..
    sadece bu cookie kontrol'ü yetmez. serverden da kontrol etmelisin ben cookie yi değiştirerek rahatlikla girebilirim sisteme. yada cookie ye şifreyide koy ikisini birden kontrol et(xss yememek şartı ile =) ).

    ikincisi get ile aldigin verilere mysql_real_escape_string uygula.

    $user = mysql_real_escape_string($user);

    şimdilik diyeceklerim bunlar.
  • 08-03-2009, 01:03:33
    #8
    bu arada yönetici girişi için bende session öneririm. zampir kodlari vermiş zaten
  • 08-03-2009, 01:26:23
    #9
    zampir adlı üyeden alıntı: mesajı görüntüle
    setcookie("kullanici", $kontrol_ok[user], time()+3600); //3600=1 saat
    yerine $_SESSION['kullanici'] = $kontrol_ok['user'];
    kontrolleir yaparkende
    if ( empty($_SESSION['kullanici']) )
    {
    echo 'giriş yapmadınız.';
    }
    else
    {
    //yönetici kodları
    }
    hocam o yönetici kodları kısmını anlamadımm... nası yönetici kodlarıı