Foros del Web » Programando para Internet » PHP »

PHP OO Variables de $_SESSION

Estas en el tema de Variables de $_SESSION en el foro de PHP en Foros del Web. Hola quisiera que si un usuario hace click en un botón se muestre la web de una forma y si presiona otro de otra manera, ...
  #1 (permalink)  
Antiguo 01/04/2012, 17:03
 
Fecha de Ingreso: mayo-2010
Mensajes: 32
Antigüedad: 13 años, 11 meses
Puntos: 0
Pregunta Variables de $_SESSION

Hola quisiera que si un usuario hace click en un botón se muestre la web de una forma y si presiona otro de otra manera, necesito si o si que no modifique la url.

Tengo esto:

<form method="post">
<input type="hidden" name="administrador">
<input type="submit" value="Modo Administrador">
</form>

<form method="post">
<input type="hidden" name="album">
<input type="submit" value="Modo Album">
</form>

Mediante un if hago que se muestre uno o el otro, nunca los dos al mismo tiempo.

Supongamos que se hace click en "Modo Album".

if(isset($_POST["album"])){

echo "Se ha hecho click en Modo Album";

}

Quisiera que esta variable dure toda la sesión por más que cambie la url.

Así es como lo tengo:

if(isset($_POST["administrador"]))
{
$_SESSION["admin"] = $_POST["administrador"];
$modo="administrador";
if(isset($_SESSION["alb"]))
{
unset($_SESSION["alb"]);
}
}

if(isset($_POST["album"]))
{
$_SESSION["alb"] = $_POST["album"];
$modo="album";
if(isset($_SESSION["admin"]))
{
unset($_SESSION["admin"]);
}
}

Pero si cambio la url la sesión desaparece, ¿cómo podría solucionarlo?

Gracias :D
  #2 (permalink)  
Antiguo 01/04/2012, 17:10
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Variables de $_SESSION

Pasa que nunca declaras session_start();
y en la prox URL tambien tienes que ponerle session_start();(ANTE CUALQUIER CODIGO).
__________________
Mono programando!
twitter.com/eguimariano
  #3 (permalink)  
Antiguo 01/04/2012, 17:14
 
Fecha de Ingreso: mayo-2010
Mensajes: 32
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Variables de $_SESSION

Cita:
Iniciado por SirDuque Ver Mensaje
Pasa que nunca declaras session_start();
y en la prox URL tambien tienes que ponerle session_start();(ANTE CUALQUIER CODIGO).
Si disculpá, me olvide de poner eso :p

<?php
session_start();
?>

Esto tengo arriba de todo y abajo todo el código, cuando cambio la url solo cambio variables no el archivo y las variables desaparecen.

index.php?vaariable1=1 (acá tengo las variables) si escribo esto:

index.php?vaariable1=1&variable2=2 las variables desaparecen.
  #4 (permalink)  
Antiguo 01/04/2012, 17:22
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Variables de $_SESSION

Al final del codigo, agrega esto:

Código PHP:
<?php

print_r
($_SESSION);
?>
__________________
Mono programando!
twitter.com/eguimariano
  #5 (permalink)  
Antiguo 01/04/2012, 17:29
 
Fecha de Ingreso: mayo-2010
Mensajes: 32
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Variables de $_SESSION

Cita:
Iniciado por SirDuque Ver Mensaje
Al final del codigo, agrega esto:

Código PHP:
<?php

print_r
($_SESSION);
?>
También lo tengo, hice un ejemplo que me funciona de 10 se ve que estoy haciendo algo mal al incrustarlo en mi web, te agradezco mucho, lo muestro por si a otro le sirve.

<?php
session_start();
?>
unset($_GET["administrador"]); //me crea get no se por que, por eso el unset
unset($_GET["album"]); //me crea get no se por que, por eso el unset

if(isset($_POST["administrador"]))
{
$_SESSION["admin"] = $_POST["administrador"];
$modo="administrador";
if(isset($_SESSION["alb"]))
{
unset($_SESSION["alb"]);
}
}

if(isset($_POST["album"]))
{
$_SESSION["alb"] = $_POST["album"];
$modo="album";
if(isset($_SESSION["admin"]))
{
unset($_SESSION["admin"]);
}
}

echo "get: ";
print_r($_GET);
echo "<br>";
echo "<br>";

echo "post: ";
print_r($_POST);
echo "<br>";
echo "<br>";

echo "session: ";
print_r($_SESSION);
echo "<br>";
echo "<hr>";
echo "modo: ".$modo;

$url_hosting="http://localhost/250/";
$url_paginacion_galeria=$url_hosting."index.php?". $_SERVER['QUERY_STRING'];

?> <?php echo $url_paginacion_galeria; ?>
<form method="post" action="<?php echo $url_paginacion_galeria; ?>">
<!--Esto es para paginar, tranquilamente puede ir sin action y el ejemplo funcionaría igual-->
<input type="hidden" name="administrador">
<input type="submit" value="Modo Administrador">
</form>

<form method="post">
<input type="hidden" name="album">
<input type="submit" value="Modo Album">
</form>
<!--Esto es para agregar variables-->
<a href="<?php echo $url_paginacion_galeria; ?>asd=asd&">a</a>
<a href="<?php echo $url_paginacion_galeria; ?>tyu=tyu&">b</a>
<a href="<?php echo $url_paginacion_galeria; ?>zxc=zxc&">c</a>

FIN

Anda todo perfecto, estoy haciendo algo mal cuando lo agrego en otro archivo.

Gracias SirDuque por tu ayuda

Etiquetas: session, 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 23:12.