No confíes nunca en los datos enviados por un usuario. Un campo de formulario puede contener código malicioso. Tres reflejos protegen lo esencial.
1. Protegerse de las inyecciones SQL
Nunca insertes directamente un valor del formulario en una consulta. Utiliza consultas preparadas (PDO): el valor se trata como un simple dato, nunca como código SQL.
2. Protegerse de los fallos XSS
Antes de mostrar un dato introducido, pásalo por htmlspecialchars(). Eso convierte las etiquetas en texto inofensivo e impide la inyección de scripts.
3. Validar y filtrar
- Comprueba el formato esperado (¿un email se parece a un email?).
- Utiliza filter_var() para validar o limpiar.
- Controla la longitud y el tipo de los datos.
Para recordar: consultas preparadas contra las inyecciones SQL, htmlspecialchars() contra el XSS. La regla de oro: no confiar nunca en las entradas.