Register_globals
Skrevet af d. 6/12-2017 13:11

Register_globals på vores servere

ServerGlobals
Windows Off
Unix On

"Register_globals = off" betyder at du muligvis ikke kan bruge querystrings som du er vant til. At køre en server med "Register_globals = on" forringer sikkerheden og vi kører derfor så vidt muligt med "Register_globals = off". Den nye anbefalede metode i PHP4 er følgende:

<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
<title></title>  
<p>

<?
  
  $strParm = $HTTP_GET_VARS["type"];
  $strParm = eregi_replace("[^a-z0-9_\.\-]", "", $strParm);
  
  echo $strParm;
  
?>

</p>
</html>

Prøv kaldet: php-get-vars.php?type=hej der kalder ovenstående kode. Dette virker forøvrigt også i PHP3. Har du meget kode der bruger det gamle system kan du med fordel kopiere følgende kode ind øverst i alle dine scripts, så vil al din gamle kode virke uden at det er nødvendigt at ændre det.

Fil der henter variable:

require("/usr/local/www/ftpbrugernavn/inc/http-vars.inc");

Include filen:

if($HTTP_GET_VARS){
  foreach($HTTP_GET_VARS as $Key=>$Value)
  {
    $$Key = $Value;
  }
}

if($HTTP_POST_VARS){
  foreach($HTTP_POST_VARS as $Key=>$Value)
  {
    $$Key = $Value;
  }
}

if($HTTP_SESSION_VARS){
  foreach($HTTP_SESSION_VARS as $Key=>$Value)
  {
    $$Key = $Value;
  }
}

if($HTTP_COOKIE_VARS){
  foreach($HTTP_COOKIE_VARS as $Key=>$Value)
  {
    $$Key = $Value;
  }
}

if($HTTP_SERVER_VARS){
  foreach($HTTP_SERVER_VARS as $Key=>$Value)
  {
    $$Key = $Value;
  }
}

if($HTTP_ENV_VARS){
  foreach($HTTP_ENV_VARS as $Key=>$Value)
  {
    $$Key = $Value;
  }
}

Lidt information fra PHP konfigurationen.

  • allow_call_time_pass_reference = Off
    It's not possible to decide to force a variable to be passed by reference when calling a function. The PHP 4 style to do this is by making the function require the relevant argument by reference.
  • register_globals = Off
    Global variables are no longer registered for input data (POST, GET, cookies, environment and other server variables). Instead of using $foo, you must use $HTTP_POST_VARS["foo"], $HTTP_GET_VARS["foo"], $HTTP_COOKIE_VARS["foo"], $HTTP_ENV_VARS["foo"] or $HTTP_SERVER_VARS["foo"], depending on which kind of input source you're expecting 'foo' to come from.
  • magic_quotes_gpc = Off
    Input data is no longer escaped with slashes so that it can be sent into SQL databases without further manipulation. Instead, you should use the function addslashes() on each input element you wish to send to a database.
  • variables_order = "GPCS"
    The environment variables are not hashed into the $HTTP_ENV_VARS[]. To access environment variables, you can use getenv() instead.
(0 stemmer)
Denne artikel var til hjælp
Denne artikel var ikke til hjælp

Kommentarer (0)
Opret kommentar
 
 
Navn:
Email:
Kommentarer:
CAPTCHA Verificering 
 
Indtast teksten du ser på billedet i feltet herunder (CAPTCHA). Dette er påkrævet for at undgå automatiske registreringer og form afsendelser.

Referencer |  Om Azero |  Betingelser |  Job |  Presse |  Kontakt Azero

Azero A/S - CVR 28 10 17 59 - Skjørringvej 8 - 8464 Galten - Telefon 38 19 50 17
Danske Bank - Reg 4180 - Konto 0010092027 - SWIFT DABADKKK - IBAN DK7230000010092027

Copyright © 2000-2020. Azero A/S respekterer alle varemærker.
Priser er angivet eksklusive moms i DKK, der tages forbehold for trykfejl. Alt salg sker i henhold til vores betingelser.
1. Domaincheck - 2. Search - 3. NScheck - 4. NSlookup - 5. Lookup - 6. TraceRoute - 7. Query - 8. CheckWeb - (9. Flere)