Las sentencias dinámicas son sentencias SQL que se crean como cadenas de texto (strings) y en las que se insertan/concatenan valores obtenidos de alguna fuente (normalmente proveniente del usuario), lo que puede hacer que sean vulnerables a inyección SQL si no se sanean las entradas, como por ejemplo:
```php
$id_usuario = $_POST[\"id\"];
mysql_query(\"SELECT * FROM usuarios WHERE id = $id_usuario\");
```
Eso es un ejemplo de una vulnerabilidad grave en la seguridad de una aplicación (web o no) porque si el usuario introdujese un valor como
```php
DROP TABLE usuarios;
```
nos encontraríamos con que la sentencia ejecutada sería:
```sql
SELECT * FROM usuarios WHERE id = 1; DROP TABLE usuarios;
```
Y se eliminaría la tabla Usuarios con todos los datos contenidos en ella.
**¿Cómo puedo evitar que la inyección SQL ocurra en PHP?**