Вопросительные знаки при получение данных из базы

демонстрация ошибки

bd.php

 <?php
    $db_host = "127.0.0.1"; // Указывайте IP адрес вместо localhost (При указании localhost он ищет ip адрес)
    $db_name = "anime";
    $db_user = "mysql";
    $db_password = "mysql";
    $db = new PDO("mysql:host=$db_host;dbname=$db_name", $db_user, $db_password);
    ?>

index.php

<?php
    require_once 'plus/bd.php';
    if(!mysqli_set_charset($connection, $charset )){
        print("Ошибка кодировки");
    }
?>

Вид Базы данных

Форма вывода из bd

        <?php
            $names = $db->prepare("SELECT * FROM names ORDER BY RAND() LIMIT 1");
            $names->execute();
            
            // Цикл while для перебора данных
            while($ani = $names->fetch()):
        ?>
        

    <h1 class="h-1"><?=$ani['name'];?></h1>
    <br>
    <p class="p-1"><?=$ani['description'];?></p>
    <br>
    <p class="p-2"> ID в списке:<?=$ani['id'];?></p>
    <?php endwhile; ?>

Ответы (1 шт):

Автор решения: VikiMayson

Непонятно почему вы используете PDO а кодировку в mysqli указываете.

$db = new PDO("mysql:host={$db_host};dbname={$db_name};charset=utf8", $db_user, $db_password);
→ Ссылка