Редкие символы (вместо Тильд и n) с использованием include () для ссылки на другой PHP


у меня есть 2 файла : Это первый, когда я запускаю функцию verdatos (), я получаю все нормально т. е. с тильдами и N ,в моем bd все таблицы имеют хромоту utf8_general_ci

<?php
function verdatos(){
    $host_db = "localhost";
    $user_db = "root";
    $pass_db = "";
    $db_name = "basedatosmaster";
    $tbl_name = "Preguntastable";

    $conexion = new mysqli($host_db, $user_db, $pass_db, $db_name);

    if ($conexion->connect_error) {
    die("La conexion falló: " . $conexion->connect_error);
    }


    $query = "SELECT * FROM Preguntastable";

    $result = $conexion->query($query);


    while ($fila=mysqli_fetch_array($result)) {
        echo "$fila[ID_pregunta] ";
        echo "<h2>$fila[title_preg]</h2> ";
        echo "$fila[sec_pregunta]<br>";
    }
      mysqli_close($conexion);
}
$jeje=verdatos();
?>

вместо этого, когда я вызываю его в другой файл php я получаю странные символы В вы видите N и Тильды

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Preguntas</title>
</head>
<body>
<div>
    <fieldset>
        <legend>Preguntas:</legend>
        <div>
            <?php
                include("verpregu.php");
                $jeje=verdatos();
            ?>
        </div>
    </fieldset>
</div>
</body>
</html>
Author: Mariano, 2016-10-28

2 answers

Что происходит, так это то, что PHP, по умолчанию, всегда возвращает следующий заголовок: "Content-Type: text/html" поэтому вы должны добавить charset. Попробуйте следующие варианты. Добавить.

   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
      <!-- O - - >
   <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
     /*  O */
   <?php header('Content-type: text/plain; charset=utf-8'); ?>
   /* O */
   <?php header('Content-type: text/html; charset=
      ISO-8859-1') ; ?>
 0
Author: Dev. Joel, 2016-10-28 05:44:19

Используется в head HTML:

<meta charset="utf-8" />

И в PHP после установки подключения к базе данных, например:

$conexion = new mysqli($host_db, $user_db, $pass_db, $db_name);

    if ($conexion->connect_error) {
    die("La conexion falló: " . $conexion->connect_error);
    }

$conexion->query("SET NAMES 'utf8'");
 0
Author: AntoTGa, 2016-10-29 13:26:00