Foros del Web » Programando para Internet » PHP »

pasar dos variables de una pagina a otra

Estas en el tema de pasar dos variables de una pagina a otra en el foro de PHP en Foros del Web. hola muy buenas estoy pasando dos variables de una pagina a otra y logro ver por que no me aparece una de ellas parece que ...
  #1 (permalink)  
Antiguo 21/03/2013, 11:46
 
Fecha de Ingreso: agosto-2011
Ubicación: barcelona
Mensajes: 237
Antigüedad: 12 años, 8 meses
Puntos: 1
pasar dos variables de una pagina a otra

hola muy buenas estoy pasando dos variables de una pagina a otra y logro ver por que no me aparece una de ellas parece que todo esta correcto no entiendo

aqui la primera pagina donde envio las variables al rellenar un formulario de registro de usuarios la primera linea me recoge la variable que quiero enviar que me viene de otra pagina y funciona bien ya que la puedo imprimir y se ve en la barra de direcciones correctamente .
Código PHP:
Ver original
  1. <?php
  2. $tienda= htmlspecialchars($_GET['tienda']);
  3.  
  4. if (!function_exists("GetSQLValueString")) {
  5. function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
  6. {
  7.   if (PHP_VERSION < 6) {
  8.     $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  9.   }
  10.  
  11.   $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
  12.  
  13.   switch ($theType) {
  14.     case "text":
  15.       $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
  16.       break;    
  17.     case "long":
  18.     case "int":
  19.       $theValue = ($theValue != "") ? intval($theValue) : "NULL";
  20.       break;
  21.     case "double":
  22.       $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
  23.       break;
  24.     case "date":
  25.       $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
  26.       break;
  27.     case "defined":
  28.       $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
  29.       break;
  30.   }
  31.   return $theValue;
  32. }
  33. }
  34. ?>
  35. <?php
  36. // *** Validate request to login to this site.
  37. if (!isset($_SESSION)) {
  38. }
  39.  
  40. $loginFormAction = $_SERVER['PHP_SELF'];
  41. if (isset($_GET['accesscheck'])) {
  42.   $_SESSION['PrevUrl'] = $_GET['accesscheck'];
  43. }
  44.  
  45. if (isset($_POST['email_user'])) {
  46.   $loginUsername=$_POST['email_user'];
  47.   $password=$_POST['password'];
  48.   $MM_fldUserAuthorization = "";
  49.   $MM_redirectLoginSuccess = "/blueberryswebtiendas/webtiendas/plantilla/final_cliente_registrado.php?usuario=$loginUsername&tienda=$tienda";
  50.   $MM_redirectLoginFailed = "/blueberryswebtiendas/webtiendas/plantilla/error_datos.php";
  51.   $MM_redirecttoReferrer = false;
  52.   mysql_select_db($database_blueberryswebtiendas, $blueberryswebtiendas);
  53.  
  54.   $LoginRS__query=sprintf("SELECT email_user, pasword_user_invitado FROM usuario_user WHERE email_user=%s AND pasword_user_invitado=%s",
  55.     GetSQLValueString($loginUsername, "text"), GetSQLValueString($password, "text"));
  56.    
  57.   $LoginRS = mysql_query($LoginRS__query, $blueberryswebtiendas) or die(mysql_error());
  58.   $loginFoundUser = mysql_num_rows($LoginRS);
  59.   if ($loginFoundUser) {
  60.      $loginStrGroup = "";
  61.    
  62.     if (PHP_VERSION >= 5.1) {session_regenerate_id(true);} else {session_regenerate_id();}
  63.     //declare two session variables and assign them
  64.     $_SESSION['MM_Username'] = $loginUsername;
  65.     $_SESSION['MM_UserGroup'] = $loginStrGroup;      
  66.  
  67.     if (isset($_SESSION['PrevUrl']) && false) {
  68.       $MM_redirectLoginSuccess = $_SESSION['PrevUrl']; 
  69.     }
  70.     header("Location: " . $MM_redirectLoginSuccess );
  71.   }
  72.   else {
  73.     header("Location: ". $MM_redirectLoginFailed );
  74.   }
  75. }
  76. ?>


y eta otra pagina donde recojo la variable pero en la barra solo me muestra la primera con su resultado y en el caso de la segunda me muestra el nombre que le doy a la variable que es tienda pero no su resultado es de cir sale "tienda =" a nada vaya y no veo el fallo en la primera pagina la envió así

Código PHP:
Ver original
  1. $MM_redirectLoginSuccess = "/blueberryswebtiendas/webtiendas/plantilla/final_cliente_registrado.php?usuario=$loginUsername&tienda=$tienda";
  #2 (permalink)  
Antiguo 21/03/2013, 12:00
 
Fecha de Ingreso: noviembre-2012
Ubicación: santiago
Mensajes: 23
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: pasar dos variables de una pagina a otra

pero como las estas recibiendo en la otra pagina

Código PHP:
Ver original
  1. $varible=$_GET["variable"];

???
  #3 (permalink)  
Antiguo 21/03/2013, 12:13
 
Fecha de Ingreso: agosto-2011
Ubicación: barcelona
Mensajes: 237
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: pasar dos variables de una pagina a otra

$tienda= htmlspecialchars($_GET['tienda']);
$usuario= htmlspecialchars($_GET['usuario']);
  #4 (permalink)  
Antiguo 21/03/2013, 12:14
 
Fecha de Ingreso: agosto-2011
Ubicación: barcelona
Mensajes: 237
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: pasar dos variables de una pagina a otra

