ACYN adlı üyeden alıntı: mesajı görüntüle
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;

mhmtknbck adlı üyeden alıntı: mesajı görüntüle
<?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.