jQuery, AJAX и русские буквы — проблема с кодировкой

jQuery, AJAX и русские буквы — проблема с кодировкой

Постер - jQuery, AJAX и русские буквы - проблема с кодировкой

При использовании AJAX в jQuery и особенно совместно с базами данных MySQL, могут возникнуть проблемы с передачей русских букв (кодировкой) между скриптами независимо от метода (GET или POST).

Решением проблемы является:

1. Указание кодировки на клиентской части, в HTML это:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

или

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

2. Указать кодировку на стороне сервера, в PHP это:

header("Content-type: text/plain; charset=utf-8");

или

header("Content-type: text/plain; charset=windows-1251");

3. В ручную перекодировать данные отправляемые на сервер:

Будем использовать JavaScript функцию encodeURIComponent, которая кодирует в Unicode.

req.send('text='+encodeURIComponent('русский текст тут'));

и еще пример

$.ajax({
    url: "index.php",
    type: "POST",
    data: 'text='+encodeURIComponent('русский текст тут'),
    dataType: "html",
        success: function(msg){
        }
    }
});

ну и на стороне сервера в PHP преобразовываем уже в нужную нам кодировку

$text = iconv("UTF-8", "WINDOWS-1251", $_POST['text']);

На заметку:

Также часто проблемы с кодировкой могут возникать из-за неверных настроек MySQL. В этом случае необходимо внести коррективы в файл конфигурации my.cnf или my.ini (в зависимости от версии). В разделе [mysqld] добавьте/перезапишите такие строки:

[mysqld]
init_connect = 'SET collation_connection = utf8_general_ci'
init_connect = 'SET NAMES utf8'
default-character-set = utf8
character-set-server = utf8
collation-server = utf8_general_ci
skip-character-set-client-handshake
Пример работы с AJAX Использовать технологию AJAX можно достаточно просто,не вдаваясь в дебри программирования Web 2.0. Очень часто возникает необходимость отправить запр...
Простая PHP, jQuery, and AJAX форма обратной связи... Sep 30, 2013Build a Simple PHP, jQuery, and AJAX Powered Contact Form (Updated 02/05/2014) Download Updated 02/05/2014I have updated the scrip...
Читайте также  Найти и удалить в базе данных MySQL

Сохрани, чтобы не потерять