Отправка специальных символов с помощью входного текстового поля libgdx

Я пытаюсь отправить имя пользователя с полем ввода libgdx. Он отлично работает с обычными символами, я могу отправить его в php и сохранить его в базе данных. Но когда я пробую специальные турецкие символы, такие как «ö, ş, ğ, ç, ü» и т. Д., Они не отправляют эти символы и символы после них. Кроме того, в текстовом поле можно увидеть специальные символы, но не отправлять их в файл php.

Я видел пост об этой проблеме, Вот, и я обновил версию libgdx до последней стабильной. Но у меня все та же проблема.

Код, который я использую ниже:

HttpRequest request = new HttpRequest(HttpMethods.POST);
request.setUrl("http://xxxxx.com/create_usr.php");
request.setContent("name=" + name);

Должен ли я добавить что-то еще к этому http-коду для отправки этих символов?

Кроме того, я видел дополнительный код в сети, я не знаю, что они делают, но я добавил их до seturl, но не работал:

request.setHeader("Accept-Charset", "utf-8");
request.setHeader("Content-Type", "application/x-www-form-urlencoded");

РЕШИТЬ:

Я изменил часть httprequest с кодом ниже, и это сработало. Я также изменил метод записи, чтобы получить:

HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("name", name);
HttpRequest request = new HttpRequest(HttpMethods.GET);
request.setUrl("http://xxxxx.com/create_usr.php"");
request.setContent(HttpParametersUtils.convertHttpParameters(parameters));

1

Решение

Попробуйте позвонить по URL-адресу из веб-браузера, чтобы убедиться, что проблема в приложении libgdx или в php. Может случиться, что ваша база данных (поле) находится в UTF8, но ваше соединение mySql не так, что стоит проверить.

Кроме того, я не уверен, но, возможно, вы должны кодировать значение параметра и декодировать его на стороне php.

http://php.net/manual/en/function.urldecode.php

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]