![Neurótico](http://static.forosdelweb.com/fdwtheme/images/smilies/scared.png)
He pensado en hacer que compruebe si se esta enviando desde el formulario para que lo permita, pero como lo podria hacer?? Aunque en verdad no se si sea lo correcto por que no se con que script aran esos registros automaticamente.
Gracias
| |||
Seguridad en formularios Hola amigos, he estado haciendo un registro de usuarios, pero siempre un usuario malicioso me ingresa miles de registros y eos hace que aparezca en la lista. Queria saber como prevenir eso?? ![]() He pensado en hacer que compruebe si se esta enviando desde el formulario para que lo permita, pero como lo podria hacer?? Aunque en verdad no se si sea lo correcto por que no se con que script aran esos registros automaticamente. Gracias |
| |||
Particularmente para mis formularios de registro y demás como primordial implemento el típico campo de "ingrese el código que ve en la imágen". Ya con eso evitarias el ingreso repetitivo de datos por programas automáticos. Por otro lado, y para evitar los ingresos manuales mal intencionados, opté por pedir unicamente en el formulario de registro un apodo, y un mail. Una vez que el usuario ingresa esos datos, le envío un correo a su casilla con un link que deberá presionar para activar su cuenta, y continuar con el proceso de registro donde se piden los demás datos necesarios. También el script valida que el mail que el usuario ingresa, no haya sido registrado por algún otro usuario anteriormente, con lo que logro que si X usuario tiene ganas de molestarme registrándose varias veces, al menos se tenga que hacer una cuenta de correo distinta para cada vez. En fin, esos son mis métodos para proteger mis formularios, espero que te sean útiles. Saludos. |
| |||
Hola a todos amigos, yo incluso lo que haria es inutilizarle el acceso mediante la ip, como banearle, haciendo que registre su ip en una bd. Asi cuando se conecte, si usa la misma ip le impedira el acceso a donde tu indiques. Suerte!!!
__________________ :risa: En la vida hay que buscar soluciones, da todas la vueltas que haya que dar para conseguirlo, da igual que la solucion sea estupida, lo que importa es que funcione y sea segura :risa: [email protected] |
| |||
lo del ip no se? lo del ip creo que no sirve ya pues en mi pais por lo menos y en varios mas, las empresas de internet no te asignan un ip unico sino que cada vez que reinicias la maquina la ip cambia entonces al anular la ip estarias anulando a posibles futuros usuarios saludos
__________________ DJJJ |
| ||||
podrías quizá Podrías quizá bannear la IP por 6 horas y no para siempre. De esa forma si un usuario quiere fastidiarte, tendrá que conectarse de diversas computadoras o bien, conectarse y desconectarse varias veces, lo cuál no creo que le sea nada grato. Alternativa 2 Esta se puede combinar con cualquiera que hayas ideado. Métele una cookie a la PC molestona. Cada vez que alguien que tiene tu special cookie quiera llenar un formulario, ya después de que lo haya llenado cargas la pantalla: |
| |||
ok buena idea no lo habia pensado ![]() de paso haber si me ayudas,como puedo hacer si tengo una lista de ip en un archivo de texto y quiero que se borre cada 1 hora o sea ip - tiempo de entrada me ayudas???
__________________ DJJJ |
| ||||
en texto está cañón... Es una lata tratar con texto, no hay que liarse tanto. En una simple tablita de tu base de datos puedes conseguirlo de una forma muy sencilla, pero tendría que conocer un poquito sobre cómo conectarte con la base de datos y manipular la información. Te puedo dar una idea de cómo iría la onda. Los campos de la tabla podrían ser:
Código:
Ahora, te fabricas 2 funciones, llamadas:-------- TABLA: IPS_BANEADAS ----------- campo: id, autonumérico. campo: ip, la IP del usuario que llenó un formulario. campo: fechaingreso, ingresas el momento en que rellenó el form. campo: minutos_baneado, el número de minutos que lo quieres fuera. Cita: is_banned($ip);//regresa 1 si la IP está aún baneada, 0 si ya no lo está. is_banned($ip); //no regresa valor bannear_ip($minutos_baneados,$ip); Recibe como parámetro la IP que quieres consultar. Esta función te regresará un 1 si la IP no está banneada, 0 si lo está. En forma interna, primero verificará que la IP existe en la BD y si así es, entonces esta función va a hacer una suma: $fechaliberacion = $fechaingreso + $minutos_baneado; Tanto fechaingreso como minutos_baneado lo toma de la base de datos y si nota que: Puedes simplemente regresar el valor 1 (diciendo que la IP no está banneada) o bien, borrar primero el valor de la tabla y luego entonces regresar el valor 1. bannear_ip($minutos_baneados,$ip); Hace una simple inserción a la BD con la IP del visitante que llenó el form. |
| |||
Solucion 1. Al darse de alta registre una cookie, y al volver a dar de alta checaba que si estaba registrado no dejaba insertar en la bd pero sino obviamente se insertaba. Respuesta. No funcionó, siempre me siguieron insertando los registros ![]() Solucion 2. (En proceso) Código PHP: Código PHP: Espero alguien heche la mano |
| ||||
Hola ThunderFx, mirando tu código me surge una pregunta: el que la función te devuelva siempre 0, ¿no será por que preguntas por el número de resultados después de hacer uso del mysql_num_rows? Prueba a sacar el valor de $total antes del while: Código PHP:
__________________ http://www.nosoynadie.net/ |