Я пытаюсь взять значения из <textarea>
и передать его через XMLHttpRequest на страницу PHP, которая добавляет контент в базу данных.
Однако, когда он достигает базы данных, символы «å æ ø» преобразуются в «Ã ¥ æ û.
Я искал все выше и ниже и пытался перейти на UTF-8, пытался использовать версии JavaScript htmlentities()
/ htmlspacialchars()
и т. Д., Но что бы я ни пытался сделать, результат всегда одинаков.
Моя страница настроена на iso-8859-15, как и requestType для запроса.
Поскольку мне не приходилось слишком много использовать Ajax в моей работе, я снял процедуру установки из сети. Это выглядит так:
var page_request = false;
var contentType = "application/x-www-form-urlencoded;charset=iso-8859-15";
if (window.XMLHttpRequest)
{
page_request = new XMLHttpRequest();
}
// If the Browser is Internet Explorer
else if (window.ActiveXObject)
{
try
{
page_request = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
page_request = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e){}
}
}
else
{
return false;
}
page_request.open('POST', url, true);
page_request.setRequestHeader("Content-Type", contentType);
page_request.send(query);
Однако в файле PHP на принимающей стороне и в базе данных специальные символы преобразуются.
Любая помощь очень ценится! Я потратил большую часть этого дня, пытаясь исправить эту ошибку ...