URL-адрес из базы данных неверен, когда я использую PHP с Mysql

У меня есть БД с URL. Например, мой адрес

https://besplatka.ua/?prop[161][from]=1&prop[161][to]=3&prop[136][to]=20000&currency=USD

Когда я использую этот код PHP

$result = mysqli_query($mysqli, "SELECT url FROM urls WHERE id=5");
while($res = mysqli_fetch_array($result))
{
 $my_url=$res['url'];
}
echo $my_url;

Я вижу, что страница php не отображает правильное значение. Кодировка везде UTF-8.

https://besplatka.ua/?prop[161][from]=1&prop[161][to]=3&prop[136][to]=20000¤cy=USD 

Что означает этот символ ¤? Как исправить ошибку?

Не поделитесь кодом подключения?

sayou 10.04.2019 13:05

мой код подключения <?php $databaseHost = 'localhost'; $ имя_базы_данных = 'систем'; $databaseUsername = 'корень'; $databasePassword = ''; $mysqli = mysqli_connect($databaseHost, $databaseUsername, $databasePassword, $databaseName); ?>

user2219963 10.04.2019 13:07

Запустите это сразу после настройки соединения $mysqli->set_charset("utf8");

Mihai 10.04.2019 13:08

Как сказал г-н @Mihai, добавьте set_charset в свой код подключения.

sayou 10.04.2019 13:10

Я добавил $mysqli->set_charset("utf8"); к коду подключения Но это не работает. Результат тот же.

user2219963 10.04.2019 13:12

Я предполагаю, что вам нужно вставить его снова или исправить в БД.

Mihai 10.04.2019 13:14

В бд все ок. php-страница не отображает правильное значение

user2219963 10.04.2019 13:18
stackoverflow.com/questions/41335786
user2219963 10.04.2019 13:36
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
8
44
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

После некоторых поисков и попыток я обнаружил, что ошибка связана не с кодировкой UTF8, а с символом & со словом curren, который становится таким ¤.

(Чтобы получить информацию о символах: https://dev.w3.org/html5/html-автор/charref)

Так что вы можете исправить это, используя функцию urlencode или просто поместив свою переменную в первый URL.

Результат: https://besplatka.ua/?currency=USD&prop[161][from]=1&prop[161][to]=3&prop[136][to]=20000

Надеюсь, это поможет вам.

<?php $databaseHost = 'localhost'; $databaseName = 'sys'; $databaseUsername = 'root'; $databasePassword = ''; $mysqli = mysqli_connect($databaseHost, $databaseUsername, $databasePassword, $databaseName); mysqli_set_charset($mysqli,"utf8"); ?> не работает. Результат тот же.
user2219963 10.04.2019 13:15

Что ваша БД имеет тип UTF8?

sayou 10.04.2019 13:17

Вы можете проверить этот комментарий: #14068747 - переполнение стека

sayou 10.04.2019 13:19

utf8_general_ci в БД.

user2219963 10.04.2019 13:20

у меня есть этот заголовок header('Content-Type: text/html; charset=UTF-8'); но он не работает. Результат с ¤

user2219963 10.04.2019 13:25

спасибо большое

user2219963 10.04.2019 14:59

@ user2219963 всегда пожалуйста. Если ответ поможет вам, не забудьте отметить его правильным, чтобы помочь другим людям.

sayou 11.04.2019 10:37

Другие вопросы по теме