• 20-06-2010, 03:11:21
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba,

    Bilgidiğiniz güzel anlatımlı, lisanı fark etmez (Tabii Türkçe tercihimizdir ) oturumlarla ilgili kaynak var mı? Ufak tefek bir şey değildir isteğim, aynı anda bir çok kişinin girebildiği bir oturum sistemi (Forumlar gibi). Oturumların veritabanında saklandığı...

    Teşekkürler.
  • 20-06-2010, 03:24:42
    #2
    phpde oturumlar iki kütüphanei, sistem ile yapılır 1.si cookie 2.si ise sessiondur
    cookie yani çerezler web tarayıcısında saklanır sessionlar ise serverde. bu yüzden sessionlar daha yaygın kullanılmaktadır. örnek kod yazmak isterdim ama şu an çok yorgunum bu konuya daha sonra yazarım
  • 20-06-2010, 03:25:14
    #3
    Toprağam aşagıdaki sınıf işini görecektir.
    http://www.phpclasses.org/package/33...-in-MySQL.html
  • 20-06-2010, 03:33:16
    #4
    <?php
    session_start();
    $kullanici = "cyclone";
    $sifre     = "napcan";
    if ( $_SESSION['oturum'] != true )
    {
    	if ( isset($_POST['SUBMIT']) )
    	{
    		if ( empty($_POST['kullaniciAdi']) OR empty($_POST['kullaniciAdi']) )
    		{
    			echo "boş alan bırakmayın";
    			exit;
    		}
    		else
    		{
    			if ( $kullanici == $_POST['kullaniciAdi'] AND $sifre == $_POST['sifre'] )
    			{
    				$_SESSION['oturum'] = true;
    				echo 'Giriş Başarılı Yönlendiriliyorsunuz<meta http-equiv="Refresh" content="3; URL='.$_SERVER['PHP_SELF'].'">';
    			}
    			else
    			{
    				echo 'giriş başarısız kullanıcı adını veya şifreyi kontrol edin';
    				exit;
    			}
    		}
    	}
    	else
    	{
    		echo '<form method="post" action=""> kullanıcı adınız<input type="text" name="kullaniciAdi"><br />
    		şifre <input type="password" name="sifre"><br />
    		<input type="submit" name="SUBMIT" value="Gönder"></form>';
    	}
    }
    else
    {
    	echo "hoşgeldiniz sn {$kullanici}";
    }
    ?>
    fırından yeni çıktı . umarım işinize yarar. daha sonra vt ile bilgileri çeken versiyonu bu konuya yazarım.
  • 20-06-2010, 10:50:23
    #5
    Üyeliği durduruldu
    takip et ingilizcedir. anlarsın ama.

    http://phpsec.org/projects/guide/4.html

    http://www.serversidemagazine.com/php/session-hijacking
  • 20-06-2010, 13:21:08
    #6
    Ben kısaca şöyle yapıyorum. Veritabanında bir tabloya id ve data şeklinde iki sütun açıyorum. id haliyle auto_increment oluyor. data'ya | karakteriyle ayrılmış olarak tüm bilgileri dolduruyorum. PHP kodlarımda şöyle bir şey oluyor.

    session_start();
    
    if(md5($_SESSION['user_id'] . $anahtarkelime) == $_SESSION['hash'])
    {
      $query = mysql_query("SELECT * FROM `oturum_tablosu` WHERE `data` LIKE '%user_id=$_SESSION[user_id]%'"); // Burda oturum tablosunda, data sütunu içerisinde ($_SESSION[user_id] değişkenini 2 kabul edersek) 'user_id=2' içeren bir satır arıyor
    
      if(mysql_num_rows($query) == '1')
      {
        $userQuery = mysql_query("SELECT * FROM `kullanıcı_tablost` WHERE `id`='$_SESSION[user_id]'");
    
        if($userQuery)
        {
          $user = mysql_fetch_assoc($userQuery);
          // Ne istiyorsan burada
        }
        else
        {
          echo 'bi hata oldu, kusura bakma';
        }
      }
    }
    else
    {
      echo 'giriş yapmamışsın';
    }
  • 21-06-2010, 13:17:46
    #7
    Üyeliği durduruldu
    mesajlar hakkinda işlem yapmiyorum. ama konuyu durduk yere tartışmaya dönüştürmeyelim. cevap yazanlar yanlış okumuş bile olabilir. sonuçta hepimiz insanız
  • 21-06-2010, 13:51:15
    #8
    sdemirkeser adlı üyeden alıntı: mesajı görüntüle
    mesajlar hakkinda işlem yapmiyorum. ama konuyu durduk yere tartışmaya dönüştürmeyelim. cevap yazanlar yanlış okumuş bile olabilir. sonuçta hepimiz insanız
    Teşekkürler Süleyman Hocam. Acaba sizinde tavsiye edebileceğiniz bir kaynak, örnek var mıdır?
  • 21-06-2010, 14:24:39
    #9
    by_grafitus adlı üyeden alıntı: mesajı görüntüle
    Teşekkürler Süleyman Hocam. Acaba sizinde tavsiye edebileceğiniz bir kaynak, örnek var mıdır?
    Süleyman hocanın vereceği cevap genelde php manual'dir ama belki farklı bir kaynak önerir