Почему я не могу отобразить и записать emoji?
У меня в бд есть запись со значением:
OVO is making a comeback after a year-long hiatus and will be launching on gate_io Startup Prime (IEO).<div>⏰Mar. 21st 10:00 AM (UTC)<br></div><div>Don't miss out on this OVOrtunity<br></div><div><a href="https://gate.io/startup/728">https://gate.io/startup/728</a></div> |
OVO is making a comeback after a year-long hiatus and will be launching on gate_io Startup Prime (IEO).<div>⏰Mar. 21st 10:00 AM (UTC)<br></div><div>Don't miss out on this OVOrtunity<br></div><div><a href="https://gate.io/startup/728">https://gate.io/startup/728</a></div>
Почему при выводе некоторые emoji заменяются на "?"
И еще одно. Пробую вставить в бд запись в которой есть emoji через AJAX:
$.ajax({ url: '/ajaxinsertpost.php', method: 'POST', data: { "titlevalue": titlevalue, "PostValue": PostValue, }, success: function(response) { console.log("Success" ); }, error: function(jqXHR, textStatus, errorThrown) { // возникла ошибка, обрабатываем ее здесь console.error("AJAX Error: " + textStatus, errorThrown); } }); |
$.ajax({ url: '/ajaxinsertpost.php', method: 'POST', data: { "titlevalue": titlevalue, "PostValue": PostValue, }, success: function(response) { console.log("Success" ); }, error: function(jqXHR, textStatus, errorThrown) { // возникла ошибка, обрабатываем ее здесь console.error("AJAX Error: " + textStatus, errorThrown); } });
Сам ajaxindexpost.php:
<?php $mysqli = new mysqli('localhost','root',' ','database') or die(mysqli_error($mysqli)); $titlevalue = mysqli_real_escape_string($mysqli, $_POST['titlevalue']); $postvalue = mysqli_real_escape_string($mysqli, $_POST['PostValue']); $mysqli->query("INSERT INTO `posts` (`h1`,`description`) VALUES ('$titlevalue','$postvalue')"); ?> |
<?php $mysqli = new mysqli('localhost','root',' ','database') or die(mysqli_error($mysqli)); $titlevalue = mysqli_real_escape_string($mysqli, $_POST['titlevalue']); $postvalue = mysqli_real_escape_string($mysqli, $_POST['PostValue']); $mysqli->query("INSERT INTO `posts` (`h1`,`description`) VALUES ('$titlevalue','$postvalue')"); ?>
Выходят такие иероглифы:
Дополнительно:
Либо попробуйте использовать https://github.com/BriquzStudio/php-emoji
Установить кодировку соединения в utf-8mb4
Так же, поле в которое пишете значения перевести коллэйшн в utf-8mb4
- и как это сделать?)
$mysqli->set_charset("utf8mb4"); mysqli_set_charset($conn, "utf8mb4"); |
$mysqli->set_charset("utf8mb4"); mysqli_set_charset($conn, "utf8mb4");
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос


Для отображения и записи emoji вам может потребоваться убедиться, что ваша система, браузер и текстовый редактор поддерживают использование emoji. Вот несколько шагов, которые вы можете предпринять, чтобы решить проблему отображения и записи emoji:
1. Убедитесь, что ваша операционная система поддерживает emoji. Например, на Windows 10 и macOS emoji поддерживаются по умолчанию, но на более старых версиях операционных систем это может быть проблемой.
2. Проверьте, поддерживает ли ваш браузер emoji. Большинство современных браузеров, таких как Google Chrome, Mozilla Firefox, Safari и Microsoft Edge, поддерживают emoji. Если вы используете устаревший браузер, возможно, вам придется обновить его.
3. Убедитесь, что ваш текстовый редактор поддерживает emoji. Некоторые старые текстовые редакторы могут не отображать emoji правильно или вообще не поддерживать их. В этом случае вам может потребоваться использовать более современный текстовый редактор.
4. Если вы все еще сталкиваетесь с проблемой отображения и записи emoji, попробуйте использовать HTML-коды или Unicode-символы для вставки emoji в ваш код. Например, вы можете использовать следующий код для вставки смайлика в формате Unicode: 😀.
5. Наконец, если ничто из вышеперечисленного не помогло, попробуйте обратиться за помощью к сообществу разработчиков или к поддержке вашей операционной системы, браузера или текстового редактора.
Надеюсь, эти советы помогут вам решить проблему отображения и записи emoji. Если у вас есть дополнительные вопросы, не стесняйтесь задавать их!