Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: в чем разница между $_GET и $HTTP_GET_VARS ?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
Давит
Отправлено: 01 Августа, 2011 - 20:29:29
Post Id



Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Май 2011  


Помог: 2 раз(а)




Есть сайт,
оно работало на php4, сменил хостинг теперь на php5

одно страница не работало. так как get запрос принимал с $HTTP_GET_VARS
Я его поменял $_GET и все теперь работает

но не понимаю в чем разница,
Скажите пожалуйста, где можно использовать $HTTP_GET_VARS и в чем разница между $_GET и $HTTP_GET_VARS ?
 
 Top
vlom
Отправлено: 01 Августа, 2011 - 20:43:26
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 681
Дата рег-ции: Окт. 2010  
Откуда: Екатеринбург


Помог: 4 раз(а)




устаревший способ получения переменных
в современном мире лучше использовать $_GET
(Добавление)
$HTTP_GET_VARS при register_global = on
 
 Top
OrmaJever Модератор
Отправлено: 01 Августа, 2011 - 20:53:23
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Давит пишет:
одно страница не работало. так как get запрос принимал с $HTTP_GET_VARS
Я его поменял $_GET и все теперь работает

Ну вот и разница, в php5 сократили название масива и старый теперь может не работать.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
LIME
Отправлено: 01 Августа, 2011 - 20:56:36
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




vlom при включенном register globals вообще можно обращаться не по массиву а по имени переменной
то есть все элементы стандартных массивов становятся одноименными глобальными переменными
 
 Top
Давит
Отправлено: 01 Августа, 2011 - 21:00:17
Post Id



Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Май 2011  


Помог: 2 раз(а)




хочу сделать register_global = on
но не знаю как?
 
 Top
LIME
Отправлено: 01 Августа, 2011 - 21:02:13
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Давит пишет:
хочу сделать register_global = on
не сметь ))
это не то
Цитата:
register_long_arrays boolean

Сообщает PHP, следует ли регистрировать устаревшие длинные предопределенные переменные типа $HTTP_*_VARS. Если включены (по умолчанию), длинные предопределенные переменные PHP, например $HTTP_GET_VARS, будут объявлены. Если вы их не используете, рекомендуем отключить их из соображений производительности. Вместо них следует использовать суперглобальные массивы, например $_GET.


Эта директива стала доступна начиная с версии PHP 5.0.0.

поищите эту директиву в php.ini
 
 Top
White
Отправлено: 01 Августа, 2011 - 21:02:37
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




при чем не просто лучше, в php 6 по словам разработчиков например суперглобальные массивы HTTP_*_VARS вызовут критическую ошибку.
vlom при register_globals = on, $id = $HTTP_GET_VARS['id'] = $_GET['id'], а при off, $HTTP_GET_VARS['id'] = $_GET['id'], $id - неизвестен, но суперглобальный $HTTP_GET_VARS будет существовать
(Добавление)
Давит пишет:
хочу сделать register_global = on

установите 3 php Подмигивание


-----
if(time()>1356048000) die();
 
 Top
Давит
Отправлено: 01 Августа, 2011 - 21:09:38
Post Id



Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Май 2011  


Помог: 2 раз(а)




Сайт старый сайт, админ раздел тоже не работает,
если сделать register_global = on думаю сработает


через файл .htaccess как сделать?
 
 Top
LIME
Отправлено: 01 Августа, 2011 - 21:14:49
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Давит нихера не сработает
лучше всего переписать код
или добавить в начало каждого скрипта ini_set('register_long_arrays','on');
 
 Top
White
Отправлено: 01 Августа, 2011 - 21:15:49
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




Давит только register_globalS
CODE (htmlphp):
скопировать код в буфер обмена
  1. php_value register_globals On
  2. php_flag register_globals On

но это не хорошо, задумайтесь над рефакторингом кода, да и не поможет вам это, а поможет
CODE (htmlphp):
скопировать код в буфер обмена
  1. php_value register_long_arrays On

(Отредактировано автором: 01 Августа, 2011 - 21:16:30)



-----
if(time()>1356048000) die();
 
 Top
Давит
Отправлено: 01 Августа, 2011 - 21:19:09
Post Id



Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Май 2011  


Помог: 2 раз(а)




Спасибо,
мне нужно оно работало, потом разбирус по тихонько Улыбка
 
 Top
LIME
Отправлено: 01 Августа, 2011 - 21:20:13
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




iniset с этой опцией не работает извините

(Отредактировано автором: 01 Августа, 2011 - 21:28:11)

 
 Top
White
Отправлено: 01 Августа, 2011 - 21:33:55
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




LIME просто все суперглобальные массивы предопределяются движком php в момент запуска скрипта, и перед его выполнением
Давит Спасибо здесь неуместно, register_globals это зло


-----
if(time()>1356048000) die();
 
 Top
LIME
Отправлено: 01 Августа, 2011 - 21:36:42
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




White спасибо я так и думал )
 
 Top
Давит
Отправлено: 01 Августа, 2011 - 21:52:43
Post Id



Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Май 2011  


Помог: 2 раз(а)




не получается
Везде написано $HTTP_GET_VARS как сделать чтобы оно работало?


php_value register_globals On
php_flag register_globals On
не помог

(Отредактировано автором: 01 Августа, 2011 - 21:53:02)

 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB