Hola,
tengo un proyecto en PHP entre manos y una duda, que es preferible escapar los caracteres HTML antes de guardar la información en la base de datos o escaparlos después de recogerlos de la base de datos.
Gracias.
| |||
escapar caracteres HTML Hola, tengo un proyecto en PHP entre manos y una duda, que es preferible escapar los caracteres HTML antes de guardar la información en la base de datos o escaparlos después de recogerlos de la base de datos. Gracias. |
| |||
Respuesta: escapar caracteres HTML a que te refieres con escapar??? transformar por ejemplo <span> a <span> ??? porque para eso tienes la funcion htmlspecialchars que te hace justo eso :D |
| |||
Respuesta: escapar caracteres HTML gracias por responder djrony, no me refiero a una función en concreto, me refiero a si es mejor escapar los caracteres HTML antes o después de introducirlos en la base de datos, es decir, tenemos un formulario en el que los usuarios introducen datos, esos datos se guardan en la base de datos, la pregunta es ¿cuándo es mejor escapar los caracteres HTML, antes de guardarlos en la base de datos o después cada vez que se muestren por panltalla? |
| |||
Respuesta: escapar caracteres HTML Ok, Entiendo ahora lo que me dices, primero decirte que yo por regla general siempre evito tener que permitir guardar caracteres html en base de datos, pero si en tu caso tienes que guardarlos lo que te diria por seguridad es lo siguiente Usando striptags elimines aquellas tags html que no deseas permitir por ejemplo sis olo qiuieres permitir tags strong, h1, h2 ,etc. Luego uses addslashes para escapar el texto en si. con esto seria suficiente. En resumen guarda en la base de datos los caracteres html pero siempre antes pasandole addslashes para que no te de errores al grabar y luego al mostrar pues tienes que usar stripslashes para que se muestre correctamente. |
| |||
Respuesta: escapar caracteres HTML Hola de nuevo, Creo que no me he explicado bien. Conozco las funciones usadas para escapar caracteres HTML (como '<' o'>') mysql_real_escape_strings o htmlentities. Lo que estoy preguntando es si es mejor usar estas funciones antes de introducir los datos en la base de datos y guardar los caracteres escapados, o por el contrario es recomendable usar estas funciones cuando necesites sacar información de la base de datos y mostrarla por pantalla (en la web). Ejemplo: intro dato -> escapo caracteres HTML -> guardo en la base de datos -> saco dato -> muestro dato. o intro dato -> guardo en la base de datos -> saco dato -> escapo caracteres HTML -> muestro dato. |
| ||||
Respuesta: escapar caracteres HTML Por el problema de MySQL Injection no es aconsejable ingresar datos sin escapar comillas a la BD. En el caso de etiquetas HTML que puedas mostrar, debes tener cuidado tb, puede presentarse un ataque XSS, debería tb convertir los datos a sus entidades HTML antes de guardarlos. OJO tb deberías verificar que las etiquetas estén cerradas, etc etc |
Etiquetas: |