he probado como dices pero nada no veo el fallo
  #5 (permalink)  
Antiguo 21/03/2013, 12:37
 
Fecha de Ingreso: noviembre-2012
Ubicación: santiago
Mensajes: 23
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: pasar dos variables de una pagina a otra

yo tampoco veo el fallo pero estas pasando los valores por uina varible a lo mejor ese es el problema para llamarlo en la otra pagina
  #6 (permalink)  
Antiguo 21/03/2013, 18:09
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Respuesta: pasar dos variables de una pagina a otra

umm.. odio esa programacion predeterminada de adobe...

date cuenta que no es necesario que pases ningun valor por GET o POST, ya que iniciaste una session o sea, dos sesiones...

$_SESSION['MM_Username'] = $loginUsername;
$_SESSION['MM_UserGroup'] = $loginStrGroup;

o me equivoco?

entonces solo deberia ser asi
/blueberryswebtiendas/webtiendas/plantilla/final_cliente_registrado.php?tienda=$tienda

Por ende para recibir esos valores solo deberias tener

Código PHP:
<?php
session_start
():

echo 
$usuario $_SESSION['MM_Username'] ;
echo 
$_SESSION['MM_UserGroup'];
?>

La variable $tienda la verdad que no se de donde sale o de que lugar proviene, creo que sería mejor crear una sesion con esa variable si es de uso constante... lee más y copia menos
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #7 (permalink)  
Antiguo 22/03/2013, 06:04
 
Fecha de Ingreso: agosto-2011
Ubicación: barcelona
Mensajes: 237
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: pasar dos variables de una pagina a otra

loncho_rojas tienes razón en lo de adobe pero dejando solo la variable tienda tampoco me funciona ya lo probé, no entiendo por que no la recibe en la pagina
  #8 (permalink)  
Antiguo 22/03/2013, 06:12
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Respuesta: pasar dos variables de una pagina a otra

Siguiendo como ejemplo tu código de arriba, en la linea 2 ponle un echo

echo $tienda= htmlspecialchars($_GET['tienda']);

En la línea 47 también

echo $loginUsername=$_POST['email_user'];

y en la línea 65

echo $_SESSION['MM_Username'] = $loginUsername;

quita temporalmente y solo para probar las siguientes líneas
69- ponle barras para comentarlo y no elimiarlo

// header("Location: " . $MM_redirectLoginSuccess );

71
//header("Location: ". $MM_redirectLoginFailed );

y comentanos que te imprime en la parte superior, todo esto haciendo el proceso normal de login
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #9 (permalink)  
Antiguo 22/03/2013, 06:40
 
Fecha de Ingreso: agosto-2011
Ubicación: barcelona
Mensajes: 237
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: pasar dos variables de una pagina a otra

loncho_rojas nada ya veo en la pagina esta me lo imprime todo correctamente es en la que redirecciono cuando envió el formulario que no me imprime tienda la variable usuario si la imprime tienda no
ves en la barra de navegación sale asi

final_cliente_registrado.php?usuario=ssss@hotmail. com&tienda=

en tienda nada
  #10 (permalink)  
Antiguo 22/03/2013, 06:45
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Respuesta: pasar dos variables de una pagina a otra

primero vamos a lo de $tienda... que datos envia, y desde donde se envía ese dato y cómo se envia ese dato a la página de login? responde los 3
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #11 (permalink)  
Antiguo 22/03/2013, 06:56
 
Fecha de Ingreso: agosto-2011
Ubicación: barcelona
Mensajes: 237
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: pasar dos variables de una pagina a otra

en la pagina login recibe bien la variable $tienda ya que la puedo imprimir la evio desde un enlace así:
Código HTML:
Ver original
  1. <a href="/blueberryswebtiendas/webtiendas/plantilla/entradaclientes.php?tienda=<?php echo "$tienda"; ?>">facturación</a>

y en la pagina login la recupero asi:

$tienda= htmlspecialchars($_GET['tienda']); hago lo mismo para enviarla de login a la pagina donde no me sale solo que junto con la variable$usuario que si que sale

el caso es que necesito esa variable para modificar una serie de campos de la base de datos poniendo la condición que si el usuario pertenece a esa tienda que me los muestre pero ya ves no sale
  #12 (permalink)  
Antiguo 22/03/2013, 07:24
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Respuesta: pasar dos variables de una pagina a otra

La única explicación que encuentro es que no esta recibiendo correctamente la variable GET.. o bien el htmlspecialchars está creando conflictos entre lo que envías y lo que tienes guardado en tu BD... eso mirando a grandes rasgos tu script...

Te recomiendo pasar datos numericos, es decir, el ID de la tienda y no un string con el nombre para evitar esos conflictos de interpretación.
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #13 (permalink)  
Antiguo 22/03/2013, 07:29
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 13 años
Puntos: 76
Respuesta: pasar dos variables de una pagina a otra

ok, bueno alguna vez me paso algo asi, por alguna razon y si algo me corrigen no se puede o por lo menos yo no pude pasar una variable recibida a otra pagina , la unica es que recibas por primera vez la variable tienda y la asignes a una sesion
  #14 (permalink)  
Antiguo 22/03/2013, 10:25
 
Fecha de Ingreso: agosto-2011
Ubicación: barcelona
Mensajes: 237
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: pasar dos variables de una pagina a otra

informacionsys la verdad es que yo arrastro esta variable hasta tres paginas antes de que me deje de funcionar

Etiquetas: formulario, html, mysql, registro, select, sql, usuarios, variables
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 03:36.