Садись, будем с тобой учиться программированию.
То что у тебя здесь написано - это не программирование.
Написать в столбик несколько операторов можно и обезьяну научить.
Программирование начинается тогда, когда твой код престаёт работать.
Процесс выявления участка, который не работает, и что надо исправить, называется отладкой. И это и есть на самом деле программирование.
Для отладки нужно две вещи:
1. В принципе понимать, что делает твой код. причём не в целом, а каждый оператор в отдельности. Какие данные он должен получать на вход, что с ними делать, что должно быть на выходе.
2. Трассировка. Которая заключается тупо в выводе промежуточных результатов.
поэтому после кода добавляем строчку
var_dump($_SERVER['QUERY_STRING'], $addGet,$config['http_home_url'],$_SERVER['REDIRECT_SCRIPT_URL']);
и смотрим, где чего не хватает.
И только после этого идём на тостер задавать конкретный вопрос, "а почему у меня такая-то переменная пустая"