Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Нужна помощь с PHP редиректом

Ответить
Настройки темы
Нужна помощь с PHP редиректом

Пользователь


Сообщения: 99
Благодарности: 2

Профиль | Отправить PM | Цитировать


Доброго времени суток.
Есть redirect.php

Код: Выделить весь код
<?php
$id =$_GET['id'];
if ($id == "") {$link = "http://ya.ru";}
if ($id == "1") {$link = "http://www.yahoo.com";}
if ($id == "2") {$link = "http://www.google.com";}
if ($id == "3") {$link = "http://www.webmasterworld.com";}
header('HTTP/1.1 301 Moved Permanently');
header("Location: $link");
exit();
?>
Но! - вроде как он не будет работать при отключенном register_globals (я не спец в php)

В интернете нашел нижеследующие варианты редиректов которые должны работать вместе с register_globals.
Но не знаю как правильно изменить оригинальный код основываясь на функциях из примеров.
Код: Выделить весь код
if (isset ($_SERVER["QUERY_STRING"]) && ($_SERVER["QUERY_STRING"] != '')) {
header("Location: $_SERVER["QUERY_STRING"]");
}
Код: Выделить весь код
$http =  substr($_SERVER['REQUEST_URI'],strlen('redirect.php?')+1);
//проверка $http по желанию
header("Location: ".$http);
Код: Выделить весь код
header("Location: $_SERVER[QUERY_STRING]");

Прошу помощи в решении.
Заранее всем откликнувшимся большое спасибо!


P.S. в 2м примере так и не понял что обозначает "//проверка $http по желанию" - ктонить может подсказать :/

Отправлено: 23:05, 10-12-2009

 

Deadooshka


Сообщения: 2566
Благодарности: 698

Профиль | Отправить PM | Цитировать


Цитата blacks2:
Прошу помощи в решении. »
решении чего?

Цитата blacks2:
не будет работать при отключенном register_globals »
если через $_GET, то будет...
остальной код непонятного смысла.

Отправлено: 00:58, 11-12-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 99
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата Sham:
если через $_GET, то будет... »
То что приведенный мною скрипт не будет работать
основано на нижеследующем примере и отзыве к нему.

Хочу понять где истина: register_globals будет работать с моим скриптом но не с нижеследующим?



redirect.php
Код: Выделить весь код
if (isset($_GET["url"]) && $_GET["url"]!='') {
header("Location: $url");
}
Отзыв:
Цитата:
LEOnidUKG, при отключенных register_globals переменная $url в вашем коде будет не пределена.

Отправлено: 03:01, 11-12-2009 | #3


Deadooshka


Сообщения: 2566
Благодарности: 698

Профиль | Отправить PM | Цитировать


Данные запроса регистрируются в виде суперглобальных массивов $_SERVER, $_GET, $_POST и т.д. Если установлен register_globals on, то вдобавок будут определяться соответствующие глобальные переменные согласно установке variables_order в php.ini ($_GET['url'] будет доступен через $url).

в вашем случае все решает строка
Цитата blacks2:
$id =$_GET['id']; »
, где $id определена вручную.

Начиная с PHP6 директивы register_globals не существует.

Отправлено: 04:53, 11-12-2009 | #4


Пользователь


Сообщения: 99
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата Sham:
Начиная с PHP6 директивы register_globals не существует »
Значит получается что $id =$_GET['id']; действовать не будет?

Отправлено: 16:37, 11-12-2009 | #5


Ветеран


Сообщения: 1862
Благодарности: 132

Профиль | Сайт | Отправить PM | Цитировать


http://docs.php.net/manual/ru/security.globals.php
Цитата blacks2:
Значит получается что $id =$_GET['id']; действовать не будет? »
Будет.
Цитата blacks2:
Хочу понять где истина: register_globals будет работать с моим скриптом но не с нижеследующим? »
Да. С твоим. но не с нижеследующим.

-------
ДИЛЕТАНТ - это курьезный человек, который испытывает удовольствие делать то, чего не умеет.
AMD 4200+, MSI Neo2Platinum, 2Gb, ATI 9600, D-Link DWL-G510, FreeBSD 8.0, KDE 4.3.4


Отправлено: 21:50, 11-12-2009 | #6



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Нужна помощь с PHP редиректом

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Нужна помощь в настройке PHP Grinder1 Вебмастеру 15 21-02-2012 14:28
Помощь нужна parus5990 Флейм 4 01-12-2008 20:32
Нужна помощь! joyland Вебмастеру 2 01-11-2006 02:17
Нужна помощь capt 1 Общий по Linux 27 28-09-2004 14:03




 
Переход