<?php
if(!$_COOKIE['sayildi']){
$oku = file_get_contents('sayac.txt');
$oku = $oku+1;
echo "$oku kez görüntülendi.";
file_put_contents('sayac.txt',$oku);
setcookie("sayildi",TRUE,time()+86400);
}
?>
sayac.txt
Yani kaç defa aynı yere görüntülendi gösterir
__________________________
<?php
function ip_adres()
{
if (!empty($_SERVER['HTTP_CLIENT_IP']))
{
$ip= $_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ip= $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else{
$ip= $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
$ipcik = ip_adres();
$tarih = date('d.m.Y H:i:s');
$browser = getenv('HTTP_USER_AGENT'); // BROWSER: $browser -
$referans = $_SERVER['HTTP_REFERER'];
$kayit = fopen("iplog.txt", "a");
fputs($kayit, "IP: $ipcik - TARIH: $tarih - REFERANS: $referans n");
fclose($kayit);
echo $ipcik;
?>
___________
Yukarıdaki kod ise size
iplog.txt olarak içine " ip adresi - Referans - zaman - tarih olarak log alıyor
Sitenize eklemeniz gereken 2 kod
6
●742
- 14-02-2024, 23:55:38Sunucumda bir site var hemen adama iletiyorum eklesin sitesine ama kendisi sunucuma geleli 3 gün oldu 6 bin içerik ekledi sayaç kodunu eklesek biraz sunucuyu şişirmez mi ??
Şaka bir yana kesinlikle hevesini kırmak istemem ama bu 2 kodda sadece sunucuyu şişirir anladığım kadarıyla yeni başlamışsın veritabanı ve mysql hakkında araştırma yapmanı öneririm aslında çözüm olacaktır yeni yollar açacaktır. - 14-02-2024, 23:58:27Önerin için teşekkürlerTheAvenqer adlı üyeden alıntı: mesajı görüntüle
Sunucuyu şişirceğini sanmıyorum uzun zamandır kullanıyorum bu yüzden tavsiye etmek istedim - 15-02-2024, 00:00:23Bu kodun bir web sitesini şişirmesi muhtemel değildir. Kod, sadece ziyaretçilerin sayfa görüntülemelerini izlemek için basit bir sayaç işlevi sağlar. Ancak, bazı durumlarda büyük trafikle veya çok sık güncellenen bir sayfa ile kullanıldığında, sık sık dosya okuma ve yazma işlemleri gerçekleşebilir. Bu durumda, sunucunun kaynaklarını gereksiz yere kullanabilir ve performansı olumsuz etkileyebilir. ( dedi chatgpt)
- 15-02-2024, 00:10:09Merhabalar, kodunuz için teşekkürler. Bende kendi kullandığım kodu bırakayım;
<?php include "connect.php"; $ip = $_SERVER['REMOTE_ADDR']; // IP adresini veritabanında kontrol et $checkStmt = $db->prepare("SELECT id FROM visitors WHERE ip = :ip"); $checkStmt->bindParam(":ip", $ip); $checkStmt->execute(); if ($checkStmt->rowCount() === 0) { $api_url = "http://ip-api.com/json/{$ip}"; $response = file_get_contents($api_url); if ($response) { $data = json_decode($response); $country = $data->country; $region = $data->regionName; $city = $data->city; $insertStmt = $db->prepare("INSERT INTO visitors (ip, country, region) VALUES (:ip, :country, :region)"); $insertStmt->bindParam(":ip", $ip); $insertStmt->bindParam(":country", $country); $insertStmt->bindParam(":region", $region); $insertStmt->execute(); } else { // IP adresi veritabanında yoksa ekle $insertStmt = $db->prepare("INSERT INTO visitors (ip, country, region) VALUES (:ip, :country, :region)"); $insertStmt->bindParam(":ip", $ip); $insertStmt->bindParam(":country", "Bilinmiyor"); $insertStmt->bindParam(":region", "Bilinmiyor"); $insertStmt->execute(); } } // Toplam tekil ziyaretçi sayısını hesapla $totalVisitors = $db->query("SELECT COUNT(id) FROM visitors")->fetchColumn(); $db = null; ?> - 15-02-2024, 00:13:01Şişirmeyi dosya boyutu olarak algılamış başta zaten dediğim durumu son cümlesinde anlatmışNookta adlı üyeden alıntı: mesajı görüntüle