Есть MySQLi база прикрученная к игровому серверу. В базу записываются рекорды игроков, никнейм и время за которое игрок прошел карту. Игрок может поставить себе абсолютно любой никнейм так как сервер работает через STEAM, некоторые игроки используют в никнеймах разные украшательства/спецсимволы. Записи с рекордом такого игрока в базу попадают в таком виде:
Вопрос, из этой базы я вывожу данные в HTML, как правильно преобразовать эти строки что бы никнеймы отображались корректно как в игре и вообще хотелось бы узнать что этот набор символов и букв значит чем и как его декодить?
Код который я имею сейчас, получаю данные из базы данных:
<?php
include "config.php";
$condition = "1";
if(isset($_GET['playerid'])){
$condition = " PlayerID=".$_GET['playerid'];
}
$userData = mysqli_query($con,"select * from players WHERE ".$condition);
$response = array();
while($row = mysqli_fetch_assoc($userData)){
$response[] = $row;
}
echo json_encode($response);
exit;
Далее вывожу полученные данные в таблицу:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
</head>
<div id='myapp'>
<!-- Select All records -->
<input type='button' @click='allRecords()' value='Select All users'>
<br><br>
<!-- Select record by ID -->
<input type='text' v-model='playerid' placeholder="Enter Userid between 1 - 24">
<input type='button' @click='recordByID()' value='Select user by ID'>
<br><br>
<!-- List records -->
<table border='1' width='80%' style='border-collapse: collapse;'>
<tr>
<th>PlayerID</th>
<th>Username</th>
<th>SteamID</th>
<th>PlayTime</th>
</tr>
<tr v-for='player in players'>
<td>{{ player.PlayerID }}</td>
<td>{{ player.User }}</td>
<td>{{ player.SteamID }}</td>
<td>{{ player.Playtime }}</td>
</tr>
</table>
</div>
<script>
var app = new Vue({
el: '#myapp',
data: {
players: "",
playerid: 0
},
methods: {
allRecords: function(){
axios.get('ajaxfile.php')
.then(function (response) {
app.players = response.data;
})
.catch(function (error) {
console.log(error);
});
},
recordByID: function(){
if(this.playerid > 0){
axios.get('ajaxfile.php', {
params: {
playerid: this.playerid
}
})
.then(function (response) {
app.players = response.data;
})
.catch(function (error) {
console.log(error);
});
}
}
}
})
</script>
Для начала попробуй сменить кодировку базы на utf8mb4_general_ci
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
В новой версии PHP(PHP 8) появилась возможность указывать аттрибуты
В Windows Forms например, если создать 9 кнопок, можно ли по ним пробежаться и изменить в них текст?
Написал асинхронный парсер XML-файлов по URL, но не могу решить эту проблему, всегда вылетает ошибка: