![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| PRIZRAK001 |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 67 Регистрация: 13.7.2005 Репутация: нет Всего: 1 |
Здравствуйте.
Исходный код:
При срабатывании на одном хосте выводит:
При срабатывании на другом хосте:
Во втором случае нуль был заменён на пробел. Необходимо избавиться от этой нежелательной подстановки. Подскажите, как это сделать? |
||||||
|
|||||||
| dstorm81 |
|
|||
![]() бездельник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1178 Регистрация: 18.1.2006 Где: (16RU) Репутация: 1 Всего: 39 |
смотрел с одной машины и одного браузера?
есть предположение что сферический вакуумный конь пришел в гости к заголовкам и кодировкам -------------------- на форуме с 8.12.2002 (http://forum.vingrad.ru/index.php?act=ST&f=10&t=4874&st=0#) |
|||
|
||||
| PRIZRAK001 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 67 Регистрация: 13.7.2005 Репутация: нет Всего: 1 |
||||
|
||||
| dstorm81 |
|
|||
![]() бездельник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1178 Регистрация: 18.1.2006 Где: (16RU) Репутация: 1 Всего: 39 |
а если искправить тут
<meta http-equiv="Content-Type" content="text/html;charset=windows-1251"/> на utf-8 сам файлик СОХРАНИТЬ в utf-8 без bom и насильно установить хеадер для отдачи файла с utf-8 что на это скажете? -------------------- на форуме с 8.12.2002 (http://forum.vingrad.ru/index.php?act=ST&f=10&t=4874&st=0#) |
|||
|
||||
| NLspieler |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 619 Регистрация: 13.10.2008 Где: Берлин Репутация: 16 Всего: 19 |
А ты не пробовал писать это
$str = "AAA_\0_BBB"; в одинарных ковычках? $str = 'AAA_\0_BBB'; |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
кстати, а что должно выводиться по замыслу топикстартера?
|
|||
|
||||
| InvalidProperty |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 356 Регистрация: 31.10.2007 Где: Россия, Казань Репутация: 2 Всего: 9 |
эм... зачем терминатор нулевой? для php. Присоединяюсь к предыдущему оратору
Это сообщение отредактировал(а) InvalidProperty - 16.4.2009, 09:24 -------------------- dd if=$0 of=$0 bs=1 count=76 seek=`du -b $0 | awk {'print $1'}` 2>/dev/null dd if=$0 of=$0 bs=1 count=67 conv=notrunc oflag=append 2>/dev/null echo $0 >> $0 |
|||
|
||||
| PRIZRAK001 |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 67 Регистрация: 13.7.2005 Репутация: нет Всего: 1 |
Должен печататься первый вариант:
Для тестирования. Чтобы проверить, что бинарные данные передаются корректно. Вопрос решён! Необходимо прописать в настройках Apache
Это особенность русского Apache. Всем спасибо! Это сообщение отредактировал(а) PRIZRAK001 - 16.4.2009, 10:00 |
||||||
|
|||||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
Бинарные данные в текстовый html?
Кого хакаем? -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| InvalidProperty |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 356 Регистрация: 31.10.2007 Где: Россия, Казань Репутация: 2 Всего: 9 |
а почему такая уверенность в том, что если подставляется пробел, то данные передались некорректно? -------------------- dd if=$0 of=$0 bs=1 count=76 seek=`du -b $0 | awk {'print $1'}` 2>/dev/null dd if=$0 of=$0 bs=1 count=67 conv=notrunc oflag=append 2>/dev/null echo $0 >> $0 |
|||
|
||||
| PRIZRAK001 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 67 Регистрация: 13.7.2005 Репутация: нет Всего: 1 |
Пример, который я привёл - вымышленный. На самом деле, у меня происходила ошибка, когда загружались картинки на сервер. Данные отправлялись на сервер с помощью специальной программы, а там уже извлекались из переменной $GLOBALS['HTTP_RAW_POST_DATA']. Было замечено, что все нули в файлах были заменены на пробелы. То есть во всём файле байт 00000000 (нуль) был заменён на байт 00100000 (пробел). В итоге бинарные данные оказывались повреждёнными. А на текстовые это не влияло. Потом я заметил, что подобная подстановка возникает в строках. Специально привёл простой пример, чтобы упростить задачу и быстрее разобраться. |
|||
|
||||
| ksnk |
|
||||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
Простейшее лечение - вставить в .htaccess строку
Возможно, есть параметр, который разрешает/запрещает и перекодировку вывода -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
||||
|
|||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |