Foros del Web » Programando para Internet » PHP »

Servidor PHP no pasa las variables x URL

Estas en el tema de Servidor PHP no pasa las variables x URL en el foro de PHP en Foros del Web. Algo tan simple como esto no funciona en un servidor PHP (remoto): Código PHP: < a href = "prueba2.php?variable=1" > Prueba </ a >  La pagina ...
  #1 (permalink)  
Antiguo 30/07/2007, 16:24
 
Fecha de Ingreso: marzo-2005
Mensajes: 201
Antigüedad: 19 años
Puntos: 0
Servidor PHP no pasa las variables x URL

Algo tan simple como esto no funciona en un servidor PHP (remoto):

Código PHP:
<a href="prueba2.php?variable=1">Prueba</a
La pagina siguiente (prueba2.php) no muestra el valor de la variable $variable.

Lo he probado en 2 servidores distintos: en uno no funciona (no toma el valor). ¿Tendré que modificar algo de la configuracion para que tome el pase de variables por la URL?
  #2 (permalink)  
Antiguo 30/07/2007, 16:26
 
Fecha de Ingreso: julio-2003
Ubicación: Colombia
Mensajes: 591
Antigüedad: 20 años, 9 meses
Puntos: 7
Re: Servidor PHP no pasa las variables x URL

Como estas accediendo a la variable? Si es solo $variable, funciona con el parametro register_globals=On, pero es algo obsoleto.

Deberías acceder con el arreglo $_GET['variable'].


Chaop!
__________________
Visita www.legionlandrover.com
  #3 (permalink)  
Antiguo 30/07/2007, 16:40
 
Fecha de Ingreso: marzo-2005
Mensajes: 201
Antigüedad: 19 años
Puntos: 0
Re: Servidor PHP no pasa las variables x URL

En tonces, en este vinculo cómo lo usaría? Te pregunto porque en los ultimos 2 años usé (y en esta misma web veo que lo usa) lo de pasar la variable x la URL con
vinculo.php?variable=1

Empiezo a dudar de mi estado de salud mental

La prueba que hice es muy sencilla en la pagina 1 que enví alas variables

<a href="pagina2.php?variable=1">Prueba</a>

y en la pagina 2, que la recibe y debe mostrar:

<?php echo $variable;?>

Juro que no entiendo!.

Gracias!
  #4 (permalink)  
Antiguo 30/07/2007, 16:57
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Servidor PHP no pasa las variables x URL

Código PHP:
<?php echo $_GET['variable'];?>
Revisa la documentacion de PHP el tema sobre arrays superglobales:

PHP: Uso de Register Globals
PHP: Variables Predefinidas

Depende de la version de PHP que tengas instalada, y de la configuracion del php.ini de tu servidor

Un saludo,
  #5 (permalink)  
Antiguo 30/07/2007, 16:57
 
Fecha de Ingreso: julio-2003
Ubicación: Colombia
Mensajes: 591
Antigüedad: 20 años, 9 meses
Puntos: 7
Re: Servidor PHP no pasa las variables x URL

Mira lo que pasas es que eso sirve cuando la directiva register_globals=On.
Ultimamente se ha determinado que es inseguro mantenerlo así, por eso ahora PHP.ini viene deshabilitado por defecto.

O sea que si antes programabas así, ahora hay que adaptarse a los cambios, es por seguridad.

Chaop!
__________________
Visita www.legionlandrover.com
  #6 (permalink)  
Antiguo 30/07/2007, 17:00
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Re: Servidor PHP no pasa las variables x URL

Como te dijo luchope, necesitas usar $_GET['variable'] en lugar de $variable, y esto es por una directiva bastante insegura que se llama register_globals, es recomendable que te acostumbres a usar $_GET o $_POST para leer las variables que vienen via GET o POST.

Saludos.
  #7 (permalink)  
Antiguo 30/07/2007, 19:48
 
Fecha de Ingreso: marzo-2005
Mensajes: 201
Antigüedad: 19 años
Puntos: 0
Re: Servidor PHP no pasa las variables x URL

Asi habré de hacerlo, pues.

Agradezco mucho sus consejos e instrucciones.
  #8 (permalink)  
Antiguo 31/07/2007, 10:00
 
Fecha de Ingreso: marzo-2005
Mensajes: 201
Antigüedad: 19 años
Puntos: 0
Re: Servidor PHP no pasa las variables x URL

Es decir que el formulario envia esto:

Código PHP:
<input name="categoria" type="text" id="categoria">
]<
input name="nombre" type="text" id="nombre"
y luego ejecuta así ?:

Código PHP:
$insertar "INSERT INTO articulos (id_articulo,categoria,nombre) 
VALUES ('0','"
.$_GET['categoria']."','".$_GET[nombre]."')"
Pregunto porque no tengo resultado en la BBDD, es decir, no hace el INSERT y no detecto donde estará la falla
  #9 (permalink)  
Antiguo 31/07/2007, 10:01
 
Fecha de Ingreso: marzo-2005
Mensajes: 201
Antigüedad: 19 años
Puntos: 0
Re: Servidor PHP no pasa las variables x URL

corrijo:

insertar = "INSERT INTO articulos (id_articulo,categoria,nombre)
VALUES ('0','".$_GET['categoria']."','".$_GET['nombre']."')";
  #10 (permalink)  
Antiguo 31/07/2007, 12:01
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Re: Servidor PHP no pasa las variables x URL

Te arroja algun error?

Saludos.
  #11 (permalink)  
Antiguo 31/07/2007, 12:15
 
Fecha de Ingreso: septiembre-2003
Mensajes: 265
Antigüedad: 20 años, 6 meses
Puntos: 1
Re: Servidor PHP no pasa las variables x URL

Cita:
Iniciado por nngg Ver Mensaje
Es decir que el formulario envia esto:

Código PHP:
<input name="categoria" type="text" id="categoria">
]<
input name="nombre" type="text" id="nombre"
y luego ejecuta así ?:

Código PHP:
$insertar "INSERT INTO articulos (id_articulo,categoria,nombre) 
VALUES ('0','"
.$_GET['categoria']."','".$_GET[nombre]."')"
Pregunto porque no tengo resultado en la BBDD, es decir, no hace el INSERT y no detecto donde estará la falla
Depende del metodo de tu formulario

si es : method="post" debe recibir las variables $_POST['NombreVariable']
si es : method="get" debe recibir las variables $_GET['NombreVariable']

espero que te sirva
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 13:58.