örn. Bir kayıt formu sadece x miktarını kez kullanılabilir?
PHP için Hızlı ve Kirli Çözüm.
Bir sayfasını ziyaret yaptığınızda, bu sayacı artırır. Çok kez sayfasını die()
s anlamına gelir. Birinin formu gönderdiğinde sadece idam edilecek bir noktada bu kodu koymak seçebilirsiniz.
O her öylesine sık sık sayısını sıfırlar.
Bilinen Hatalar: Takas Çerezler sonları onu çerezleri kapalı olan, onu kırar.
<?php
session_start();
if(!isset($_SESSION['count']))
{
$_SESSION['count'] = 1;
$_SESSION['first'] = time();
}
else
{
// Increase the Count
$_SESSION['count']++;
// Reset every so often
if($_SESSION['first'] < (time() - 500))
{
$_SESSION['count'] = 1;
$_SESSION['first'] = time();
}
// Die if they have viewed the page too many times
if($_SESSION['count'] > 100)
{
die("You have submitted to many times");
}
}
Bu bir kullanıcı başına çözüm istiyorum verilir. Bir bütün sitesi şey ise, sadece yorum ve ben sileceğiz.
Eğer ajax formu göndererek ediyorsanız this oldukça iyi bir kaynaktır.
Ne yazık ki, sağlam bir yöntem, burada yoktur. En iyi yolu, bir çerez saklamak olurdu, ama belli ki onlar çerezleri temizleyebilirsiniz. Siz veritabanında bu depolama sonra, (vb tarayıcı,) onların user-agent ile (md5) kendi IP adresini birleştirerek çeşit başka eşsiz bir dize / id yaparak deneyebilirsiniz, ancak bu muhtemelen olmamalı bazı insanlar inkar edecek reddedildi.