Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/09/2003, 07:37
arcange|
 
Fecha de Ingreso: julio-2003
Ubicación: Europa
Mensajes: 37
Antigüedad: 20 años, 9 meses
Puntos: 0
Busqueda Variable: $_REQUEST

My pregunta es muy simple que partido le podemos sacar a $_REQUEST ( Junto con GET POST ) y si hay algun fallo algo interesante que tenga que saver de esta variable? ( Perdon si ya esta tratado el tema )


Traducción liebre ( Gracias a un traductor de ingles español de estos gratuitos "Ósea mu mal traducido" ).

Variable: $_REQUEST
Nota: Introducido en 4.1.0. no hay ninguna nada equivalente en las versiones más tempranas.

Nota: Antes de PHP 4.3.0, $_FILES la información también es incluida en _$_REQUEST.

Una serie asociativa que consiste en los volúmenes de $_GET, $_POST, y $_COOKIE.

Esto es una 'superglobal', o variable global automática. Esto simplemente significa que está disponible en todos los alcances a lo largo del codigo. No necesita hacer el global $_REQUEST; para accederlo dentro de funciones o métodos.

Si el register_globals director es fijo, entonces estas variables también se harán disponible en el alcance global del xodigo; es decir, separado de $_REQUEST. Para la información relacionada, vea el capítulo de seguridad "Using Register Globals" (Usando el Registro Globals). Estas globals individuales no son las autoglobals (Variable reservada por PHP).


Variable: $_REQUEST
Variables proporcionadas al script por medio de cuaquier mecanismo de entrada del usuario y por lo tanto no se puede confiar en ellas. La presencia y el orden en que aparecen las variables en esta matriz es definido por la directiva de configuración variables_order* . Esta matriz no tiene un análogo en versiones anteriores a PHP 4.1.0. Vea también import_request_variables().

(variables_order string)*
Asigna el orden del analizador de variables EGPCS (Environment, GET, POST, Cookie, Server). El valor por defecto de esta directiva es "EGPCS". Asignandole el valor "GP", por ejemplo, causará que PHP ignore por completo las variables de entorno, cookies y variables server y sobreescriba toda variable GET con variables POST del mismo nombre.


Esto es un ejmplo muy simple con pequeños esperimentos para ver que podia hacer con la Variable. Así que no os asusteis de las conclusiones no tienen muchos sentido pero mas o menos.

Código PHP:
<?
if($_REQUEST['ejemplo'] == 1){
    print 
"<font size='1' face='Verdana'>Con GET presenta <font color='550000'>(".$_GET['ejemplo'].")</font>, con POST presenta <font color='005500'>(".$_POST['ejemplo'].")</font>, con REQUEST presenta <font color='000055'>(".$_REQUEST['ejemplo'].")</font><br>";
    print 
"<br>Primera conclusión tras realizar ejemplo 1 - Conclusión ( Creo que puede ser que errónea ) el predefinido de la variables normales el GET el método que inserta por defecto en el casos, POST solo en los formularios es cullo caso también podemos emplear el mismo POST o GET en el susodicho caso ( Uno uo otro de forma indiferente, según la necesidades ) y el REQUEST en ejemplo uno actua como GET.<br>";
    print 
"<br><a href='?'>Atrás</a></font>";
}else if(
$_REQUEST['ejemplo'] == 2){
    print 
"<font size='1' face='Verdana'>Con GET presenta <font color='550000'>(".$_GET['ejemplo'].")</font>, con POST presenta <font color='005500'>(".$_POST['ejemplo'].")</font>, con REQUEST presenta <font color='000055'>(".$_REQUEST['ejemplo'].")</font><br>";
    print 
"<br>Primera conclusión tras realizar ejemplo 2 - Conclusión ( Creo que puede ser que errónea ) utilizando el metodo GET en este caso nos encontramos que = que en el ejemplo 1 solo REQUEST y GET logran resultado.<br>";
    print 
"<br><a href='?'>Atrás</a></font>";
}else if(
$_REQUEST['ejemplo'] == 3){
    print 
"<font size='1' face='Verdana'>Con GET presenta <font color='550000'>(".$_GET['ejemplo'].")</font>, con POST presenta <font color='005500'>(".$_POST['ejemplo'].")</font>, con REQUEST presenta <font color='000055'>(".$_REQUEST['ejemplo'].")</font><br>";
    print 
"<br>Primera conclusión tras realizar ejemplo 3 - Conclusión ( Creo que puede ser que errónea ) Tanto REQUEST como POST logran resultado, lo que me g¡hace pensar que REQUEST actua como post.<br>";
    print 
"<br><a href='?'>Atrás</a></font>";
}else if(
$_REQUEST['ejemplo'] == 4){
    print 
"<font size='1' face='Verdana'>Con GET presenta <font color='550000'>(".$_GET['ejemplo'].")</font>, con POST presenta <font color='005500'>(".$_POST['ejemplo'].")</font>, con REQUEST presenta <font color='000055'>(".$_REQUEST['ejemplo'].")</font><br>";
    print 
"<br>Primera conclusión tras realizar ejemplo 4 - Conclusión ( Creo que puede ser que errónea ) Bueno simplemente logramos el mismo resultado que si usamos GET pot lo que en my conclusión 4 fianal se podria decir que si no ponemos post el metodo que tomo por predefinido es el GET method='REQUEST' daria = que pusiera method='fsaasddsasaddsa' dado que REQUEST solo esta despinado a los resultados falta de mirar las $_COOKIE creo que tendre que seri comiendome el coco para sacar mas parido a esto.<br><br>Pero a primero ojo yo lo usuaria para hacer mis formularios en los resultados así solo tendria que modificiar method='' segun el tipo de sistema que quiera GET o POST";
    print 
"<br><a href='?'>Atrás</a></font>";
}else{
    print 
"<font size='1' face='Verdana'>Con GET presenta <font color='550000'>(".$_GET['ejemplo'].")</font>, con POST presenta <font color='005500'>(".$_POST['ejemplo'].")</font>, con REQUEST presenta <font color='000055'>(".$_REQUEST['ejemplo'].")</font><br>";
    print 
"<br>Primera conclusión por defecto ( Creo que puede ser que errónea ) No hay ningún resultado por que no hemos aplicado a un ninguna variable, a hora es el momento de ver y decidir cual de los ejemplos de REQUEST deseamos ver primero<br>";
    print 
"<br><a href='?ejemplo=1'>Ejemplo 1 - ?ejemplo=1</a>";
    print 
"<form name='ejemplo2' action='' method='GET'><input name='ejemplo' type='hidden' value='2'><input name='ejemplo2' type='Submit' value='GET'></form>?ejemplo=2 (Metodo - GET)";
    print 
"<form name='ejemplo3' action='' method='POST'><input name='ejemplo' type='hidden' value='3'><input name='ejemplo3' type='Submit' value='POST'></form>?ejemplo=3 (Metodo - POST)";
    print 
"<form name='ejemplo4' action='' method='REQUEST'><input name='ejemplo' type='hidden' value='4'><input name='ejemplo4' type='Submit' value='REQUEST'></form>?ejemplo=4 (Metodo - REQUEST (Equivalente en este a GET))</font>";
}
?>

Salu2 y gracyas por ya ayuda