mavzermete 1
mavzermete
Bvural41 1
Bvural41
noisiv 1
noisiv
Manwe Work 1
Manwe Work
xranzei 1
xranzei
Hikaye Ekle

Sitenize bağlanan kişilerin IP'sini Kaydedin

  • Konuyu başlatan Konuyu başlatan esoLate07
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 2
  • Görüntüleme Görüntüleme 326

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

Arkadaşlar bazı sitelerde "Metin2" 'de genellikle İp Adresleri saklanmıyor. Bence serverdaki hırsızlık olanlarının giderilmesi vb. durumlarda ip adresi işe yarayabilir ..
Bunun için ben ip Adreslerini kaydeden fakat aynı gün içerisinde birden çok giriş yapmış olan ip'lerin kaydedilmemesi yolunu göstereceğim.
IP Adresimiz : 213.111.111.111 Olsun Tarihte 12.11.2012; Bu kişi aynı tarih içerisinde giriş yapmış ise kaydetmeyecek fakat IP aynı ve tarih farklı ise IP kayıt edilecektir ..

Aşağıda PHP Kodlarını bulabilirsiniz ,,

Sitemizin veritabanı ile bağlantılı olup olmadığını sorguluyoruz ve Tarih, IP'yi çekiyoruz ..
'ayarlar.php'

PHP:
 <?php

$hata="Mysql baglantisi saglanamadi!";
$verihata="Veritabani ile baglanti saglanamadi!";
$database = "Test"; # Veritabanı adınız.
$host = "localhost"; #Veritabanı hosting ip'si 
$dbuser = "root";     #Veritabanına giriş için user adınız.
$dbpass = "123456"; #Veritabanı şifreniz.

$baglan = @mysql_connect($host,$dbuser,$dbpass);
if(! $baglan) die ($hata);
@mysql_select_db($database,$baglan) or die ($verihata);

    $tarih2 = (date("d.m.Y"));
    $simdiki_ip = GetIP();
    
#IP NUMARA
function GetIP(){
    if(getenv("HTTP_CLIENT_IP")) {
        $ip = getenv("HTTP_CLIENT_IP");
    } elseif(getenv("HTTP_X_FORWARDED_FOR")) {
        $ip = getenv("HTTP_X_FORWARDED_FOR");
        if (strstr($ip, ',')) {
            $tmp = explode (',', $ip);
            $ip = trim($tmp[0]);
        }
    } else {
        $ip = getenv("REMOTE_ADDR");
    }
    return $ip;
}
?>

Şimdi ise siteye "Login" olmak isteyen ve Login'i geçerli olan kişinin IP Numarasını alıp kayıt ettiricez ..
Bunun için uye-kontrol.php Sayfası oluşturuyorum.
'uye-kontrol.php'

PHP:
<?php include('ayarlar.php'); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
<title>esoLate07</title>
<link rel="stylesheet" href="css/style.css" />
</head>

<body>
<div id="ust"></div>
    <div id="cerceve" align="center">
        <form action="index.php" method="post" name="form1">
        <table width="316" border="0">
  <tr>
    <td colspan="2"><div align="left" class="font1">
      <div align="left"><b>esoLate07 IP SAKLANIMI</b></div>
    </div></td>
    </tr>
  <tr>
    <td width="158" class="font2">Panel Giriş Adı </td>
    <td width="148"><div align="left">
      <input name="user_name" type="text" class="t1" id="user" maxlength="24" />
    </div></td>
  </tr>
  <tr>
    <td class="font2">Panel Giriş Şifresi </td>
    <td><div align="left">
      <input name="user_pass" type="password" class="t1" id="pass" maxlength="24" />
    </div></td>
  </tr>
  <tr>
    <td colspan="2"><div align="right">
      <input name="sbButon" type="submit" class="b1" id="sbButon" value="Giriş" />
  </div></td>
    </tr>
  <tr>
    <td colspan="2"><div align="left" class="font2">
    <?php
    session_start();
    ob_start();
    $user_name =    $_POST['user_name'];
    $user_pass    =    $_POST['user_pass'];
    $ipsor    =    mysql_query("SELECT * FROM IP TABLO ADIMIZ WHERE ip='$simdiki_ip' and date='$tarih2'");
    $uyesor    =    mysql_query("SELECT * FROM UYE TABLO ADIMIZ WHERE user_name='$user_name' and user_pass='$user_pass'"); 
        if($_POST['sbButon'] == 'Giriş')
            {
            if(@mysql_num_rows($uyesor)>0)
            {
                    $_SESSION["login"] = "true";
                    header("Location:user.php");
                    if(@mysql_num_rows($ipsor)>0)
                        {}
                     else
                     {                
                 $tarih2 = (date("d.m.Y"));
                 $simdiki_ip = GetIP();
                 $ipkayit = mysql_query("INSERT INTO IP TABLO ADIMIZ(ip, date) VALUES('$simdiki_ip', '$tarih2')");
                    }
                }
            else
             {
                 echo "Kullanıdı adı ya da şifre yanlış!";
              }
    ob_end_flush();
    ?>
    </div></td>
  </tr>
</table>
</form>
    </div>
<div id="alt"><div align="right">esoLate07 / Caner Alptekin | Copyright 2012</div></div>
</body>
</html>

Hafif bir tasarım yapmıştım ben style.css Dosyası da şudur;
HTML:
/* esoLate07 CSS */

body    {
    background-color:#FFFFFF;
    margin:0;
        }
/*Id Gruplari*/
#ust    {
    background-color:#006699;
    width:%100;
    height:50px;
        }
