Я выполняю поиск по автозаполнению, и когда я получаю данные из поиска, он не приходит в utf8, но все страницы имеют utf8, и мой .htaccess даже имеет «AddDefaultCharset UTF-8».
Все работает нормально, за исключением результатов, отображаемых в бриллиантовой рамке с вопросительным знаком.Я пытался декодировать (), но у меня это не сработало.Любые идеи, как я могу отфильтровать результаты, чтобы прийти в UTF8?
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "root", "", "vamos_onde");
// Check connection
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
if(isset($_REQUEST["term"])){
// Prepare a select statement
$sql = "SELECT locals.id, locals.name, locals.adress, locals.type, locals.image, locals.opening, locals.closing, locals.ranking, GROUP_CONCAT(music_type.category ORDER BY locals.id SEPARATOR ', ') AS category FROM locals JOIN music_type ON FIND_IN_SET(music_type.id, locals.category_id) WHERE locals.active = 1 AND locals.name LIKE ? OR category LIKE ? GROUP BY locals.id";
if($stmt = mysqli_prepare($link, $sql)){
// Bind variables to the prepared statement as parameters
mysqli_stmt_bind_param($stmt, "ss", $param_term, $param_term);
// Set parameters
$param_term = $_REQUEST["term"] . '%';
// Attempt to execute the prepared statement
if(mysqli_stmt_execute($stmt)){
$result = mysqli_stmt_get_result($stmt);
// Check number of rows in the result set
if(mysqli_num_rows($result) > 0){
// Fetch result rows as an associative array
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
$local_r = '';
echo "
<div class='display_search'>
<a href='locals/show/" . $row['id'] . "'>
<div class='display_search_results'>
<div class='display_search_results_image'>
<img src='assets/images/locals/" . $row['image'] . "' alt='" . $row['name'] . "'>
</div>
<div class='display_search_results_info'>
<p> " . $row['name'] . " " . $row['adress'] . " </p>
<p> " . $row['category'] . "</p>
</div>
<div class='display_search_results_ranking'>";
$local_r = $row['ranking'];
switch ($local_r) {
case $local_r == 5:
echo "<i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star'></i>";
break;
case $local_r >= 4.5:
echo "<i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star-half-alt'></i>";
break;
case $local_r >= 4:
echo "<i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star'></i><i class='far fa-star'></i>";
break;
case $local_r >= 3.5:
echo "<i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star-half-alt'></i><i class='far fa-star'></i>";
break;
case $local_r >= 3:
echo "<i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i>";
break;
case $local_r >= 2.5:
echo "<i class='fas fa-star'></i><i class='fas fa-star'></i><i class='fas fa-star-half-alt'></i><i class='far fa-star'></i><i class='far fa-star'></i>";
break;
case $local_r >= 2:
echo "<i class='fas fa-star'></i><i class='fas fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i>";
break;
case $local_r >= 1.5:
echo "<i class='fas fa-star'></i><i class='fas fa-star-half-alt'></i><i class='far fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i>";
break;
case $local_r >= 1:
echo "<i class='fas fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i>";
break;
case $local_r >= 0.5:
echo "<i class='fas fa-star-half-alt'></i><i class='far fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i>";
break;
case $local_r >= 0:
echo "<i class='far fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i><i class='far fa-star'></i>";
break;
};"
</div>
</div>
</a>
</div> ";
}
} else{
echo "<br><p>No matches found</p><br>";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
}
// Close statement
mysqli_stmt_close($stmt);
}
// close connection
mysqli_close($link);
?>