Ver Mensaje Individual
  #7 (permalink)  
Antiguo 26/07/2011, 16:25
mitrofan
 
Fecha de Ingreso: mayo-2010
Mensajes: 128
Antigüedad: 14 años, 5 meses
Puntos: 13
Respuesta: Prevenir spam

Cita:
Iniciado por Uncontroled_Duck Ver Mensaje
Puedes guardar la ip del usuario y una marca de tiempo, de forma que cada petición de envío comprueba la ip, le resta a la marca de tiempo actual, la guardada en la base de datos, y si es inferior a 180 segundos (20 envíos a la hora) le muestras un mensaje de que no puede enviarlo todavía o cualquier otro evento que controle la situación.

A esta opción le puedes poner tantas comprobaciones y reglas como quieras, configuración de tiempo mínimo de espera, comprobación de cookies, de ip, de session, de user_agent o todas a la vez...

Saludos,
Gracias, la verdad es que estoy probando a hacerlo como sugieres. Insertando los datos en tablas y comparando fechas y horas con numero de envios.Tengo dos tablas relacionadas (una donde inserto los datos cuando el usuario envia el formulario y otra donde inserto a los que están baneados, y relaciono las tablas por la ip con una clave foranea). Lo que pasa es que al crear más reglas me surge la necesidad de otra tablas y no se si será mejor utilizar también sesiones, y así aligero el consumo, porque quizas sería demasiado tantos inserts y tantos selects. En principio supongo que es mejor hacerlo todo mediante base de datos (comparando los datos del usuario con las tablas y baneando en función de numero de envios en un intervalo de tiempo) porque está todo mucho más controlado, ya que las sesiones se pierden al cerrar el navegador, aunque no creo que un spamer o alguien con ganas de joder se tome tantas molestias si quiere enviar emails masivos ¿no?