Encodage de caractères de form html vers bdd MySQL

Résolu
Bonjour,

Je suis en train de créer from scratch un site web pour mon usage personnel, et je recontre quelques soucis, sûrement liés à l'encodage des caractères, quand j'utilise des formulaires html pour insérer des données dans ma base de données MySQL (en local).

Voici comment je crée mon objet base :
$bdd = new PDO('mysql:host=127.0.0.1;dbname=my_db;charset=utf8', $login, $password);


Et la ligne que j'utilise pour faire ma requête INSERT (assez classique) :
$insert_query = $bdd->prepare('INSERT INTO membres(prenom) VALUES(?)');
$insert_query->execute(array($_POST['prenom']));


Je précise que la variable $_POST['prenom'] est récupérée via un formulaire html à la ligne suivante :
<label for="prenom">Prénom : </label><input type="text" name="prenom" />


Néanmoins j'obtiens en sortie :
- $_POST['prenom'] = "J�r�my" (via un echo)
- Champ MySQL --> J??r??my

J'imagine que cela vient de la variable $_POST['prenom'] mais je ne vois pas comment résoudre le problème...

Chacune de mes pages comprend la balise :
<meta charset="utf-8" />


Auriez-vous une piste ou une solution svp ?

Merci d'avance !

Configuration: Windows / Chrome 77.0.3865.120

1 réponse