Foros del Web » Programando para Internet » PHP »

Ayuda sesiones

Estas en el tema de Ayuda sesiones en el foro de PHP en Foros del Web. A ver como explico esto: Tengo una pagina en la que se tienen que mostrar ciertos banners. El path donde se encuentra cada banner y ...
  #1 (permalink)  
Antiguo 29/07/2004, 03:09
 
Fecha de Ingreso: diciembre-2003
Mensajes: 213
Antigüedad: 14 años
Puntos: 0
Ayuda sesiones

A ver como explico esto:
Tengo una pagina en la que se tienen que mostrar ciertos banners.
El path donde se encuentra cada banner y el url al que hay que viajar cuando se pinche encima de el lo obtengo de una base de datos.
Se muestra un banner u otro aleatoreamente y se muestran en la web de este modo:

<a href=Ir_a_url.php><img src=Mostrar_banner.php></a>

De modo que el script Mostrar_banner.php me elige un banner aleatoreamente de la base de datos, obtiene el path donde se encuentra y este mismo script lo "imprime" en el navegador.

Ir_A de be encargarse de realizar una redireccion a la Url asociada en la base de datos a ese banner.

La custion es que en el script Ir_a_url.php no se que banner se a seleccionado en el otro script, por lo que intento meterlo en una variable de sesion del siguiente modo:

En el mostrar_banner hago
...
$ban=seleccionar_banner();
session_register("banner");
$_SESSION["banner"]=$ban;
...

y en el Ir_a_Url hago:
...
$Url=obtener_url($_SESSION["banner"]);
...
pero $_SESSION["banner"] esta vacia.

no se lo que hacer, estoy desespearo, una ayudita por favor
  #2 (permalink)  
Antiguo 29/07/2004, 04:42
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

¿Has puesto session_start() al comienzo de los scripts? ¿Estas propagando el ID de sesion por URL o por cookie (mira en tu configuracion)?

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 29/07/2004, 05:15
 
Fecha de Ingreso: julio-2004
Ubicación: Puerto Vallarta, Jalisco, Mexico
Mensajes: 186
Antigüedad: 13 años, 4 meses
Puntos: 0
creo, que no las esta leyendo el Ir_a_Url por que se ejecuta primero, o sea ANTES de que se la variable de sesion se llene, aunque no estoy completamente seguro, te lo explico mas o menos:

<a href=Ir_a_url.php>
^^^^^ esto se ejecuta primero aun no hay variable de session.

<img src=Mostrar_banner.php></a>
^^^^^^^esto se ejecuta despues, crea la variable de session.

por lo tanto el ir_a_url no esta viendo tu session.

aunque no tengo respuesta directa, si tengo un consejo, por que no pones todo el link en un solo archivo??
por ejemplo mostrarbanner.php y donde quieras que aparesca una banner solo das un include, dentro del codigo podrias poner todo lo necesario para que el redireccionamiento funcione como quieres e imprima el banner, etc, etc.

Suerte
__________________
Shanti Castillo G.

Última edición por Shantic; 29/07/2004 a las 17:02
  #4 (permalink)  
Antiguo 30/07/2004, 02:22
 
Fecha de Ingreso: diciembre-2003
Mensajes: 213
Antigüedad: 14 años
Puntos: 0
No,no, vamos a ver. Lo que primero se ejecuta es el "mostrar" porque se llama "automaticamente" en el Src de la etiqueta img. Este mostrar (que quede claro) lo muestra "directamente", es decir, abro el fichero .gif, lo leo y lo muestro con un print. Aunque como consigo eso es lo de menos, si alguien quiere saber como se hace que me pregunte.El caso es que ,ejecutandose primero el mostrar,que es donde se inicia esa variable de sesion(seguro) luego no consigo obtener su valor en el ir_a.

Socorrooooooo.
  #5 (permalink)  
Antiguo 30/07/2004, 03:20
 
Fecha de Ingreso: julio-2004
Ubicación: Puerto Vallarta, Jalisco, Mexico
Mensajes: 186
Antigüedad: 13 años, 4 meses
Puntos: 0
ok, ya entendi, pero de nuevo, por que no poner todo en un solo archivo ? donde te imprima por ejemplo

echo "<a hre='ir_a.php?ID=$ELIDQUEREGRESOELBANNER'><img src='$elpathquedevoldio'></a>

asi en el ir_a podras leer el ID con un $_REQUEST y te olvidas de las sesiones en esta ocasion, asi es como trabaja mi sistema de banners, y me ha funcionado perfecto.

otra cosa seria lo que dice Josemi, has puesto session_start() en el ir_a.php ?

suerte
__________________
Shanti Castillo G.
  #6 (permalink)  
Antiguo 30/07/2004, 07:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Esto no puedes hacerlo .. o usas un método u otro pero no ambos para dar un varlor y trabajar con las variabes de sesión:

Código PHP:
//session_register("banner"); quita esto ..
$_SESSION["banner"]=$ban
Y eso te obligará a usar session_start() -antes- de pretender acceder a $_SESSION (sea para leer una variable o darle valor.)

Un saludo,
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:33.