@timers

Почему не передаются параметры?

В общем есть код:
$newUrl = false;
parse_str($_SERVER['QUERY_STRING'], $addGet);
if (($addGet['do'] == 'init_who' and $addGet['str'] == 'contacts') or ($_GET['do'] == 'static' and $_GET['page'] == 'city_root')) {
    $canonical = $config['http_home_url'] . ltrim($_SERVER['REDIRECT_SCRIPT_URL'], '/');
    $newUrl = $canonical;
}


Данный код выводит канонический урл, но вот проблема перешел на другой хостинг и перестал отображаться канонический урл. На старом хостинге работает нормально, на новом нет, версия php 7.2 и там и там.

Может кто подскажет? что-то вырубить нужно или включить
  • Вопрос задан
  • 83 просмотра
Пригласить эксперта
Ответы на вопрос 3
@FanatPHP
Чебуратор тега PHP
Садись, будем с тобой учиться программированию.

То что у тебя здесь написано - это не программирование.
Написать в столбик несколько операторов можно и обезьяну научить.

Программирование начинается тогда, когда твой код престаёт работать.
Процесс выявления участка, который не работает, и что надо исправить, называется отладкой. И это и есть на самом деле программирование.
Для отладки нужно две вещи:
1. В принципе понимать, что делает твой код. причём не в целом, а каждый оператор в отдельности. Какие данные он должен получать на вход, что с ними делать, что должно быть на выходе.
2. Трассировка. Которая заключается тупо в выводе промежуточных результатов.

поэтому после кода добавляем строчку
var_dump($_SERVER['QUERY_STRING'], $addGet,$config['http_home_url'],$_SERVER['REDIRECT_SCRIPT_URL']);

и смотрим, где чего не хватает.

И только после этого идём на тостер задавать конкретный вопрос, "а почему у меня такая-то переменная пустая"
Ответ написан
coderisimo
@coderisimo
Спраука
Переменная $_SERVER - это массив, содержащий информацию, такую как заголовки, пути и местоположения скриптов. Записи в этом массиве создаются веб-сервером. Нет гарантии, что каждый веб-сервер предоставит любую из них ; сервер может опустить некоторые из них.....
Ответ написан
SilenceOfWinter
@SilenceOfWinter
та еще зажигалка...
настройки php и http сервера сравни diff'ом
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
RecruitIT Москва
от 100 000 до 160 000 ₽
Сбер Москва
До 240 000 ₽
RecruitIT Москва
от 120 000 до 150 000 ₽
21 окт. 2020, в 14:06
1200 руб./в час
21 окт. 2020, в 13:59
1000 руб./в час
21 окт. 2020, в 13:40
35000 руб./за проект