Mysql
 sql >> Base de données >  >> RDS >> Mysql

Prévention de l'injection PHP SQL avec des opérations de chaîne

Bien sûr, vous pouvez vous protéger contre l'injection avec mysql_real_escape_string($postID) , tant que cela ne vous dérange pas une requête à chaque fois que vous appelez la fonction.

PDO et MySQLi offrent bien plus qu'une simple protection contre les injections. Ils permettent des instructions préparées qui peuvent protéger contre l'injection sans plusieurs appels à la base de données. Cela signifie des performances globales plus rapides. Imaginez essayer d'insérer dans une table un enregistrement utilisateur avec 30 colonnes... c'est beaucoup de mysql_real_escape_string() appels.

Les instructions préparées envoient toutes les données en même temps avec la requête et les échappent sur le serveur en une seule requête. Mysql DB prend en charge les déclarations préparées, les anciennes bibliothèques php mysql_ ne les prennent pas en charge.

Il est temps de passer à mysqli ou de préférence à PDO - vous ne regarderez jamais en arrière.