Merhaba
Ben siteme yapılan erişimleri nasıl kayıt altında tutabilirim
Günlük erişim
Haftalık erişim
Aylık erişim
Yıllık erişim
Bu tarzda
Örneğin siteye bugün 5 kişi bu hafta 20 kişi bu ay 50 kişi bu yıl 200 kişi tarzında
PHP Ziyaretçi verisi Hakkında
15
●276
- 16-01-2024, 16:48:01
- 16-01-2024, 16:49:49Üyeliği durdurulduHocam bir fonksiyonla sayfa bazlı da yapabilirsin gelen kullanıcının ipsine göre sanırım dbde saklamak istyiyosun log tutarsın bunları mysql komutlarıyla haftalık aylık olarak count la saydırabilirsin. ipleri de benzersiz yaparsın.
- 16-01-2024, 16:51:35Örnek olarak bakabilecegim doküman tarzı bir veri varmı çok profesyonel değilim kodlamadajanjakruso adlı üyeden alıntı: mesajı görüntüle
- 16-01-2024, 16:52:59Dmden fiyat rica edebilirmiyimErayEfe adlı üyeden alıntı: mesajı görüntüle
- 16-01-2024, 17:00:48Üyeliği durduruldugokhangencebay adlı üyeden alıntı: mesajı görüntüle

Bence şöyle bir tablo yapısı kurarsın,
Mesela 1 haftalık kayıtları saydırabileceğin sql komutu:
SELECT COUNT(*) AS kayit_sayisi FROM acc_logs WHERE created_at >= CURDATE() - INTERVAL 1 WEEK
php ile de şöyle bir şey yapabiirsi sayfaya girdi diyelim kullanıcı :
function ipAl() { $ipaddress = ''; if (isset($_SERVER['HTTP_CLIENT_IP'])) $ipaddress = $_SERVER['HTTP_CLIENT_IP']; else if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR']; else if(isset($_SERVER['HTTP_X_FORWARDED'])) $ipaddress = $_SERVER['HTTP_X_FORWARDED']; else if(isset($_SERVER['HTTP_FORWARDED_FOR'])) $ipaddress = $_SERVER['HTTP_FORWARDED_FOR']; else if(isset($_SERVER['HTTP_FORWARDED'])) $ipaddress = $_SERVER['HTTP_FORWARDED']; else if(isset($_SERVER['REMOTE_ADDR'])) $ipaddress = $_SERVER['REMOTE_ADDR']; else $ipaddress = 'UNKNOWN'; return $ipaddress; } - 16-01-2024, 17:55:32janjakruso adlı üyeden alıntı: mesajı görüntüle
Mesela örneğin şu şekilde yaptığımda manuel olarak sql den veri eklediğimde sayı artıyor siteye girildiğinde mysql a veriyi kaydetmesi için nasıl yapmamız gerek
sql verisi
-- -- Tablo için tablo yapısı `ziyaretciler` -- CREATE TABLE `ziyaretciler` ( `id` int(11) NOT NULL, `ipadres` varchar(222) DEFAULT NULL, `tarih` date DEFAULT NULL, `cihaz` varchar(11) DEFAULT NULL, `year` varchar(4) DEFAULT NULL, `day` varchar(2) DEFAULT NULL, `month` varchar(2) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
---------
fonksiyon
---------
<?php /* Bugün verilerini çek */ $bugun = date("Y-m-d"); $bugunTekiLCek = $db->prepare("select * from ziyaretciler where tarih='$bugun' group by ipadres"); $bugunTekiLCek->execute(); /* <========SON=========>>> Bugün verilerini çek SON */ /* Bu Hafta verilerini çek */ $cevir = strtotime('-7 day',strtotime($bugun)); $buhafta = date("Y-m-d",$cevir); $buhaftaTekilCek = $db->prepare("select * from ziyaretciler where tarih>='$buhafta' group by ipadres"); $buhaftaTekilCek->execute(); /* <========SON=========>>> Bu Hafta verilerini çek SON */ /* Bu Ay verilerini çek */ $cevir = strtotime('-30 day',strtotime($bugun)); $buay = date("Y-m-d",$cevir); $buayTekilCek = $db->prepare("select * from ziyaretciler where tarih>='$buay' group by ipadres"); $buayTekilCek->execute(); /* <========SON=========>>> Bu Ay verilerini çek SON */ /* Bu Hafta Pasta İstatistikleri */ $buHaftaDesktopPie = $db->prepare("select * from ziyaretciler where tarih>='$buhafta' and cihaz='desktop' group by ipadres"); $buHaftaDesktopPie->execute(); $desktopPie = $buHaftaDesktopPie->rowCount(); $buHaftaMobilePie = $db->prepare("select * from ziyaretciler where tarih>='$buhafta' and cihaz='mobile' group by ipadres"); $buHaftaMobilePie->execute(); $mobilePie = $buHaftaMobilePie->rowCount(); /* <========SON=========>>> Bu Hafta Pasta İstatistikleri SON */ ?>
-------- sqlden veriyi çekerek sayıyı yansıtabildiğim fonksiyon ------- <?=$bugunTekilCek->rowCount()?> <?=$buhaftaTekilCek->rowCount()?> <?=$buayTekilCek->rowCount()?>
- 16-01-2024, 18:15:18Üyeliği durduruldugokhangencebay adlı üyeden alıntı: mesajı görüntülegokhangencebay adlı üyeden alıntı: mesajı görüntüle
Hocam siteye girdi ya mesela şöyle birşey olabilir:
$db->query("insert into ziyaretciler(ip_adresi) values('$ip_adresi')"); bunlar eklersin db den de ip adresi sütununu benzersz yap o şekilde olur bnce - 16-01-2024, 18:20:01index.php ye eklediğimde sayfaya mobil veya masaüstünden giriş yapıldığında veri artmıyor bu komutla :/janjakruso adlı üyeden alıntı: mesajı görüntüle
