Перейти к содержанию
СофтФорум - всё о компьютерах и не только

проблема с $query_string


Рекомендуемые сообщения

Я сделал шаблон сайта в один из его блоков, в зависимости от значения переменной $QUERY_STRING, должна вставляться различного рода инфа:

_____

a href="http://www.something.php?news"

....

часть скрипта:

if ($QUERI_STRING=="news")

require ("news.dat");

elseif ($QUERY_STRING=="gallery")

require ("gallery.dat");

и т. д.

_____

Под виндой с апачем у меня всё работает, а вот на сервере нет.

Ссылка на комментарий
Поделиться на другие сайты

Проблема в настройке сервера...

Можно просто переделать скрипт:

<?$cat=empty($_GET['section'])?null:$_GET['section']; if(empty($cat)) include("./index.inc.php"); elseif(file_exists("./sections/".basename($cat).".dat")) include("./basename($cat).".dat"); else include("./sections/error.inc.php"); ?> 

Но ссылка тогда будет выглядеть как something.php?cat=news.

Ссылка на комментарий
Поделиться на другие сайты

man2D, твой скрипт ооочень уязвим и неправилен.

Olim M Shirinov, доменов php в мире по-моему нет.... :)

Ссылка на комментарий
Поделиться на другие сайты

kolya7k

Скажи-ка мне, в каком месте он очень уязвим?

Если существует $cat, подгружаем cat.php. Если нет, подгружаем error.php.

Ссылка на комментарий
Поделиться на другие сайты

Всё оказалось гораздо проще - просто у меня на домашней машине в php.ini

register_globals = On, а на серваке register_globals = Off из за этого нельзя просо обращаться к переменной $QUERY_STRING, а надо $_@SERVER[QUERY_STRING] т.е не

if ($QUERI_STRING=="news")

require ("news.dat");

elseif ($QUERY_STRING=="gallery")

require ("gallery.dat");

и т. д.

а:

if ($SERVER[QUERI_STRING]=="news")

require ("news.dat");

elseif ($SERVER[QUERY_STRING]=="gallery")

require ("gallery.dat");

и т. д.

разобрался прочитав документацию для PHP 4, после стандартной установки PHP 3.* в php.ini по умолчанию параметр register_globals = Off, а при установки PHP 4 этот параметр устанвливается в значение On. Из за этого вся лабуда и произошла.

Но всё равно всем огромное спасибо.

Ссылка на комментарий
Поделиться на другие сайты

Извиняюсь не $SERVER[QUERY_STRING] и не $_@SERVER[QUERY_STRING],

а

$_SERVER[QUERY_STRING]

Кстати этот массив ($_SERVER) содержит ещё очень много полезной инфрмации. :(

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...