11.09.2018 Views

Aprender a desarrollar un sitio Web con PHP y MySQL

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

24/4/2014 ENI Training - Libro online<br />

Control de datos y redirección de páginas<br />

1. Introducción<br />

Los datos introducidos en <strong>un</strong> formulario no son seguros. De hecho, los usuarios pueden escribir letras<br />

cuando solicita <strong>un</strong>a edad o introducir <strong>un</strong> código SQL que puede destruir su nombre. Esta última acción<br />

se denomina inyección SQL. Para evitar que <strong>un</strong> usuario pueda hacer inoperativo su <strong>sitio</strong> <strong>Web</strong>, es<br />

necesario proteger los datos introducidos. Se puede comprobar en JavaScript (lado cliente) que los<br />

datos introducidos se corresponden <strong>con</strong> lo que quiere, pero no es el propósito ni es suficiente. También<br />

debe codificar las comprobaciones en <strong>PHP</strong> (lado servidor) antes de guardar los datos en la base de<br />

datos.<br />

2. Datos obligatorios<br />

Esta prueba <strong>con</strong>siste en comprobar si el usuario ha reasignado <strong>un</strong>a zona del formulario.<br />

Las zonas de tipo texto, textarea, hidden y password se comprueban de la siguiente manera:<br />

<br />

En las áreas de tipo radio-button, checkbox y lista, la comprobación es:<br />

<br />

3. Eliminación de espacios no deseados<br />

Alg<strong>un</strong>as veces los usuarios añaden espacios al final de su apellido y luego lo recuperan <strong>con</strong> el espacio<br />

<strong>con</strong> $_POST y guardan este valor en la base de datos. Esto puede causar alg<strong>un</strong>os problemas si<br />

intenta comparar los apellidos. De hecho, "GÓMEZ" es distinto de " GÓMEZ ".<br />

Para evitar esto, añada la f<strong>un</strong>ción trim(), que elimina los espacios y a <strong>con</strong>tinuación el valor.<br />

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!