|
|
| Автор |
Сообщение |
KOT!K Знакомый

Возраст: 26
Зарегистрирован: 07.06.2006
Сообщения: 88
|
Добавлено: Чт Сен 21, 2006 2:50 am Заголовок сообщения: php 5.1.2 |
|
|
Кто нить может мне помочь?
Почему во всех скаченных скриптах такие конструкции работают:
echo ("$HTTP_HOST");
А у меня на компе не работает. Приходится определять переменную:
$HTTP_HOST = $_SERVER ['HTTP_HOST'];
echo ("$HTTP_HOST");
P.S.: У меня стоит денвер (Apache/1.3.33(Win32) PHP/5.1.2) |
|
| Вернуться к началу |
|
 |
Malcolm Новичок

Возраст: 34
Зарегистрирован: 04.07.2006
Сообщения: 44
|
Добавлено: Чт Сен 21, 2006 4:17 am Заголовок сообщения: |
|
|
Я могу помочь
Это зависит от значения register_globals сервера. Если эта переменная имеет значение 'On', то все глобальные переменные типа $_SERVER[] копируются в свои локальные копии, если нет, то не копируются.
Включать register_globals не всегда оправдано, могут возникнуть определенные проблемы с безопасностью.
Можешь запустить скриптик
[code:1:05d795479a]<?php phpinfo(); ?>[/code:1:05d795479a]
и посмотреть значение register_globals на своем сервере. |
|
| Вернуться к началу |
|
 |
Денис Модератор

Возраст: 36
Зарегистрирован: 21.08.2004
Сообщения: 1490
Откуда: Санкт-Петербург
|
Добавлено: Чт Сен 21, 2006 7:10 pm Заголовок сообщения: |
|
|
KOT!K, попробуйте такой вариант:
[code:1:c753cac33f]$_POST[][/code:1:c753cac33f] |
|
| Вернуться к началу |
|
 |
KOT!K Знакомый

Возраст: 26
Зарегистрирован: 07.06.2006
Сообщения: 88
|
Добавлено: Пт Сен 22, 2006 2:57 am Заголовок сообщения: |
|
|
| Денис писал(а): | KOT!K, попробуйте такой вариант:
[code:1:425f51ab2b]$_POST[][/code:1:425f51ab2b] |
Malcolm, да, значение register_globals поменяли в PHP 4.2.0 с ON на OFF, из соображений безопасности... но на что именно register_globals влияет я не знала)) спасибо. У меня действительно стоит register_globals = off.
Денис, да, если обращаться к данным таким образом: $_POST[] все работает =) И после того как я почитала инфу поэтому вопросу - поняла что так и лучше всего делать. Так что сама буду так писать и небольшие скачанные скриптики так же буду подправлять.
А вот в моем случае скрипт большой, так что я просто сэмулировала register_globals установленный в ON
Спасибо, за быстрые ответы |
|
| Вернуться к началу |
|
 |
Денис Модератор

Возраст: 36
Зарегистрирован: 21.08.2004
Сообщения: 1490
Откуда: Санкт-Петербург
|
Добавлено: Сб Сен 23, 2006 8:00 pm Заголовок сообщения: |
|
|
| Цитата: |
А вот в моем случае скрипт большой, так что я просто сэмулировала register_globals установленный в ON
|
Зря. Лучше всего с помощью "Найти и заменить" замените "длинную" форму на "короткую" |
|
| Вернуться к началу |
|
 |
KOT!K Знакомый

Возраст: 26
Зарегистрирован: 07.06.2006
Сообщения: 88
|
Добавлено: Вс Сен 24, 2006 11:22 pm Заголовок сообщения: |
|
|
| Денис писал(а): |
Зря. Лучше всего с помощью "Найти и заменить" замените "длинную" форму на "короткую" |
ммм... хочу посмотреть на запрос который вы составите в поиске
В документ передаются кучи перемнных, обращение к ним идет так:
... $action ...
Ну и что на что менять?  |
|
| Вернуться к началу |
|
 |
Денис Модератор

Возраст: 36
Зарегистрирован: 21.08.2004
Сообщения: 1490
Откуда: Санкт-Петербург
|
Добавлено: Пн Сен 25, 2006 4:19 pm Заголовок сообщения: |
|
|
| Цитата: |
В документ передаются кучи перемнных, обращение к ним идет так:
... $action ...
|
Не понял. Вы писали
| Цитата: |
$HTTP_HOST = $_SERVER ['HTTP_HOST'];
|
Зачем плодить переменные? Не проще ли в Ваших запросах использовать саму $_SERVER ['HTTP_HOST'], не передавая ее значение другим? |
|
| Вернуться к началу |
|
 |
OldFornit Модератор

Возраст: 30
Зарегистрирован: 12.05.2005
Сообщения: 846
|
Добавлено: Пн Сен 25, 2006 8:31 pm Заголовок сообщения: |
|
|
1) Все-таки не совсем переменная - это элемент массива ))
2) KOT!K, таки в чем-то права - гораздо проще и быстрее присвоить переменной необходимое значение.
Но и Денис, прав - кошернее обращаться напрямую. Но - прав тот, кто делает. "Работает? Работает! Вот и не трогаем". |
|
| Вернуться к началу |
|
 |
|