[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Глобальные переменные
t470004
В пхп 4 работала такая конструкция:

функция

global $HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_CLIENT_IP, $REQUEST_METHOD, $REMOTE_ADDR, $HTTP_PROXY_USER, $HTTP_X_FORWARDED_FOR;


$return['IP_ADDRESS'] = $this->select_var( array(
1 => $_SERVER['REMOTE_ADDR'],
2 => $HTTP_X_FORWARDED_FOR,
3 => $HTTP_PROXY_USER,
4 => $REMOTE_ADDR
));

$return['IP_ADDRESS'] = preg_replace( "/^([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})/", "\\1.\\2.\\3.\\4", $return['IP_ADDRESS'] );

$return['request_method'] = ( $_SERVER['REQUEST_METHOD'] != "" ) ? strtolower($_SERVER['REQUEST_METHOD']) : strtolower($REQUEST_METHOD);



В пхп 5 это не работает
Где подправить?



Спустя 5 минут, 36 секунд (19.10.2010 - 11:02) arvitaly написал(а):

Спустя 14 минут, 57 секунд (19.10.2010 - 11:17) t470004 написал(а):
Получается все переменные имеют вид $_SERVER['переменная']
А как понимать тогда это:

1 => $_SERVER['REMOTE_ADDR'],

4 => $REMOTE_ADDR

1 и 4?

Спустя 11 минут, 43 секунды (19.10.2010 - 11:29) arvitaly написал(а):
У вас какая цель?

Спустя 16 минут, 44 секунды (19.10.2010 - 11:45) t470004 написал(а):
У меня в форуме сесии не работают, все на один ip ложатся
Вот эта функция не работает:



/*-------------------------------------------------------------------------*/
// Makes incoming info "safe"
/*-------------------------------------------------------------------------*/

function parse_incoming()
{
global $HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_CLIENT_IP, $REQUEST_METHOD, $REMOTE_ADDR, $HTTP_PROXY_USER, $HTTP_X_FORWARDED_FOR;
$return = array();

// if( is_array($HTTP_GET_VARS) )
// {
// while( list($k, $v) = each($HTTP_GET_VARS) )
// {
if( is_array($HTTP_GET_VARS) )
{
while( list($k, $v) = each($HTTP_GET_VARS) )
{
if ( $k == 'INFO' )
{
continue;
}
//$k = $this->clean_key($k);
if( is_array($HTTP_GET_VARS[$k]) )
{
while( list($k2, $v2) = each($HTTP_GET_VARS[$k]) )
{
$return[$k][ $this->clean_key($k2) ] = $this->clean_value($v2);
}
}
else
{
$return[$k] = $this->clean_value($v);
}
}
}

// Overwrite GET data with post data

if( is_array($HTTP_POST_VARS) )
{
while( list($k, $v) = each($HTTP_POST_VARS) )
{
//$k = $this->clean_key($k);
if ( is_array($HTTP_POST_VARS[$k]) )
{
while( list($k2, $v2) = each($HTTP_POST_VARS[$k]) )
{
$return[$k][ $this->clean_key($k2) ] = $this->clean_value($v2);
}
}
else
{
$return[$k] = $this->clean_value($v);
}
}
}

// Sort out the accessing IP

$return['IP_ADDRESS'] = $this->select_var( array(
1 => $_SERVER['REMOTE_ADDR'],
2 => $HTTP_X_FORWARDED_FOR,
3 => $HTTP_PROXY_USER,
4 => $REMOTE_ADDR
));

// Make sure we take a valid IP address

$return['IP_ADDRESS'] = preg_replace( "/^([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})/", "\\1.\\2.\\3.\\4", $return['IP_ADDRESS'] );

$return['request_method'] = ( $_SERVER['REQUEST_METHOD'] != "" ) ? strtolower($_SERVER['REQUEST_METHOD']) : strtolower($REQUEST_METHOD);

return $return;
}


Спустя 15 минут, 49 секунд (19.10.2010 - 12:01) vasa_c написал(а):
Эти конструкции были отмеченые, как нерекомендуемые, когда я ещё только начинал с пыхом - 8 лет назад.

Спустя 9 минут, 44 секунды (19.10.2010 - 12:11) t470004 написал(а):
Разработчики ipb это писали smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.