Comunidad de diseño web y desarrollo en internet online

Fallo al pasar variable php entre páginas!!

Citar            
MensajeEscrito el 18 Sep 2006 10:54 pm
Buenas estoy utilizando Dreamweaver 8 para insertar registros en una Bd, (utilizo el Panel comportamientos del servidor).

El registro se me inserta en la Bd sin problemas pero cuando termino en esa página, lo que quiero es enviarla a otra que muestre el detalle del registro que acabo de insertar.

Bien pues no me funciona. Lo estoy haciendo así:

Código :

insertar2.php?valor=" . $row_RSinsertar['referencia'] . "

el valor de $row_RSinsertar['referencia'] es el valor que queda registrado en la Bd pero sin embargo no pasa de una página a otra.

He probado a pasarle un valor manualmente:

Código :

insertar2.php?valor=dosppp

y sí que funciona.

Este es el codigo que utiliza Dreamweaver para realizar la operacion:

Código :

$insertGoTo = "insertar2.php?valor=" . $row_RSinsertar['referencia'] . "";
  if (isset($_SERVER['QUERY_STRING'])) {
    $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
    $insertGoTo .= $_SERVER['QUERY_STRING'];
  }
  header(sprintf("Location: %s", $insertGoTo));


La verdad, no tengo ni idea de PHP y recurro a Dreamweaver para estas cosas
Y ahora recurro a vosotros para que me salveis el pellejo.

Un Saludo

Perillan

Por perillan

100 de clabLevel



Genero:Masculino  

La Mancha profunda....

firefox
Citar            
MensajeEscrito el 27 Sep 2006 09:55 am
Creo que el header Location necesita una ruta absoluta para funcionar correctamente

seria

Código :

$insertGoTo = "http://www.ejemplo.com/insertar2.php?valor=" . $row_RSinsertar['referencia'] . ""); 

Por vites

13 de clabLevel



 

firefox
Citar            
MensajeEscrito el 27 Sep 2006 11:50 am
No es eso vites

Dreamweaver suele usar una gran cantidad de código para hacer cualquier cosita, quizas si posteas más código se pueda ver lo que hay alrededor de eso, sobre todo antes.
Por otro lado, te digo que DW trae una opción en la que le indicas que en una redirección como esa o despues de ejecutar algo mantenga las variables. Checa eso en las opciones de los comportamientos de servidor.

Por Ramm

BOFH

3152 de clabLevel

6 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell REC Héroes

London, UK

firefox
Citar            
MensajeEscrito el 27 Sep 2006 12:35 pm
Humm... estamos de acuerdo en que el código del dreamweaver acostumbra a no ser la mejor opción.
Pero en este caso no creo que ese sea el problema. Creo que para que no funcione hay 2 causas posibles:
    que esté mal el valor $row_RSinsertar['referencia']

    que no sea capaz de hacer la redirección


Me incline en buscar en la segunda opcion por lo que dice perillan de
el valor de $row_RSinsertar['referencia'] es el valor que queda registrado en la Bd pero sin embargo no pasa de una página a otra.


Por lo que entiendo que se guarda el valor y por tanto la variable contiene su valor, pero no redirecciona, y como nunca he visto un location con ruta relativa me he inclinado por eso sin saberlo muy bien. :oops:

Pero al parecer se ratifica mi sugerencia ^^ http://es2.php.net/manual/es/function.header.php

Nota: HTTP/1.1 requiere una URI absoluta como argumento a Location: incluyendo el esquema, el nombre del host y una ruta absoluta, aunque algunos clientes aceptan URIs relativas. Usualmente puede usar $_SERVER['HTTP_HOST'], $_SERVER['PHP_SELF'] y dirname() para construir una URI absoluta a partir de una relativa:


Lo mejor es que lo pruebe, si no funciona se necesita más código, si funciona era eso :wink:

Por vites

13 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.