Foros del Web » Programando para Internet » PHP »

Pasar variable oculta por header(location:);??

Estas en el tema de Pasar variable oculta por header(location:);?? en el foro de PHP en Foros del Web. Buenos días. Estoy haciendo un sistema de logueo para realizar canjeo de cupones y tengo unas dudas. Primero he creado un formulario para loguearse, solo ...
  #1 (permalink)  
Antiguo 23/03/2012, 05:11
 
Fecha de Ingreso: marzo-2012
Mensajes: 28
Antigüedad: 12 años
Puntos: 0
Pasar variable oculta por header(location:);??

Buenos días.
Estoy haciendo un sistema de logueo para realizar canjeo de cupones y tengo unas dudas. Primero he creado un formulario para loguearse, solo con pass (raro pero es lo que me han encargado):
Código HTML:
<form action="validar.php" method="post">
	Password:<input type="password" name="passCupon" size="40" maxlength="40" />
	<input type="submit" value="Ingresar" />
</form> 
En validar se crea la comprobación con la bbdd sql:
Código PHP:
session_start();
//datos para establecer la conexion con la base de mysql.
mysql_connect$server$user$pass )or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db$bbdd )or die ('Error al seleccionar la Base de Datos: '.mysql_error());

if( 
trim($_POST["passCupon"]) != "")
{
    
$cupon $_POST["passCupon"];
    
$result mysql_query('SELECT cupon FROM pedido');
    if(
$row mysql_fetch_array($result))
    {
        if(
$row["cupon"] == $cupon)
        {
            echo 
'Has sido logueado correctamente '.$_SESSION['k_username'].' <p>';
            
header("location: index.php");
        }
        else
        {
            echo 
'Cupón incorrecto';
        }
    }
    else
    {
        echo 
'Cupón no existente en la base de datos';
    }
    
mysql_free_result($result);
}
else
{
    echo 
'Debe especificar un cupón';
}
mysql_close(); 
La idea es que al loguearse correctamente, el header de arriba redirija a index y con un if en php se muestre la zona que antes estaba oculta
Código HTML:
<?php
if( $estado == "correcto" )
{
?>
////////////////// AQUI EL CONTENIDO BLOQUEADO///////////////////////
<?php
}
else
{
?>
<!--FORMULARIO LOGUEO-->
<form action="validar.php" method="post">
	Password:<input type="password" name="passCupon" size="40" maxlength="40" />
	<input type="submit" value="Ingresar" />
</form>
<?php
}
?> 
Si la variable estado es correcto, mostrar lo bloqueado. Para ello necesitaría pasar dicha variable por header pero si lo hago en la url todo el mundo podrá verlo...Alguna idea?
Muchas gracias
Saludos
  #2 (permalink)  
Antiguo 23/03/2012, 06:57
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 6 meses
Puntos: 71
Respuesta: Pasar variable oculta por header(location:);??

Usa $_SESSION en lugar de $_GET
  #3 (permalink)  
Antiguo 23/03/2012, 09:41
 
Fecha de Ingreso: marzo-2012
Mensajes: 28
Antigüedad: 12 años
Puntos: 0
Respuesta: Pasar variable oculta por header(location:);??

Gracias, lo probaré.

Etiquetas: formulario, mysql, oculta, sql, 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 11:58.