Браузер кодирует строку запроса дважды

У меня возникли некоторые проблемы с кодировкой строки запроса во время перенаправления.

Params:

(
[pg_salt] => 54ed95e0df7f2
[pg_merchant_id] => 6430
[pg_order_id] => 1016156
[PAYMENT_SYSTEM] => Test
[pg_lifetime] => 86400
[pg_amount] => 8512.00
[pg_description] => Order ID: 11111
[pg_user_phone] =>
[pg_user_contact_email] => [email protected]
[pg_user_email] => [email protected]
[pg_user_ip] => 11.11.111.111
[pg_request_method] => GET
[pg_success_url_method] => AUTOPOST
[pg_failure_url_method] => AUTOGET
)

Затем я перенаправляю пользователя с местоположением заголовка и строю строку запроса через http_build_query.

header('Location: https://test.com/test.php?'.http_build_query($arrRequest));

URL выглядит следующим образом:

http://www.test.com/test.php?pg_salt=54ed91b876393&pg_merchant_id=6430&pg_order_id=1016156&PAYMENT_SYSTEM=Platron&pg_lifetime=86400&pg_amount=8512.00&pg_description=Order+ID%253A+1016156&pg_user_phone=&pg_user_contact_email=test%2540test.com&pg_user_email=test%2540test.com&pg_user_ip=11.11.111.11&pg_request_method=GET&pg_success_url_method=AUTOPOST&pg_failure_url_method=AUTOGET&pg_sig=7351aa0b8607612d85cbd322b4d76803

Давайте рассмотрим пример по электронной почте.

test%2540test.com

% 2540 кодируется% 40 (@).

Почему во время перенаправления символы, такие как% 40 (@), кодируются в% 2540 и как этого избежать?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]