Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2005.09.04;
Скачать: [xml.tar.bz2];

Вниз

В PHP 4.3.4 отключены глобальные переменные   Найти похожие ветки 

 
Кефир87 ©   (2005-08-12 23:59) [0]

Я далеко не ас в пхп. Может мне кто объяснить что это значит?! Что под этим подразумевается... Если я вызываю страницу как
index.php?page=main то получается переменной $page у меня не будет? А что-же тогда делать?!


 
alex-drob ©   (2005-08-13 00:04) [1]

$page=$HTTP_GET_VARS["page"]


 
Кефир87 ©   (2005-08-13 00:06) [2]

А если нету page? Я то ранше проверял isset"ом или !empty 8(


 
alex-drob ©   (2005-08-13 00:08) [3]

Также можно проверять.

if (isset($HTTP_GET_VARS["page"]){
$page=$HTTP_GET_VARS["page"]
}

В версии PHP более 4.1 можно короче
$page=$_GET["page"]


 
palva ©   (2005-08-13 00:28) [4]

> Может мне кто объяснить что это значит?!
Это значит, что в php.ini стоит
register_globals = Off
Если вы администратор, то можете поправить это значение на On.


 
_silver ©   (2005-08-13 00:34) [5]

Кефир87 ©   (12.08.05 23:59)
$_REQUEST["имяпеременной"]
универсальный вариант.


 
Кефир87 ©   (2005-08-13 00:55) [6]

Да еслиб я был администратором... Кстати у меня на локалхосте в папке где лежит php.exe нет никакого php.ini... У меня был 4,1 все было прекрасно... А вот теперь с 4,4,0 вылезает такая штука при обращении к скриптам:

Security Alert! The PHP CGI cannot be accessed directly.
This PHP CGI binary was compiled with force-cgi-redirect enabled. This means that a page will only be served up if the REDIRECT_STATUS CGI variable is set, e.g. via an Apache Action directive.

For more information as to why this behaviour exists, see the manual page for CGI security.

For more information about changing this behaviour or re-enabling this webserver, consult the installation file that came with this distribution, or visit the manual page.


У меня никакой не апач а Small HTTP server! Что-ж делать?!


 
IncRed   (2005-08-13 02:13) [7]

>>index.php?page=main то получается переменной $page у меня не будет? А что-же тогда делать?!

Это переменная окружения, а не глобальная переменная

if (isset($HTTP_GET_VARS["page"]){
$page=$HTTP_GET_VARS["page"]
}

В версии PHP более 4.1 можно короче
$page=$_GET["page"]

Ghxtv здесь короче ? isset проверяет, инициализирована ли переменная


 
palva ©   (2005-08-13 10:24) [8]

> нет никакого php.ini...
php.ini относится к настройкам Apache и лежит у меня в Apache2.

> This PHP CGI binary was compiled with force-cgi-redirect enabled.
Проще всего перекомпилировать php.exe


 
Кефир87 ©   (2005-08-13 21:43) [9]


> Это переменная окружения, а не глобальная переменная

А что тогда глобальные переменные? Может мне и париться не надо...


 
BorisIvanov   (2005-08-13 22:51) [10]

Как отключить/включить Register Globals
в файл .htaccess прописываешь
php_flag register_globals 0 (или 1)

Также можешь посмотреть описание функции ini_set() - http://php.net/ini_set

Register_globals Off означает что переменные из запросов get и post, из сессий и из cookie не будут автоматически становиться глобальными. То есть $_GET["page"] не будет переделываться в $page. Аналогично для всех переменных из суперглобальных массивов $_POST $_SESSION $_COOKIE

С точки зрения безопасности сайта этот вариант предпочтительнее, чем register_globals on, т.к. разработчик точно знает, что какая-то переменная пришла именно из сессии или cookie, а не была вписана вручную в запросе get

Подробнее читай faq на сайте phpclub.ru, там все подробно расписано


 
MeF Dei Corvi ©   (2005-08-13 23:04) [11]


>  нет никакого php.ini

через .htaccess можно поменять.


 
alex-drob ©   (2005-08-13 23:29) [12]


> IncRed   (13.08.05 02:13) [7]

$page=$_GET["page"] - это короче чем - $page=$HTTP_GET_VARS["page"]


 
Piter ©   (2005-08-13 23:47) [13]

во развели демагогию, хотя ответ был дан в первом же посте.


 
Кефир87 ©   (2005-08-13 23:50) [14]

Ладно. Спасибо 8)
.htaccess у меня по умолчанию отключен. Чтоп включили надо сильно просить... Нафик надо. $_GET меня устроит 8) Я уже все скрипты подправил 8)



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2005.09.04;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.009 c
14-1123738422
TUser
2005-08-11 09:33
2005.09.04
Мы ведь не все отвинчиваем...


4-1121286315
ronyn
2005-07-14 00:25
2005.09.04
Счётчик для Интернета.


5-1095963566
Igor_
2004-09-23 22:19
2005.09.04
Обработчик событий OnKeyPress


4-1121370701
Igit
2005-07-14 23:51
2005.09.04
Как узнать адресс процелуры


3-1122369606
Ольга
2005-07-26 13:20
2005.09.04
Link между серверами MSSQL-2000 и Oracle 8.1





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский