kmv
Новичок
Доброго дня!
Как только использую в форме enctype="multipart/form-data" внезапно и совершенно неожиданно вылазит бок с кириллическим текстом. Например "тест" выглядит как теÑÑ‚
Скрипт и http-заголовки в utf-8;
При дебаггинге значение $_REQUEST['test'] выглядит как "тест" Т.е. уже в пхп оно приходит в козявках.
Заголовки запроса и ответа выглядят нормально:
В конфигах apache пробовал добавить
AddCharset utf-8
AddDefaultCharset utf-8
в php
default_charset utf-8
- эффекта не последовало.
Интересно, что если в скрипте сделать
То результат как раз выводит правильно - 'тест' (8 байт). Но этого ведь быть не должно! Ведь если текст изначально в utf-8 то отображаться должен нормально, а показывает на странице теÑÑ‚
Операционная система : Windows x64 Rus, php: apache: 2.2.22 5.4.8;
В чем может быть проблема?
Как только использую в форме enctype="multipart/form-data" внезапно и совершенно неожиданно вылазит бок с кириллическим текстом. Например "тест" выглядит как теÑÑ‚
Скрипт и http-заголовки в utf-8;
PHP:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div style="border: 1px solid green">
<?php
if($_REQUEST['test']){
echo $_REQUEST['test'];
echo '<br>';
$r = iconv("utf-8","ISO-8859-1",$_REQUEST['test']);
var_dump($r);
}
?>
</div>
<form name="aaa" action="" method="post" enctype="multipart/form-data">
<input type="text" name="test" value="тест">
<input type="submit">
</form>
</body>
</html>
Заголовки запроса и ответа выглядят нормально:
HTML:
Запрос:
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language ru,ru-ru;q=0.8,en;q=0.5,en-us;q=0.3
Connection keep-alive
Cookie sid=l4n54dhf7g8stst8asf6p1n577; DBGSESSID=1; DBGSESSID=1%3Bd%3D1%2Cp%3D0
DNT 1
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:16.0) Gecko/20100101 Firefox/16.0
Ответ: (сокращенно)
Connection Keep-Alive
Content-Length 158
Content-Type text/html; charset=utf-8
Server Apache/2.2.22 (Win32) PHP/5.4.8
X-Powered-By PHP/5.4.8
POST данные:
Исходный код
-----------------------------24393354819629
Content-Disposition: form-data; name="test"
тест
-----------------------------24393354819629--
AddCharset utf-8
AddDefaultCharset utf-8
в php
default_charset utf-8
- эффекта не последовало.
Интересно, что если в скрипте сделать
PHP:
iconv('utf-8', 'ISO-8859-1', $_REQUEST['test'])
Операционная система : Windows x64 Rus, php: apache: 2.2.22 5.4.8;
В чем может быть проблема?



