Lorsque l'on envoie des données de formulaire via Ajax, les caractères spéciaux et accents envoyés à la page de traitement en base sont remplacés par des caractères "anormaux" (car encodé en UTF8). Par exemple, la saisie du prénom étienne donnera "étienne".

Pour palier à cela, avant votre requête d'insertion en base, il faut utiliser la fonction php utf8_decode().
Ainsi, j'aurai utf8_decode($_POST['prenom']) pour décoder mon prénom qui m'affichera bien étienne dans la base de données.