Foros del Web » Programando para Internet » PHP »

Header() No logro que funcione

Estas en el tema de Header() No logro que funcione en el foro de PHP en Foros del Web. Estimados, Rebicé ya varios POST de diferentes soluciones, apliqué todo lo que he visto pero sigo sin que me funcione mi Header( "Location:......). MyCodigo: Código ...
  #1 (permalink)  
Antiguo 27/08/2009, 12:53
Usuario no validado
 
Fecha de Ingreso: mayo-2005
Ubicación: Benicàssim
Mensajes: 56
Antigüedad: 19 años, 6 meses
Puntos: 0
Header() No logro que funcione

Estimados,

Rebicé ya varios POST de diferentes soluciones, apliqué todo lo que he visto pero sigo sin que me funcione mi Header( "Location:......).

MyCodigo:

Código PHP:
if ( isset( $_POST['InsertarRegistroDetalle'] ) ) {

                 
$IdProducto $_POST['Codigo'] ;
             
$Cantidad $_POST['Cantidad'];
             
$Precio $_POST['Precio'];
             include ( 
"conexion.inc.php" ) ;

        
$sql_consulta_insercion "INSERT INTO reservas_movimientos (
                                            IdReserva,
                                            IdProducto,
                                            Cantidad,
                                            Precio )
                                        VALUES ("
."'".
                                            
$IdReserva."',".
                                            
$IdProducto.",'".
                                            
$Cantidad."','".
                                            
$Precio."')" ;

        
$sql_resultado_insercion mysql_query$sql_consulta_insercion )  or die( mysql_error()) ;
        
mysql_free_result$sql_resultado_insercion ) ;
             
mysql_close();
             
header("Location: $pag?accion=Detalle&id=$id");
        exit;

    } 

Muchas gracias!
  #2 (permalink)  
Antiguo 27/08/2009, 13:11
 
Fecha de Ingreso: octubre-2008
Mensajes: 365
Antigüedad: 16 años, 1 mes
Puntos: 12
Respuesta: Header() No logro que funcione

Suponiendo que entra al if puedes modificar esta línea y decir si sale correctamente la sintaxis de tu header:

echo "Location: $pag?accion=Detalle&id=$id";
header("Location: $pag?accion=Detalle&id=$id");


Ahh y no necesitas el exit;

Yo lo tengo de esta manera y me funciona muy bién (La diferencia son las comillas)

header('location:index.php?valor=$valor');

S4lu2
  #3 (permalink)  
Antiguo 27/08/2009, 13:24
Usuario no validado
 
Fecha de Ingreso: mayo-2005
Ubicación: Benicàssim
Mensajes: 56
Antigüedad: 19 años, 6 meses
Puntos: 0
Respuesta: Header() No logro que funcione

Gracias cosmo_

Cuando agregué la línea que me pedite:
Código PHP:
echo "Location: $pag?accion=Detalle&id=$id";
header("Location: $pag?accion=Detalle&id=$id"); 
Obte como respuesta:
Código PHP:
Location: /tm/reservas.php?accion=Detalle&id=17 
  #4 (permalink)  
Antiguo 27/08/2009, 13:30
 
Fecha de Ingreso: octubre-2008
Mensajes: 365
Antigüedad: 16 años, 1 mes
Puntos: 12
Respuesta: Header() No logro que funcione

probaste con las comillas simples??
  #5 (permalink)  
Antiguo 27/08/2009, 13:34
Usuario no validado
 
Fecha de Ingreso: mayo-2005
Ubicación: Benicàssim
Mensajes: 56
Antigüedad: 19 años, 6 meses
Puntos: 0
Respuesta: Header() No logro que funcione

Acabo de probarlo... y nada. Lo peor de todo es que en el mismo archivo .PHP tengo varios header() colocdos y me funcionan corectamente, sólo es este.

Código PHP:
header('Location:$pag?accion=Detalle&id=$IdReserva'); 
  #6 (permalink)  
Antiguo 27/08/2009, 13:45
 
Fecha de Ingreso: octubre-2008
Mensajes: 365
Antigüedad: 16 años, 1 mes
Puntos: 12
Respuesta: Header() No logro que funcione

lo que pasa que está buscando una subcarpeta; prueba esto:


