Título: validar formulario desde servidor en PHP / Textarea Publicado por: guiamoscow en 29 Diciembre 2018, 19:03 pm Buenas tardes amigos y felices fiestas.
Antes que nada quiero agradecerles por la pagina es muy buena y brinda mucha información. No encontré mi problema en los foros por eso escribo mi pregunta aquí a ver si hayo respuesta. Necesito validar el textarea de mi formulario, que rechace escritura de url y palabras mal sonantes como sex, porn, etc.. Por favor si me pueden dar una mano estaré muy agradecido. Envío los codigos de formulario del php Código del formulario form.html Código
Codigo del PHP validation-send.php Código
Título: Re: validar formulario desde servidor en PHP / Textarea Publicado por: febef en 8 Enero 2019, 23:02 pm Buenas
Me agarraste de con buena onda :xD Leete esto sobre regex en php, visita esta pagina→ http://php.net/manual/es/function.preg-match-all.php y desp usa este→ https://www.phpliveregex.com/p/qxq (con la función preg_match_all) De manera que quede tu código: Código
Saludos! Título: Re: validar formulario desde servidor en PHP / Textarea Publicado por: chatiel en 12 Enero 2019, 06:29 am Hola guiamoscow
Lo que nuestro amigo febef quiere decir es que con la funcion "preg_match_all" o "str_replace" lo que puedes hacer es simplemente cambiar el texto por un espacio vacio. Acá te dejo el código para que lo pongas DEBAJO de la linea "$mensaje = check_input($_POST['mensaje']);" Esta es una opción que yo la llamé filtro. Código: <?php Otra opción es: Código: <?php Adicionales: Te recomiendo quitar el siguiente texto del primer archivo Código: pattern="[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*@[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{1,5}" Otra observación es que la etiqueta "<b>" es de xhtml 1.0 ahora para negritas es la etiqueta <strong> espero que te sirva. Suerte bro. Título: Re: validar formulario desde servidor en PHP / Textarea Publicado por: #!drvy en 15 Enero 2019, 13:59 pm Hola,
Tu HTML tiene varios errores.. - Como ya ha comentado el compañero @chatiel, el pattern que tienes es inútil si usas un campo tipo email. - Tienes varios nombres e ids que no corresponden con el for del label. - Intenta no utilizar inline CSS, es feo y una mala practica (úsalo solo cuando no te queda otra). - En vez de utilizar breaks (<br>) para espaciar, usa un div u otro contenedor. - Si todos los label son en negrita, usa CSS para decirles que se muestren en una linea negrita. - No deshabilites el autocomplete a no ser que tengas una razón de peso. El PHP lo mismo: - No te fíes de HTTP_CLIENT_IP ni de X_FORWARDED_FOR. Son simples cabeceras las cuales el cliente puede modificar desde su navegador. - En el check_data realmente no estas comprobando nada (check..) si no que estas devolviendo un valor filtrado. - No pones la lógica del envió del correo en el IF "anti-spam"... - Realmente en ningún momento validas nada. Con todo esto, me da que lo que has hecho es un copy-paste barato de algún lado...Los compañeros te han dado algunos ejemplos de como puedes buscar palabras malsonantes.. con una URL seguirías con el mismo principio.. pero.. ¿realmente necesitas eso? Por lo que veo, vas a enviar un correo sobre una consulta de viaje (probablemente a una agencia de viaje), no lo vas a exponer de manera publica ni nada parecido. Hay infinitas formas de saltarse los filtros: en vez de cabron pongo cab.ron por ejemplo, o, en vez de http://google.com pongo h t t p : / / google (punto) com... No tiene mucho sentido si no vas a exponerlo al publico. Saludos Título: Re: validar formulario desde servidor en PHP / Textarea Publicado por: chatiel en 18 Enero 2019, 06:01 am Excelente bro!
No pensé que exista otro enfermo como yo en SEO ;-) |