Teşekkürler ilginiz için,
şöyle bir çözüm buldum. Kişinin kayıt olduğu zamanı time(); fonksiyonu ile veritabanına kayıt ediyorum. Tekrar kayıt olmak istediğin yine time() fonksiyonu ile kontrol ediyorum. Eğer kayıt ile şu anki time() zamanı arasındaki fark 30dan az ise bekletiyorum.
Bu şekilde herhangi bir sıkıntı olur mu acaba?
Yoğun bir sisteminiz var ise sürekli mysql e sorgu göndermek sisteminizi yavaşlatabilir, bunun yerine;
<?php
session_start();
error_reporting(0);
mysql_connect("localhost","root","");
$sure= "600"; //10 dk
?>
<form action="" method="POST">
<input type="text" name="bilgi"> <input type="submit" value="Gönder">
</form>
<?php
if ($_POST['bilgi']) {
if (($_SESSION['kontrol']+$sure)>time()) { //Kontrol ediliyor
echo ("10 dk geçmeden ikinci bir post gönderemezsiniz");
die();
}
$ekle=mysql_db_query("dbadi","insert into tabloadi (kolon) values ('$bilgi')");
$_SESSION['kontrol']=time();
echo "başarı ile eklendi.";
}
?>
Arkadaşın verdiği sistemde SESSION yerine COOKIE kullanarak yapabilirsin. SESSION tarayıcıyı kapatıp açtığında silinir COOKIE biraz daha güvenli olabilir böyle bir sistemde. Mysql'i de yormadığı için en mantıklısı bu yöntemdir.