Encodage de caractères de form html vers bdd MySQL

Résolu/Fermé
Switchd4 Messages postés 31 Date d'inscription samedi 10 novembre 2012 Statut Membre Dernière intervention 8 novembre 2019 - 25 oct. 2019 à 23:44
jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 - 26 oct. 2019 à 01:24
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
A voir également:

1 réponse

jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 649
26 oct. 2019 à 01:24
0