lostyazilim
tr.link

Sayfayı yeniledikçe sayaç artıyor

6 Mesajlar 697 Okunma
acebozum
tr.link

Yekta Yekta Kimlik Onayı Bekliyor Banlı Kullanıcı
  • Üyelik 28.12.2015
  • Yaş/Cinsiyet 43 / E
  • Meslek Webmaster
  • Konum Denizli
  • Ad Soyad Y** A**
  • Mesajlar 44
  • Beğeniler 8 / 7
  • Ticaret 0, (%0)
Merhaba arkadaşlar benim ürün sattığım bir site var her ürünün altında kendine özgü kaç kişinin görüntülediği bir sayaç var ancak her defasında F5 yaptıkça sayaç sayısı artıyor bunu nasıl engel olabiliriz yardımlarınız bekliyorum. 1 kişinin bakmasıyla 1 defa artsın istiyorum

sayfamdaki kod
$res = $db->query("update " . TABLE_ADS . "" . " set viewed=viewed+1 where id = '" . $id . "'");
return 1;
 

 

wmaraci
reklam

MuhammedArslan MuhammedArslan Msa Web Tasarım Kullanıcı
  • Üyelik 19.02.2017
  • Yaş/Cinsiyet 24 / E
  • Meslek Web Developer
  • Konum Bursa
  • Ad Soyad M** A**
  • Mesajlar 933
  • Beğeniler 136 / 276
  • Ticaret 11, (%100)
ilk arttırdığında session ata. Sonra session kontrolü yap.

session_start();

if(@$_SESSION['sayac']!='1') {

$_SESSION['sayac'] = "1";

$res = $db->query("update " . TABLE_ADS . "" . " set viewed=viewed+1 where id = '" . $id . "'");
return 1;

}


Böylece her oturunda sadece 1 kere kayıt edilir.
 

 

Yekta Yekta Kimlik Onayı Bekliyor Banlı Kullanıcı
  • Üyelik 28.12.2015
  • Yaş/Cinsiyet 43 / E
  • Meslek Webmaster
  • Konum Denizli
  • Ad Soyad Y** A**
  • Mesajlar 44
  • Beğeniler 8 / 7
  • Ticaret 0, (%0)
Hocam dediğinizi uyguladım oldu, ancak yüzlerce ürün var, her ürüne ayrı ayrı girdiğimizde sayaçları artması lazım dediğinizi yaptım 1. ürüne girdiğimde sayaç 1 defa arttı f5 yaptım artmadı tam oldu derken 2. 3. 4. ürünleride geziyorum bu sefer onların sayaçlarıda artmaz oldu.
 

 

Yekta Yekta Kimlik Onayı Bekliyor Banlı Kullanıcı
  • Üyelik 28.12.2015
  • Yaş/Cinsiyet 43 / E
  • Meslek Webmaster
  • Konum Denizli
  • Ad Soyad Y** A**
  • Mesajlar 44
  • Beğeniler 8 / 7
  • Ticaret 0, (%0)

mrarslan adlı üyeden alıntı

ilk arttırdığında session ata. Sonra session kontrolü yap.

session_start();

if(@$_SESSION['sayac']!='1') {

$_SESSION['sayac'] = "1";

$res = $db->query("update " . TABLE_ADS . "" . " set viewed=viewed+1 where id = '" . $id . "'");
return 1;

}


Böylece her oturunda sadece 1 kere kayıt edilir.


Hocam dediğinizi uyguladım oldu, ancak yüzlerce ürün var, her ürüne ayrı ayrı girdiğimizde sayaçları artması lazım dediğinizi yaptım 1. ürüne girdiğimde sayaç 1 defa arttı f5 yaptım artmadı tam oldu derken 2. 3. 4. ürünleride geziyorum bu sefer onların sayaçlarıda artmaz oldu.
 

 

wmaraci
wmaraci

MuhammedArslan MuhammedArslan Msa Web Tasarım Kullanıcı
  • Üyelik 19.02.2017
  • Yaş/Cinsiyet 24 / E
  • Meslek Web Developer
  • Konum Bursa
  • Ad Soyad M** A**
  • Mesajlar 933
  • Beğeniler 136 / 276
  • Ticaret 11, (%100)

Yekta adlı üyeden alıntı

Hocam dediğinizi uyguladım oldu, ancak yüzlerce ürün var, her ürüne ayrı ayrı girdiğimizde sayaçları artması lazım dediğinizi yaptım 1. ürüne girdiğimde sayaç 1 defa arttı f5 yaptım artmadı tam oldu derken 2. 3. 4. ürünleride geziyorum bu sefer onların sayaçlarıda artmaz oldu.


session_start();

if(@$_SESSION['sayac']!=$_SERVER['REQUEST_URI']) {

$_SESSION['sayac'] = $_SERVER['REQUEST_URI'];

$res = $db->query("update " . TABLE_ADS . "" . " set viewed=viewed+1 where id = '" . $id . "'");
return 1;

}


şeklinde deneyebilirsin. Ama böyle başka ürüne gidip tekrar geri geldiğinde sayaç yine artacaktır.

Her ürün için ayrı sayaç oluştur dicem, bu sefer çok fazla session olur. Başka arkadaşların belki daha iyi önerileri olabilir.
Yekta

kişi bu mesajı beğendi.

Yekta Yekta Kimlik Onayı Bekliyor Banlı Kullanıcı
  • Üyelik 28.12.2015
  • Yaş/Cinsiyet 43 / E
  • Meslek Webmaster
  • Konum Denizli
  • Ad Soyad Y** A**
  • Mesajlar 44
  • Beğeniler 8 / 7
  • Ticaret 0, (%0)
Allah razı olsun kardeş tam istediğim gibi oldu.
MuhammedArslan

kişi bu mesajı beğendi.

Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al