imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 18.12.2004, 13:29     # 1
bdimych
Junior Member
 
Регистрация: 03.06.2002
Сообщения: 68

bdimych Путь к славе только начался
php md5 ???

Посмотрите пожалуйста код и сравните два ответа. В чем причина разницы md5. Понятно что где-то перекодируется win1251-koi8 но вот где ? Может это в доках где-то описано и никакой странности нет ?
Вложения
Тип файла: zip md5!!!.zip (1.3 Кбайт, 5 просмотров - Кто скачивал? )
bdimych вне форума  
Старый 18.12.2004, 13:59     # 2
AAI
Guest
 
Сообщения: n/a

если твой исходник имел кодировку KOI-8 то MD5() тебе вернет совсем другое значение, отличное от того что в архиве, а если WIN-1251 то все нормально.
 
Старый 18.12.2004, 14:18     # 3
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
Цитата:
bdimych:
В чем причина разницы md5.
Именно в кодировках и есть.
Цитата:
bdimych:
Понятно что где-то перекодируется win1251-koi8 но вот где ?
Насколько я понял (ведь не приведена отправка данных) ничего нигде не перекодируется, просто из одной формы в одной кодировке пересылается, а из другой в другой.

Никакой странности не вижу. Естественно кирилица в разных кодировках имеет разные md5 суммы.
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.
Hubbitus вне форума  
Старый 18.12.2004, 14:29     # 4
bdimych
Junior Member
 
Регистрация: 03.06.2002
Сообщения: 68

bdimych Путь к славе только начался
Цитата:
Насколько я понял (ведь не приведена отправка данных) ничего нигде не перекодируется, просто из одной формы в одной кодировке пересылается, а из другой в другой.
Способ отправки важен-ли? Ведь я записал и запросы и ответы. Запросы отличаются единственно заголовком user-agent а содержание то одинаковое.

получается
- пришел запрос x=%XX%XX......
- echo($x) выводит одинаковые значения равное urldecode('%XX%XX......')
- а md5 выводит разные значения !

(Запрос делался на perl через lwp и насколько я знаю perl ничего не перекодирует и следовательно ответ записан в точности по байтам как и пришел)
bdimych вне форума  
Старый 18.12.2004, 14:41     # 5
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
Цитата:
bdimych:
Способ отправки важен-ли? Ведь я записал и запросы и ответы. Запросы отличаются единственно заголовком user-agent а содержание то одинаковое.
Важен конечно, и запросы отличаются какраз не только заголовком user-agent, сравните строчки:
1-1.txt: Content-Type: text/html; charset=windows-1251
1-2.txt: Content-Type: text/html; charset=koi8-r
Тоесть данные уже присылаются на обработку в разных кодировках!
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.
Hubbitus вне форума  
Старый 18.12.2004, 14:48     # 6
bdimych
Junior Member
 
Регистрация: 03.06.2002
Сообщения: 68

bdimych Путь к славе только начался
Вы не правы (или я :-)

Content-Type:... это уже ответ. В файле записан сначала весь запрос потом \n\n\n потом весь ответ

Ну вот код весь на perl
Код:
use LWP::UserAgent;
use HTTP::Request::Common;

$Url = 'http://xxxxxxxxxxxxxxxxx';

$UsAg = new LWP::UserAgent;
$UsAg->agent('Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; AIRF)');
$Resp = $UsAg->request(POST $Url,
	'Accept-Language' => 'ru',
	Content => [x => 'привет']);
open D, '>1-1.txt'; binmode D; print D $Resp->request->as_string . "\n\n\n" . $Resp->as_string; close D;

$UsAg = new LWP::UserAgent;
$Resp = $UsAg->request(POST $Url,
	'Accept-Language' => 'ru',
	Content => [x => 'привет']);
open D, '>1-2.txt'; binmode D; print D $Resp->request->as_string . "\n\n\n" . $Resp->as_string; close D;
bdimych вне форума  
Старый 19.12.2004, 15:00     # 7
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
Может я конечно не прав, но Вы посмотрите, сервер Выдает два ответа в разных кодировках, а слово "привет" и там и там отображается нормально, отсюда я делаю Вывод что они и есть в разных кодировках.

Почему бы просто в самом скрипте не учесть эти кодировки и перекодировать если нужно?
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.
Hubbitus вне форума  
Старый 20.12.2004, 14:56     # 8
bdimych
Junior Member
 
Регистрация: 03.06.2002
Сообщения: 68

bdimych Путь к славе только начался
Разобрался на другом форуме. Это было из-за русского апача

привет -> apache(перекод(привет))=РТЙЧЕФ -> php -> скрипт
ДАЛЬШЕ
1. echo(РТЙЧЕФ) -> apache(перекод_назад(РТЙЧЕФ)) -> привет
2. echo(md5(РТЙЧЕФ)) -> apache(не_перекод_т_к_англ) -> разница

Спасибо всем.
bdimych вне форума  

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 00:17.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.