В общем есть страница с формой:
CODE (
html):
скопировать код в буфер обмена
<form action='add_content.php' method='post'>
Page URL <input type='text' size='30' name='page_url'>
Page title <input type='text' size='60' name='page_title'><br>
<textarea name="editor" id="editor"></textarea>
<input type='submit' value='Add page'></form>"
В поля вводятся русские буквы.
Содержание обработчика формы add_content.php:
PHP:
скопировать код в буфер обмена
<?PHP
include "mysql_config.php";
include "login_protect.php";
if(isset($_SESSION['access_level']) and
$_SESSION['access_level'] == 1
) {
$query = "INSERT INTO `DataBase`.`pages`(`title`, `content`, `page_url`, `access_level_req`) VALUES('".$title."', '".$content."', '".$page_url."', '2');";
$_SESSION['msg'] = "Page was added.";
Header("Location: http://site.pro"); } else
{
$_SESSION['msg'] = "Access is denied.";
Header("Location: http://site.pro"); }
?>
Текст в БД вставляется видимо в непонятной кодировке, ибо ставил для БД кодировку и utf8 и cp1251. С помощью запросов, и в phpMyAdmin. Т.е. и в phpMyAdmin и при выводе на страницу иероглифы вида "ывпаывдацал ьцвл СЊ".
Важно: если зайти через phpMyAdmin в запись таблицы и уже там ввести значения полей на русском - все нормально отображается. Соответственно я сделал вывод, что POST-запрос присылает в непонятной кодировке.
P.S.: site.pro из кода - пример)