Caractére spéciaux dans BDD

Résolu
rolly41 Messages postés 244 Date d'inscription   Statut Membre Dernière intervention   -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

J'ai ma base de donnée 'site' en encodage 'utf8_unicode_ci', mes tables et chaque colonne des tables sont aussi en 'utf8_unicode_ci'.

dans ma page d'index.php (encodage 'utf8' avec notepad++) se trouve
<?php
include 'include/connectbdd.php';
?>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>test</title>
<link rel="stylesheet" href="css/style.css">
</head>


Ma page pour me connecter à ma base de données contient
<?php
$servername = 'localhost';
$dbname= 'site';
$username = 'root';
$password = '';

//On essaie de se connecter
try{
$bdd = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
//On définit le mode d'erreur de PDO sur Exception
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo 'Connexion à la base de données réussie';
}

catch(PDOException $e){
echo "Erreur : " . $e->getMessage();
}
?>


Mon problème:

Quand j'ajoute des données avec un "é" ou un "à" à la base de données, ceux-ci ne sont pas repris sous la forme de caractère lisible. Mais malheureusement cela ne me permet pas de trouver les données si je fais une recherche avec un caractère spécial tel que "é" ou "à" dans la recherche de ma page.

Comment puis-je afficher les caractères spéciaux tel quel dans ma base de données sans qu'ils ne deviennent des bidul chelou? N'y des '
eacute;
' ou '
agrave;
' ?

1 réponse

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Faudrait aussi voir le code utilisé pour l'ajout des données en bdd...
Pour peu que tu aies fais la bêtise d'utiliser des fonctions genre htmlspecialchars...
0