Merhaba arkadaşlar mesela bir siteniz var hitinizin en çok nereden geldiğini hangi sayfanıza geldiğini bulmak için bu yöntemi kullanabilirsiniz.
İlk önce rapor adında veritabanımızı ve tablomuzu oluşturuyoruz alanınıda 7 yapıyoruz.
- id
- tarih
- explorer
- referans
- sayfa
- ulke
- ip
index.php Kodlarımızı yazmaya başlayalım.
<?php
//Veritabanına Bağlanmayı Bilmeyenler İçin ayar.php //içeriğini en son vericem
include("ayar.php");
//Referer Kayıt İşlemi
//Daha önce bu ip kayıt oldumu soruyoruz
$ip = $_SERVER['REMOTE_ADDR'];
$ipsorgu = mysql_query("SELECT * FROM rapor");
while($yaz=mysql_fetch_array($ipsorgu)){
$raporip = $yaz['ip'];
}
//Siteye gelen kullanıcının ipsi veritabanındaki ipye
//eşit ise bize echo içindekileri yazıcak
if($ip=="$raporip"){
echo "Bu ip daha önceden kayıt edilmiş.";
//else eğer değilse kayıt işlemini gerçekleştiricek
}else{
//Tarih Bilgileri
$tarih=(DATE("d.m.Y"));
//Browser Bilgileri
$explorer=$_SERVER['HTTP_USER_AGENT'];
//Hangi Sayfaa Geldiği
$sayfa=$_SERVER['REQUEST_URI'];
//Ülke Bilgisi
$ulke=$_SERVER['HTTP_ACCEPT_LANGUAGE'];
//Hangi Siteden Geldiği
$referans=$_SERVER['HTTP_REFERER'];
//Ve sql komutu ile kayıt işlemi gerçekleşiyor
$raporekle = mysql_query("INSERT INTO rapor (tarih,explorer,sayfa,ulke,referans,ip) values ('$tarih','$explorer','$sayfa','$ulke','$referans','$ip')");
}
?>
Şimdi kayıt işlemimizi tamamladık bu sefer çekme işlemini yapalım
<?php
include("ayar.php");
echo "<table width=\"1024\" border=\"1\">
<tr>
<td width=\"63\"><div align=\"center\"><strong>Tarih</strong></div></td>
<td width=\"213\"><div align=\"center\"><strong>Browser Bilgisi </strong></div></td>
<td width=\"257\"><div align=\"center\"><strong>Referans Site </strong></div></td>
<td width=\"197\"><div align=\"center\"><strong>Sayfa</strong></div></td>
<td width=\"185\"><div align=\"center\"><strong>Ülke - İp </strong></div></td>
</tr>";
//Sql Sorgumuz
$sor = mysql_query("SELECT * FROM rapor ORDER BY id DESC");
while($yaz=mysql_fetch_array($sor)){
//İp Çekiyoruz
$ip = $yaz['ip'];
//Tarihi Çekiyoruz
$tarih = $yaz['tarih'];
//Browser Bilgisini Çekiyoruz
$explorer = $yaz['explorer'];
//Referans Bilgisini Çekiyoruz
$referans = $yaz['referans'];
//Ülke Bilgisini Çekiyoruz
$ulke = $yaz['ulke'];
//Sayfa Bilgisini Çekiyoruz
$sayfa = $yaz['sayfa'];
//Tablo id Çekiyoruz
$id = $yaz['id'];
//Ve yazdırmaya başlıyoruz
echo " <tr>
<td>$tarih</td>
<td>$explorer</td>
<td> $referans</td>
<td>$sayfa</td>
<td>$ulke - $ip </td>
</tr>";
}
echo "</table>";
?>
ayar.php kodları
<?php
$database = "veritabani";
$host = "localhost";
$dbuser = "kullanici";
$dbpass = "sifre";
$baglan = @mysql_connect($host,$dbuser,$dbpass);
if(! $baglan) die ("Mysql Baglantisi Yapilamadi");
@mysql_select_db($database,$baglan) or die ("Veri Tabanina Baglanti Yapilamadi");
?>
Elimden geldiği kadar anlatmaya çalıştım siz kendiniz dahada geliştirebilirsiniz. Yapamayan veya herhangi bir yerde takılan forum'a yada bu makale altında sorularını sorabilir.İyi Çalışmalar...