Два знака вопроса в url

ivan_st

Постоялец
Регистрация
11 Май 2008
Сообщения
52
Реакции
8
Есть API, URL которого в виде Для просмотра ссылки Войди или Зарегистрируйся...
Знак вопроса составная часть API.
ПОДСТАНОВКА - это обрабатываемые Урлы.
К сожалению, попадаются подставляемые URL так же, со знаком вопроса - напр.
site.ru/.../abc?sort=1
И API это не берет. URLEncode не помогает.
Что-то можно сделать?
 
Можно закодировать их через base64_encode() и в скрипте обработки соответственно расшифровать через base64_decode().
 
так, нет. ПОДСТАНОВКА - моя, я ж не буду просить у поставщика API - конвертните.
один знак вопроса - их, а один мой.
 
Если кодировка на сайте вин-1251, то перед URLEncode попробуйте конвертнуть адрес в УТФ-8 и только потом урленкодить.
 
ТС, конкретный пример url где это нужно приведите.
 
На самом деле интересный вопрос. Сам недавно столкнулся и кроме base64_encode ничего не придумал.

Если кодировка на сайте вин-1251, то перед URLEncode попробуйте конвертнуть адрес в УТФ-8
Вот я не понял. Предположим есть URL:

Для просмотра ссылки Войди или Зарегистрируйся

Если взять $_GET, то там будет только:

Код:
$_GET = array(
'url' => 'http://test.com/index.php?cat=100'
);

Т.е. "хвост" после второго знака вопроса отвалиться. И как тут можно что-то перекодировать?
 
И как тут можно что-то перекодировать?
для знака ? в УТФ-8 кодировки код будет %3F
при этом код Для просмотра ссылки Войди или Зарегистрируйся должен быть в УТФ-8
Для просмотра ссылки Войди или Зарегистрируйсяurlencode(Для просмотра ссылки Войди или Зарегистрируйся)
urlencode - php функция.
 
для знака ? в УТФ-8 кодировки код будет %3F
Ну, так это надо чтобы адресную строку изначально передавали правильно. С таким же успехом можно кодировать в base64. А если в адресной строке уже присутствует два знака вопроса (как данность), то решения нет?
 
так, нет. ПОДСТАНОВКА - моя, я ж не буду просить у поставщика API - конвертните. один знак вопроса - их, а один мой.
cmd, Вы читали это?
Передаю таким образом урлы с двумя ? через АПИ Вконтакте, фейсбук, мейл.ру, твиттер, 1классники.
 
Назад
Сверху