2015-12-04 1 views
0

В моем скрипте php я пытаюсь получить строку запроса ($ _SERVER ['QUERY_STRING']), добавить ее к другому URL-адресу, а затем сделать перенаправления.

Если я использую строку запроса без какой-либо обработки, новый url показывает «& amp;» для всех «&». Поэтому новый URL-адрес не будет работать.

Я распечатываю $ _SERVER ['QUERY_STRING'] и просматриваю источник страницы. Он использует «& amp;» для всех «&». Это не имеет смысла для меня, и мне интересно, почему. Это только конфигурация моего сервера или по умолчанию PHP?

ОБНОВЛЕНИЕ: Я тестировал его на MODX CMS, используя фрагмент. Если вы используете обычный PHP-скрипт, такой проблемы нет. Я думаю, проблема в MODX. Есть идеи?

+3

urlencode/urldecode –

+0

& amp; html объект. – Shawn

+0

Если modx является причиной этой проблемы, почему бы не создать строку запроса самостоятельно? Попробуйте 'echo http_build_query ($ _ GET)' и посмотрите, производит ли он тот же результат. –

ответ

0

Просто идея: Если вы используете TinyMCE для редактирования материала, она меняет все &'s на &'s - что сводит меня с ума много раз. Это происходит при вызове snippet и может быть отлаживается, если вы либо деактивируете редактор расширенного текста для ресурса, либо «быстро отредактируете» ресурс.

Также хорошая практика: положить фрагменты в кусок. Вы можете вызвать этот кусок, не рискуя синтаксисом вызова фрагмента.