header('Location: ./tm/reservas.php?accion=Detalle&id=17');

Le aumenté el (.) antes de /tm/reservas.php .........

salu2
  #7 (permalink)  
Antiguo 27/08/2009, 14:21
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Header() No logro que funcione

Cita:
Iniciado por lvwrz
header("Location: $pag?accion=Detalle&id=$id");
Solo hay dos razones para que ese codigo no funcione:
1- La pagina de destino no existe, normalmente cuando la ruta no esta bien definida.
2- Realizaste ya una salida al navegador, un echo, un salto de linea, un espacio, etc.

Y el exit; es necesario para evitar que se siga procesando el script.
__________________
- León, Guanajuato
- GV-Foto
  #8 (permalink)  
Antiguo 28/08/2009, 10:19
 
Fecha de Ingreso: octubre-2008
Mensajes: 365
Antigüedad: 16 años, 1 mes
Puntos: 12
Respuesta: Header() No logro que funcione

Bueno yo hice la prueba con el mismo código direccionado a una subcarpeta tal como lo hace lvwrz y no funciona muestra página no encontrada; y si añado el (.) como dije antes si funciona y bien

Salu2
  #9 (permalink)  
Antiguo 28/08/2009, 14:04
Avatar de iandrade  
Fecha de Ingreso: septiembre-2006
Ubicación: Xalapa, Veracruz, MÉXICO.
Mensajes: 171
Antigüedad: 18 años, 1 mes
Puntos: 6
Respuesta: Header() No logro que funcione

Bueno, Como comenta Triby, es porque no encuentra la ruta, deberas aprender a diferenciar entre rutas reales o relativas
cuando pones una ruta asi:

/ruta/al/archivo.php (ruta real)

el navegador o interpreta como:

http://servidor/ruta/al/archivo.php

pero si le pones un . entonces tomara la ruta actual y se la agregará a la busqueda:

./ruta/al/archivo.php (ruta relativa al documento)

suponiendo que tu archivo que redurecciona esta en

http://servidor/otraruta/direcciona.php

la salida es :

http://servidor/otraruta/ruta/al/archivo.php

espero que se entienda esto ya que es un error bastante comun
__________________
No todo lo que se hace en segundo plano es AJAX
  #10 (permalink)  
Antiguo 28/08/2009, 16:50
 
Fecha de Ingreso: agosto-2009
Mensajes: 5
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Header() No logro que funcione

header("Location:".$pag."?accion=Detalle&id=$id");

ya sea con comillas simples o dobles, se debe respetar el concatenamiento del XML,

para concatenar una cadena (que es el parametro q le pasas al header()) o a cualquier otra funcion debe ser de la sgte manera

"texto 1".$variable1."texto 2".$variable2." texto 3" .....etc


Slds
  #11 (permalink)  
Antiguo 28/08/2009, 17:05
 
Fecha de Ingreso: octubre-2008
Mensajes: 365
Antigüedad: 16 años, 1 mes
Puntos: 12
Respuesta: Header() No logro que funcione

Hola

Cita:
header("Location:".$pag."?accion=Detalle&id=$id");

ya sea con comillas simples o dobles, se debe respetar el concatenamiento del XML,

para concatenar una cadena (que es el parametro q le pasas al header()) o a cualquier otra funcion debe ser de la sgte manera

"texto 1".$variable1."texto 2".$variable2." texto 3" .....etc


Slds
si ponés en una sola cadena funciona (reconoce tus contantes varaiables y demás); verifícalo (Ahorras lo otro).

Código PHP:
header('Location:$pag?accion=Detalle&id=$IdReserva'); 
salu2

Última edición por cosmo_; 28/08/2009 a las 17:10
  #12 (permalink)  
Antiguo 28/08/2009, 18:16
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Header() No logro que funcione

Cita:
Iniciado por cosmo_
si ponés en una sola cadena funciona (reconoce tus contantes varaiables y demás); verifícalo (Ahorras lo otro).
Cierto... a medias... las variables dentro de una cadena son interpretadas solamente cuando estan entre comillas dobles, en comillas sencillas no. Nunca he probado con constantes, pero supongo que no porque, a falta de un caracter que las identifique, seran reconocidas como parte del texto.
__________________
- León, Guanajuato
- GV-Foto
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:16.