Bonjour,
je ne comprend pas.
- J'ai la base en utf8_general_ci.
- Avec mon éditeur de texte (notepad++) j'ai converti chaque page en utf-8(sans BOM).
- Dans ma page index.php (qui est la seul de mon site étant donné que je passe les autres a l'aide d'une fonction :" include (verifPage($_GET['page'])) " )
j'ai bien <meta charset="utf-8" /> dans le <head>
- Dans le htaccess j'ai :
SetEnv PHP_VER 5
AddDefaultCharset UTF-8
AddCharset UTF-8 .html
Mais quand je stock mes variables dans la base de données que je met à jour via :
il stock parfaitement les à, é et è mais par contre les œ il n'y arrive pas. Et ne parlons pas des signes japonais.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 class clVar{ public $FR; public $EN; public $IT; } function MAJVariable2($nomVar, $Base){ $sortie = new clVar(); //MAJ des variables $ActuDroiteFR, $ActuDroiteEN, $ActuDroiteIT $sql9 = "SELECT `Nom`,`FR`,`EN`,`IT` FROM `table` where Nom = '".$nomVar."'"; foreach ($Base->query($sql9) as $row) { $sortie->FR = utf8_encode($row["FR"]); $sortie->EN = utf8_encode($row["EN"]); $sortie->IT = utf8_encode($row["IT"]); } //MAJ Variable $ActuDroite après clique sur bouton Modifier if (isset($_POST["ModifVar"])){ if($nomVar != "default"){ $sql1 = "UPDATE table SET FR= '".utf8_decode($_POST["resultFR"])."',EN= '".utf8_decode($_POST["resultEN"])."', IT= '".utf8_decode($_POST["resultIT"])."' WHERE Nom= '".$nomVar."'"; $req1=$Base->exec($sql1); header('Location: ./index.php?page=38'); } } return $sortie; }
Qu'est-ce que j'ai oublié?
PS : j'ai essayé de renseigner la variable directement via phpmyadmin, là ça stock bien mais quand j’écris via <?php echo $maVar; ?> il m'écrit même pas "éuvre" à la place de "œuvre", j'ai juste droit à : "uvre"
Partager