x frasidipace
Non fai prima ad integrare lo script di reCaptcha di Google?
hum... quando posso do un occhio a come funziona la cosa...
x mzanella
Funzionerebbe solo per bot sincroni e sequenziali. Un bot asincrono o parallelo potrebbe comunque inviare qualche migliaio di form al secondo alla tua pagina PHP.
hum... quindi forse è meglio una cosa del genere ? che ne pensi/pensate ?
da mettere nel momento in cui si riceve $_POST
Codice:
function antibot_1min()
{
append_str(getIp2(),'1min.txt');
}
da mettere a inizio pagina
Codice:
function antibot_1min_start()
{
$stay = file2('stay.txt')[0]; //non cambiare l'indice (il file 'stay.txt' ha infatti una sola riga)
if ($stay != date("i")) //se è passato più di un minuto...
{
scrivi_str(date("i"),'avventura/antibot/stay.txt'); // aggiorna 'stay.txt' al minuto corrente
scrivi_str('','avventura/antibot/1min.txt'); // CANCELLA lista ip del minuto precedente
}
$arr = file2('1min.txt');
$count = 0;
for ($k=0; $k < count($arr); $k += 1)
{
if ($arr[$k] == GetIp2())
$count += 1;
}
if ($count >= 6)
{
echo '<br><br><strong>molti form compilati in pochissimo tempo';
echo '</strong>...<a href="miapagina.php"><strong>riprova</strong></a> tra 1 minuto...<br><br>';
die();
}
}
ps: per far prima non ho scritto le "dipendenze"
pps: tanto tenere gli ip minuto per 1 minuto in una lista (che si auto-cancella il minuto successivo) non è (non credo) sia considerata raccolta di ip, giusto ?...