Foros del Web » Programando para Internet » PHP »

Porque uno funciona y otro no

Estas en el tema de Porque uno funciona y otro no en el foro de PHP en Foros del Web. Estoy empezando en el tema y lleno de preguntas la numero 1 porq al peticionar variables desde un formularion con el metodo post esta manera ...
  #1 (permalink)  
Antiguo 05/05/2009, 22:01
Avatar de Links  
Fecha de Ingreso: julio-2007
Mensajes: 58
Antigüedad: 16 años, 9 meses
Puntos: 0
Porque uno funciona y otro no

Estoy empezando en el tema y lleno de preguntas la numero 1

porq al peticionar variables desde un formularion con el metodo post

esta manera no funciona


echo $actionqty." ActionScript<br>";
echo $photoqty." Photoshop<br>";
echo $flashqty." Flash MX<br>";


y esta si


$actionqty = $_POST['actionqty'];
$flashqty = $_POST['flashqty'];
$photoqty = $_POST['photoqty'];

echo $actionqty." ActionScript<br>";
echo $photoqty." Photoshop<br>";
echo $flashqty." Flash MX<br>";
  #2 (permalink)  
Antiguo 05/05/2009, 22:08
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Porque uno funciona y otro no

Porque la primera forma depende de que la directiva register_globals esté On. La segunda forma es la más recomendada.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 05/05/2009, 22:09
Avatar de Links  
Fecha de Ingreso: julio-2007
Mensajes: 58
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Porque uno funciona y otro no

porque la mas recomendad ?

seguridad ? velocidad ?
  #4 (permalink)  
Antiguo 05/05/2009, 22:13
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 15 años, 8 meses
Puntos: 32
Respuesta: Porque uno funciona y otro no

Mira ademas de esto que te paso que no lo hize yo deberias de utilizar tu buscador preferido como google y ser mas recursivo

register_globals es off. El por qué de este cambio viene motivado por un aumento del nivel de seguridad en la configuración del PHP por defecto. Pero esto puede provocar que nuestras páginas dejen de funcionar.

La directiva register_globals cuando esta activada (estado que estaba por defecto antes de la versión 4.2.0 de PHP), provoca que automáticamente se generen variables globales para cookies y valores enviados por get y post entre otros.

Por ejemplo:
Si llamábamos a una página con http://www.internet.com/prueba.php?var1=4, esto provocaba que en la página prueba.php automáticamente se generase la variable $var1 con el valor 4.

Por razones de seguridad este comportamiento automático se ha cambiado, estableciendo el valor por defecto de register_globals a off.

Este cambio puede producir que nuestras antiguas páginas dejen de funcionar, ante esto tenemos dos opciones:

* Activar el register_globals a on.
* Dejar register_globals a off y cambiar nuestras páginas por las referencias adecuadas a cada caso. Esta es la opción más recomendable.

¿Cómo debemos hacer este cambio?

Debemos buscar todas aquellas variables que son definidas automáticamente, variables del servidor, que provienen de get o post, cookies, files, variables de entorno o sesión.

Reemplazar esas variables por las referencias adecuadas en cada caso, en PHP se han definido unos arrays diferentes con valores, dependiendo del lugar de procedencia. Así tenemos los arrays $_SERVER, $_GET, $_POST, $_COOKIE, $_FILES, $_ENV, $REQUEST y $_SESSION.

Si por ejemplo teníamos el siguiente script:

print "Su edad: ".$edad; //cookie
print "Navegador: ".$HTTP_USER_AGENT;
print "Variable: ".$var; //variable de get

Deberíamos reemplazarlas por:

print "Su edad: ".$_COOKIE['edad']; //cookie
print "Navegador: ".$_SERVER['HTTP_USER_AGENT'];
print "Variable: ".$_GET['var']; //variable de get
  #5 (permalink)  
Antiguo 05/05/2009, 22:25
Avatar de Links  
Fecha de Ingreso: julio-2007
Mensajes: 58
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Porque uno funciona y otro no

use google pero me rendi

muchisimas gracias por la informacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:26.