Comment puis-je prévenir l'injection SQL en PHP?

Si la saisie de l'utilisateur est inséré, sans modification, dans une requête SQL, puis l'application devient vulnérable à L'injection SQL, comme dans l'exemple suivant:

$unsafe_variable = $_POST['user_input']; 

mysql_query("INSERT INTO `table` (`column`) VALUES ('$unsafe_variable')");

C'est parce que l'utilisateur peut saisir quelque chose comme value'); DROP TABLE table;--, et la requête devient:

INSERT INTO `table` (`column`) VALUES('value'); DROP TABLE table;--')

Ce qui peut être fait pour empêcher que cela se produise?