Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> url кодирование строки? Или нет? Не пойму что браузер со строкой делает 
V
    Опции темы
mr_smit
  Дата 15.10.2008, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 27.2.2008
Где: Самара

Репутация: 3
Всего: 4



Здравствуйте! Вопрос такой:

1. Заполняю форму в браузере и нажимаю "отправить" (www.qiq.ru)
2. Смотрю что отправляет браузер.

Пример:  вводим "Привет."

браузер отправляет параметр "post%5Btitle%5D" = "%D0%9F%D1%80%D0%B8%D0%B2%D0%B5%D1%82."

post[title] - это имя строки со страницы (куда вводим "привет")

попробовал функцию для URL кодирования строки
http://www.kansoftware.ru/?tid=1528

она возвращает "%CF%F0%E8%E2%E5%F2%2E"

для HTTP кодирования строки
http://www.kansoftware.ru/?tid=2349

она возвращает "%CF%F0%E8%E2%E5%F2."

т.е. и близко не похоже.

Как браузер строку кодирует то?

Вот ещё несколько примеров от браузера:

а - %D0%B0   (русская "а")

ав  -  %D0%B0%D0%B2 (русские "ав")

р  -  %D1%80 (русская "р")
PM MAIL   Вверх
mr_smit
Дата 15.10.2008, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 27.2.2008
Где: Самара

Репутация: 3
Всего: 4



Кодировка на странице:

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

А idHTTP сам может строку таким образом преобразовать?


PM MAIL   Вверх
Matematik
Дата 15.10.2008, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1027
Регистрация: 11.3.2006

Репутация: 24
Всего: 50



Алгоритм кодирования один
Только у тебя разные кодировки текста на сайтах
www.qiq.ru  - UTF8
http://www.kansoftware.ru/?tid=2349 - Windows-1251

см. ф-ции
Код

  AnsiToUtf8()
  Utf8ToAnsi()

URLDecode(AnsiToUtf8('привет'))='%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82'
URLDecode('привет')='%CF%F0%E8%E2%E5%F2%2E'



PM MAIL WWW ICQ   Вверх
mr_smit
  Дата 15.10.2008, 17:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 27.2.2008
Где: Самара

Репутация: 3
Всего: 4



СПАСИБО ОГРОМНОЕ! Всё работает. smile 

Код

procedure TForm1.Button1Click(Sender: TObject);
var
  S: string;
begin
  S:=HTTPEncode(AnsiToUtf8('Привет.'));
  memo1.Text:=s;
end;


Это сообщение отредактировал(а) mr_smit - 15.10.2008, 17:54
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0659 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.