Geçen sene köşeme konuk ettiğim bir ismi yeniden hatırlatmak istiyorum: Ray Kurzweil. Kendisi 1948 doğumlu bir mucit ve gelecek bilimci. Özellikle bilgisayar ortamında yazıyı sese çevirme (text to speech), ses tanıma, karakter tanıma (OCR) gibi alanlarda kendisini otorite konumuna getiren icatlara sahip.
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
$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...
Currently 3.19/5
Değelendirmek için üye girişi yapmanız gerekmektedir
bu makalede kullanmış olduğunuz HTTP_REFERER, HTTP_USER_AGENT gibi sunucu değişkenlerine güvenmek pek de sağlıklı değil zira 5 satır curl kodu ile darma dağan edilebilirler.
UYARI: SANALKURS'ta yer alan materyaller ile ilgili her türlü sorumluluk hazırlayan veya gönderene aittir. SANALKURS'ta yer alan hiçbir makale, yazarından izinsiz başka bir yerde yayınlanamaz. SANALKURS kullanıcıları ve üyeleri, üçüncü kişilerin telif hakkı sahibi bulunduğu her türlü fikri eser, fotoğraf, resim vb. materyal ve ürünleri kullanamazlar. SANALKURS kullanıcı ve yazarlarının, üçüncü kişilerin telif hakkı sahibi olduğu yazı, resim vb. ürünleri kullanması durumunda, her türlü hukuki ve cezai sorumluluk kendilerine aittir. Söz konusu haksız kullanım nedeniyle SANALKURS .NET'in hiçbir hukuki sorumluluğu bulunmamakta olup, haksız kullanım nedeniyle SANALKURS.NET'in üçüncü kişilere ödemek zorunda kalabileceği her türlü tazminat ve/veya adli/idari para cezaları ilgili Sanalkurs kullanıcılarından rücu edilecektir.
İSTATİSTİKLER
ÇEVRİMİÇİ
138 Ziyaretçi, 1 Üye yuzaki Bugün: 784, Dün: 4674, Bu Ay: 20436, Toplam Ziyaret: 1048302, Toplam Üye: 92366, Son Üye:khnt Toplam Ders: 1645, Toplam Yazar: 40, Toplam Dosya: 43, Toplam Link: 109