ПредишенСледващото

Q: Формата не показва данните.
Q: Да не се изчисти параметрите подадени на скрипта.
Q: променлива $ Страницата е празен, въпреки че аз съм преминаване do.php страница = 2?
Q: Какво трябва да направя, ако общежитие изключен register_globals

Може би най-забележимата промяна в PHP, това е, което се е променило стойността по подразбиране за register_globals директива. От версия 4.2.0 е изключен.

Това се прави за по-лесно писане сигурни скриптове. В развитието на сравнително сложни проекти, когато броят на променливите, използвани е голям, той е лесно възможно да се предотврати използването на на неподготвен променлива, която, когато register_globals = On може да бъде прехвърлено към сценария от външния хакер.

Ако register_globals = на променливата $ упълномощен може да бъде вярно, дори и ако authenticated_user () връща FALSE.

А сега да разгледаме методите на борба:

1. Използване на предварително зададените масиви:

  • $ HTTP_GET_VARS - променливи предадени на метода GET
  • $ HTTP_POST_VARS - променливи предадени на метода POST
  • $ HTTP_COOKIE_VARS - стойности Cookie
  • $ HTTP_SESSION_VARS - сесийни променливи
  • $ HTTP_FILES_VARS - променливи изтеглени файлове

Не забравяйте, че ако сте с помощта на предварително масиви не са видими в самата функция, за необходимостта да се процедира, както следва:

2. Използване на Свръхглобалните

От версия 4.1.0, PHP осигурява допълнителен набор от предварително дефинирани масиви, съдържащи променливи от уеб сървър (ако има такъв), на околната среда и потребителски вход. Тези нови масиви са по-скоро специални, тъй като са автоматично глобален - т.е. автоматично на разположение във всеки обхват.

  • $ _GET - променливи предадени на метода GET
  • $ _POST - променливи предадени на метода POST
  • $ _COOKIE - стойности Cookie
  • $ _SESSION - сесийни променливи
  • $ _FILES - променливи изтеглени файлове

Свръхглобалните не са недостатъците, описани по-горе:

3. Използване import_request_variables () функция

Функцията ви позволява да импортирате GET / POST / Cookie променливи.

Видове могат да бъдат:

При задаване на типа на регистъра, е без значение. Можете да прехвърлите няколко вида, но променливи ще се припокриват.

Пример за импортиране на GET, а на върха ги публикувате променливи:

Възможно е, че бъдещите версии на PHP register_globals ще бъдат изключени напълно.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!