Foros del Web » Programando para Internet » PHP »

paso de variables

Estas en el tema de paso de variables en el foro de PHP en Foros del Web. Hola a todos tengo un problema, estoy intentando pasar variables de un formulario a una pagina php que los reciba y no me envia las ...
  #1 (permalink)  
Antiguo 18/08/2002, 05:19
 
Fecha de Ingreso: agosto-2002
Mensajes: 6
Antigüedad: 15 años, 4 meses
Puntos: 0
paso de variables

Hola a todos tengo un problema, estoy intentando pasar variables de un formulario a una pagina php que los reciba y no me envia las variables utilizo el siguiente modo

FORMULARIO:
<HTML>
<HEAD>
<TITLE>formulario.html</TITLE>
</HEAD>
<BODY>
<FORM METHOD="post" ACTION="destino2.php">
Nombre<br>
<INPUT TYPE="TEXT" NAME="nombre"><br>
Apellidos<br>
<INPUT TYPE="TEXT" NAME="apellidos"><br>
<INPUT TYPE="SUBMIT">
</FORM>
</BODY>
</HTML>

DESTINO:
</HEAD>
<BODY>
<?
echo "Variable \$nombre:$nombre <br>\n";
echo "Variable \$apellidos:$apellidos <br>\n"
?>
</BODY>
</HTML>

NO ME TRASPASA NADA , LO ESTOY PROBANDO EN MODO LOCAL CON EL SERVIDOR APACHE Y PHP4, OTORS PROGRAMAS DE PHP FUNCIONAN BIEN ¿QUE PUEDE PASAR ? ESTOY EMPEZANDO CON EL PHP Y AGRADECERIA CUALQUIER AYUDA MUCHAS GRACIAS POR TODO....
OSC
  #2 (permalink)  
Antiguo 18/08/2002, 06:13
 
Fecha de Ingreso: mayo-2002
Mensajes: 115
Antigüedad: 15 años, 6 meses
Puntos: 0
Re: paso de variables

En realidad no tengi ni idea de porque no te funciona, pero de todos modos prueba a ver si te funciona poniendo $HTTP_POST_VARS["nombre"] en lugar de $nombre y HTTP_POST_VARS["apellidos"] en lugar de $apellidos

Un Saludo
  #3 (permalink)  
Antiguo 18/08/2002, 06:55
Avatar de Necros  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 431
Antigüedad: 15 años, 10 meses
Puntos: 0
Re: paso de variables

El problema esta claro, debido a un BUg de seguridad de hace unois mesees el paso de variables en PHP se restringe a unos arrays internos de consulta, si deseas que funcione de modo abierto sólo debes retocar el fichero php.ini

Extracto de http://www.php.net
In PHP 4.2.0 and later, the default value for the PHP directive register_globals is off. This is a major change in PHP. Having register_globals off affects the set of predefined variables available in the global scope. For example, to get DOCUMENT_ROOT you'll use $_SERVER['DOCUMENT_ROOT'] instead of $DOCUMENT_ROOT, or $_GET['id'] from the URL http://www.example.com/test.php?id=3 instead of $id, or $_ENV['HOME'] instead of $HOME.

For related information on this change, read the configuration entry for register_globals, the security chapter on Using Register Globals , as well as the PHP 4.1.0 and 4.2.0 Release Announcements.

Using the available PHP Reserved Predefined Variables, like the superglobal arrays, is preferred.


En definitiva, lo que debes hacer es consultar las variables pasadas en el array determinado, como veo que el formulario lo envias con el metodo POST, la recogida seria :

<?=$_POST['$nombre']?>

Si lo pasas por GET = $_GET[''],
SESSIONES : $_SESSION[''],
COOKIES : $_COOKIE[''],

!!! Q te vaya bién el PHP.




By NeCrOS
http://www.necros.com

FrEe WoRlD is FrEE CoDE
-----------------------
  #4 (permalink)  
Antiguo 18/08/2002, 13:18
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Re: paso de variables

jeje Necros . está bien la explicacion y la primera frase de "BUG de seguridad" .. asusta y mas de uno empezara a llamar a las variables por su array asociado ($_XXX['variable']) ...

Pero .. si todavia quieren seguir usando sus "viejos" scripts echos sin conciencia de estos arrays (que por cierto .. antes de $_XXX se usaba $HTTP_metodo_VARS y aun sigue siendo compatible ...) .. pues nada solo cambiar la directiva en cuestion a ON:

php.ini
registre_globals= ON (si esta a OFF) ...

UN saludo,
  #5 (permalink)  
Antiguo 19/08/2002, 05:45
 
Fecha de Ingreso: agosto-2002
Mensajes: 6
Antigüedad: 15 años, 4 meses
Puntos: 0
Re: paso de variables

Gracias por todo ahora me funciona y puedo seguir con mi página u saludote a todos...no os creais que os habeis librado de mi seguire preguntando.....
:)
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 22:07.