Ошибка для отображения арабских данных с PHP MySQL - PullRequest
0 голосов
/ 10 декабря 2018

У кого-нибудь есть идея, пожалуйста?Моя проблема заключается в том, что в результате мой SQL-запрос на арабском языке отображается с такими символами, как «¹Ù Ù ¹Ù Ù Ù».Пока я делаю все:

  • для моей базы данных: cp1256_general_ci
  • столбец таблицы: utf_bin8
  • подключение к базе данных:
// CONNEXION BDD
$pdo = new PDO('mysql:host=localhost;dbname=jeu', 'root', '', array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING,
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
));


<?php
    require_once('inc/init.inc.php');
    $req= $pdo -> query("select * from proposition ");
    while($data=$req -> fetch(PDO::FETCH_ASSOC)){
       echo' <form action="" method="post">';
       echo $data['question'].'<br />';
       echo $data['id_propo'].'<br />';
       echo '<input type="radio" name="rep" value='.$data["rep1"].'+'.$data['id_propo'].' />'.$data['rep1'].'<br />';
    echo    '<input type="radio" name="rep" value='.$data["rep2"].'+'.$data['id_propo'].' />'.$data['rep2'].'<br />';
    echo    '<input type="radio" name="rep" value='.$data["rep3"].'+'.$data['id_propo'].' />'.$data['rep3'].'<br />';
    echo    '<input type="radio" name="rep" value='.$data["rep4"].'+'.$data['id_propo'].' />'.$data['rep4'].'<br /><br />';
       }

 echo '</form>';

?>

1 Ответ

0 голосов
/ 10 декабря 2018

Вам нужно преобразовать базу данных в тип utf8mb4_general_ci вместо utf8.Я думаю, это лучший выбор для вас.Также убедитесь, что вы применили HTML-заголовок:

<meta charset=”utf-8”>
...