Je rechercherais une incompatibilité entre l'encodage de caractères utilisé dans votre interface Web et celui utilisé au niveau de la base de données. Si votre interface Web utilise UTF-8, par exemple, et que votre base de données utilise l'encodage MySQL par défaut de latin1
, alors vous devez configurer vos tables avec DEFAULT CHARSET=utf8
.
Utilisez mysql_real_escape_string()
ou mysqli, au fait. addslashes()
n'est PAS protection adéquate contre l'injection SQL.