#alt    {
    padding-top:15px;
    background-color:#000000;
    width:100%;
    height:32px;
    position:fixed;
    bottom:0;
    font-family:Verdana, Arial, Helvetica, sans-serif;
    font-size:10px;
    color:#666666;
        }
#cerceve{
    margin-top:10%;
    width:%100;
    height:auto;
        }
#buton    {
    padding-top:18px;
    background-color:#006699;;
    width:175px;
    height:32px;
    float:left;
        }
#buton:hover    {
    padding-top:18px;
    background-color:#333333;
    width:175px;
    height:32px;
        }
#exit    {
    padding-top:18px;
    background-color:#006699;
    width:110px;
    height:32px;
    float:right;
        }
#exit:hover    {
    padding-top:18px;
    background-color:#333333;
    width:110px;
    height:32px;
        }
#who    {
    background-color:#333333;
    width:200px;
    height:32px;
    padding-top:18px;
    font-family:Verdana, Arial, Helvetica, sans-serif;
    font-size:10px;
    color:#FFFFFF;
    text-align:center;
    float:right;
        }
a        {
    font-family:Verdana, Arial, Helvetica, sans-serif;
    font-size:14px;
    color:#CCCCCC;
    text-align:center;
        }
a:hover        {
    font-family:Verdana, Arial, Helvetica, sans-serif;
    font-size:14px;
    color:#FFFFFF;
    text-align:center;
        }
/*Class Gruplari*/
.t1        {
    background-color:#FFFFFF;
    width:170px;
    height:25px;
    border:1px solid #CCCCCC;
    color:#333333;
    font-family:Arial, Helvetica, sans-serif;
    font-size:12px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
        }
.b1        {
    background-color:#333333;
    width:75px;
    height:25px;
    border:1px solid #333333;
    color:#CCCCCC;
    font-family:Arial, Helvetica, sans-serif;
    font-size:12px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
        }
.b1:hover        {
    background-color:#333333;
    width:75px;
    height:25px;
    border:1px solid #333333;
    color:#FFFFFF;
    font-family:Arial, Helvetica, sans-serif;
    font-size:12px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
        }
.font1    {
    font-family:Verdana, Arial, Helvetica, sans-serif;
    font-size:16px;
    color:#006699;
        }
.font2    {
    font-family:Verdana, Arial, Helvetica, sans-serif;
    font-size:12px;
    color:#333333;
        }

Bir site panelimden almış olduğum kısımdı. Biraz php'den Anlayan arkadaşlar daha kolay editleyebilicektir fakat şunları belirtmek istiyorum. Veritabanındaki Üyelerin kayıtlı olduğu tablodaki sütunların isimi user_name ve user_pass olarak yaptım ben. İp Tablosu için de ip ve date sütunları oluşturdum. Forumdaki Textbox isimleri ise user_name ve user_pass'dır.

Anlatım bana aittir, aklında bir soru olan arkadaş Özel mesaj atarsa yardımcı olabilirsem bakarım ..

İyi forumlar. :)
 
Son düzenleme:
Yorumunuz için teşekkürler, sanal oyundaki hırsızlık olaylarını azaltmak için uygulanabilir.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst