<?php
date_default_timezone_set('Europe/Istanbul');
include 'baglan.php';
function ziyaretci($db) {
$ip = gercekip();
$query = $db->prepare("
SELECT * FROM ziyaretciler
WHERE ip = :ip
AND YEAR(tarih) = :year
AND MONTH(tarih) = :month
AND DAY(tarih) = :day
");
$query->execute([
':ip' => $ip,
':year' => date('Y'),
':month' => date('m'),
':day' => date('d')
]);
$ziyaretciler = $query->fetch(PDO::FETCH_ASSOC);
if ($ziyaretciler) {
// BUGÜN BU İP DEN ZİYARETÇİ VARSA
$query = $db->prepare("
UPDATE ziyaretciler
SET ziyaret = ziyaret + 1
WHERE ip = :ip
AND YEAR(tarih) = :year
AND MONTH(tarih) = :month
AND DAY(tarih) = :day
");
$query->execute([
':ip' => $ip,
':year' => date('Y'),
':month' => date('m'),
':day' => date('d')
]);
} else {
$query = $db->prepare("
INSERT INTO ziyaretciler (ip, ziyaret, tarih)
VALUES (:ip, 1, :tarih)
");
$query->execute([
':ip' => $ip,
':tarih' => date('Y-m-d')
]);
}
}
function gercekip() {
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;
}
ziyaretci($db);
?> php ile sayfa görüntülenmede çift sayım sorunu
10
●176
- 26-09-2023, 23:54:06Üyeliği durduruldumerhabalar php ile tekil hit ve sayfa görüntülenmesi yapmaya çalıştım fakat sayfa görüntülenmesi her sayfayı yenilediğimde +1 artması gerekirken çift artıyor 2 4 6 diye kodumda sorun var mi?
- 27-09-2023, 00:25:53Üyeliği durdurulduarka planda baktım 1 kere istek gönderiyor hocam admin panel entegreli suan sadece anydeskden bakabilme şansınız varmı acabaEndrown adlı üyeden alıntı: mesajı görüntüle
- 27-09-2023, 00:30:07Üyeliği durdurulduteşekkürler hocam fakat bu şekildede calismadinetlook adlı üyeden alıntı: mesajı görüntüle
- 27-09-2023, 00:33:16Ziyaret sayısını nerede çekiyorsunuz onu göremedim, $ziyaret değişkenine o veriyi çekerseniz sorun çözülür.selcukcbk adlı üyeden alıntı: mesajı görüntüle
- 27-09-2023, 00:35:58Üyeliği durdurulduveritabanında her kişinin ipine göre sayfa yenilediğinde ziyaret kısmı +1 alıyor şuan veri geliyor sadece 1 fazla geliyor 1 2 3 4 diye gitmesi gerekirken 2 4 6 diye gidiyornetlook adlı üyeden alıntı: mesajı görüntüle
- 27-09-2023, 00:51:43Anladım hocam , sorun bence ziyaret = ziyaret + 1 kısmında, o kismida diğer alanlarda gibi ziyaret=:ziyaret olarak yapın, alt kısımda da 'ziyaret'=>$ziyaretSonDeger şeklinde değeri gönderin, ziyaretSonDeger değişkeni veri tabanına gitmeden hesaplamanizi ekrana basın ve ne değer gönderdiğinize bakın birde o şekilde deneyinselcukcbk adlı üyeden alıntı: mesajı görüntüle