Merhaba,

analytics her ne kadar bunu yapıyor olsada zırtpırt oraya gir o linki tıkla buna bak uğraşmak yerine belirgin 5-6 istatistiği kendi adminimde görmek için böyle bir işe kalkıştım.

<?
require_once('baglanti.php');

// ip bulma fonksiyonu
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;
   } 
$visitor_ip = GetIP();

$visitor_request_url =$_SERVER['REQUEST_URI'];

$visitor_lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2); 

$today_date=time();
		
$visitor_agent= $HTTP_USER_AGENT;

if (isset ( $_SERVER['HTTP_REFERER'] ) )
	{
		preg_match('@^(?:http://)?([^/]+)@i', $_SERVER['HTTP_REFERER'], $matches);
		$visitor_referer = $matches[1];

		$sql=mysql_query("INSERT INTO Ziyaretci VALUES (NULL,'$visitor_ip','$today_date','$visitor_request_url','$visitor_referer','$visitor_lang','$visitor_agent')");
		
	}else{
		
		$sql=mysql_query("INSERT INTO Ziyaretci VALUES (NULL,'$visitor_ip','$today_date','$visitor_request_url','direk','$visitor_lang','$visitor_agent')");
		}

?>
şeklinde kodlarım var. gidişatından da anlaşılacağı üzere ip buluyorum, bir kaç detay öğreniyorum ve ardından kimin aracılığı ile girdiğini öğrenmeye başlıyorum. bir site üzerinden geldiyse veritabanıma gönderen site yok adres satırına yazıp geldiyse de direk olarak işlemi tamamlıyorum.

Problem şu, bir ziyaretçi yahoo dan arama yaptı bir link buldu, tıkladı ve siteme geldi. $_SERVER['HTTP_REFERER'] veritabanıma yahoo olarak işleniyor. Ama sorun şu; bu ziyaretçi benim sitemde başka bir sayfaya girdiğinde bu kez $_SERVER['HTTP_REFERER'] değeri benim site adresim oluyor (haliyle bu yaptığı da doğru).

Ben bu aşamada bu ziyaretçi bir $_SERVER['HTTP_REFERER'] değerinden geldikten sonra oturumu sonlanana kadar (mesela 20dk lık bir timeout süresinde) aynı değeri kaydetsin istiyorum ki gelen x bir siteden gelen ziyaretçinin izini sürebileyim.

Bunu ilk $_SERVER['HTTP_REFERER'] değerini session a aktararak yapmayı denedim ama başarılı olamadım

Güzel bir fikri, örnek bir kodu ya da uygulaması olup da paylaşabilecek arkadaşlara sesleniyorum çözüm önerisi olan?