Foros del Web » Programando para Internet » PHP »

Dos sesiones al mismo tiempo para diferentes cosas

Estas en el tema de Dos sesiones al mismo tiempo para diferentes cosas en el foro de PHP en Foros del Web. Estoy por entender que no será posible usar sesiones para todo lo que quiero hacer, pero necesito que me ayuden a que se me ocurra ...
  #1 (permalink)  
Antiguo 12/08/2011, 23:16
Avatar de EthanBrody  
Fecha de Ingreso: abril-2011
Ubicación: Tierra Blanca, Veracruz-Llave, Mexico, Mexico
Mensajes: 21
Antigüedad: 13 años
Puntos: 1
Busqueda Dos sesiones al mismo tiempo para diferentes cosas

Estoy por entender que no será posible usar sesiones para todo lo que quiero hacer, pero necesito que me ayuden a que se me ocurra la solución.

Tengo un sistema que ocupa una sesión para que un usuario lleve a cabo una tarea que es publicar una noticia, entonces después de publicar la noticia, destruyo la sesión para borrar todas las variables que se usaron (como el titulo de la noticia, el texto, etc). Y esto ya lo termine, no lo quiero modificar.

Ahora el problema viene que tengo que manejar distintos usuarios, por lo que necesito algo exactamente como las sesiones.

Osea que necesito una sesión que sea para manejar los usuarios, y ya teniendo abierta esa sesión, abrir otras que serias las sesiones ocupadas en el proceso de la publicación de la noticia...

Entonces, casi entendiendo que esto no se puede, de que otra manera puedo manejar un inicio de sesión???
  #2 (permalink)  
Antiguo 12/08/2011, 23:21
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

Primero: No es necesario usar letras grandes, da a entender que estás gritando y eso no nos gusta a nadie.

Segundo, qué es lo difícil? Desconocemos tu sistema, así que es prácticamente imposible darte una solución alternativa.. Lo que me intriga es.. Cómo que no puedes abrir más sesiones?

No es necesario abrirlas, simplemente asigna más valores a la actual, no debe haber ninguna complicación en ello, puedes poner tantos valores como desees
Código PHP:
Ver original
  1. $_SESSION['ejemplo'] = 'Ejemplo!';
  2. $_SESSION['otro'] = 'Otro ejemplo';
  3. $_SESSION['id'] = 224902304932;
  4. $_SESSION['otroejemplo'] = 'Mas ejemplos!';
  5. $_SESSION['aaaa'] = 'AAAA';
  6. $_SESSION['fdw'] = 'Foros del Web';
  7.  
  8. echo $_SESSION['ejemplo'].'<br />';
  9. echo $_SESSION['otro'].'<br />';
  10. echo $_SESSION['id'].'<br />';
  11. echo $_SESSION['otroejemplo'].'<br />';
  12. echo $_SESSION['aaaa'].'<br />';
  13. echo $_SESSION['fdw'];

Saludos!
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #3 (permalink)  
Antiguo 12/08/2011, 23:23
danneg
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

por que no en lugar de destruir la secion actual solo destruyes las variables de secion??

Código PHP:
Ver original
  1. unset($_SESSION["titulo"]);
  #4 (permalink)  
Antiguo 12/08/2011, 23:38
Avatar de EthanBrody  
Fecha de Ingreso: abril-2011
Ubicación: Tierra Blanca, Veracruz-Llave, Mexico, Mexico
Mensajes: 21
Antigüedad: 13 años
Puntos: 1
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

Pues a mi me pareció que el problema que yo tenía, no faltaba tanto como conocer todo el sistema sino lo unico que expliqué.

danneg ha entendido el porque no debo destruir la sesión, y eso sería porque el inicio de sesión se tendría que hacer de nuevo, y lo que yo quiero es que un usuario pueda publicar varias noticias cuando inicie sesión, y no tenga que iniciar sesión de nuevo cada que termine de publicar una noticia.

La solución de danneg es buena, pero quería saber si habia otras alternativas, ya que son varias las variables que tengo que estar destruyendo (con el unset). Aunque espero que al hacer eso, el sistema no se vea mal ejecutado, mal hecho!.

Gracias por las respuestas :D.
  #5 (permalink)  
Antiguo 12/08/2011, 23:43
Avatar de EthanBrody  
Fecha de Ingreso: abril-2011
Ubicación: Tierra Blanca, Veracruz-Llave, Mexico, Mexico
Mensajes: 21
Antigüedad: 13 años
Puntos: 1
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

Para dejar mas clara la explicación de porque no puedo usar la respuesta de Sourcegeek,

Si yo revuelvo las variables de la noticia con las variables del usuario no tendria caso, porque como ya explique, yo, al terminar de publicar una noticia destruyo la sesión para eliminar los datos de la noticia publicada y poder publicar mas noticias. Si tuviera las variables del usuario ahi, al terminar de publicar la noticia, botaria al usuario de la sesión.
  #6 (permalink)  
Antiguo 12/08/2011, 23:50
Avatar de EthanBrody  
Fecha de Ingreso: abril-2011
Ubicación: Tierra Blanca, Veracruz-Llave, Mexico, Mexico
Mensajes: 21
Antigüedad: 13 años
Puntos: 1
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

Ya se lo que haré. Capturaré en variables simples (no de sesion) el nombre del usuario y la contraseña (que son las variables del usuario) que ya están en variables de sesión. Todo esto a la hora de publicar la noticia. Inmediatamente destruyo la sesión y la vuelvo a crear. Y relleno las variables del usuario con las que capturé.

Osea que cada que se publique una noticia, se cerrará una sesión pero se abrirá automaticamente otra, con el mismo usuario. Asi borró las variables de la noticia, y nos quedamos con el mismo usuario.

¿Que opinan?.
  #7 (permalink)  
Antiguo 13/08/2011, 00:50
danneg
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

umm.. cuantas seciones destruyes y cuantas conservas??...

puedes hacer esto


Código PHP:
Ver original
  1. $usuario = $_SESSION["usuario"];
  2.  
  3.  
  4. $_SESSION["usuario"] = $usuario;

destruir todas las seciones, y despues solo crear una con el usuario existente
  #8 (permalink)  
Antiguo 13/08/2011, 02:54
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 12 años, 11 meses
Puntos: 261
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

Donde se guardan las noticias? archivo, base de datos...

La verdad es que no entiendo muy bien por que utilizas sesiones para tratar variables de noticias.

Si pones el code podrás obtener información más acertada, ya que muchas veces planteamos la solución de una forma y resulta que se puede hacer de forma más sencilla.

Saludos,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight
  #9 (permalink)  
Antiguo 13/08/2011, 12:31
Avatar de EthanBrody  
Fecha de Ingreso: abril-2011
Ubicación: Tierra Blanca, Veracruz-Llave, Mexico, Mexico
Mensajes: 21
Antigüedad: 13 años
Puntos: 1
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

Cita:
Iniciado por danneg Ver Mensaje
umm.. cuantas seciones destruyes y cuantas conservas??...

puedes hacer esto


Código PHP:
Ver original
  1. $usuario = $_SESSION["usuario"];
  2.  
  3.  
  4. $_SESSION["usuario"] = $usuario;

destruir todas las seciones, y despues solo crear una con el usuario existente
Exactamente asi lo deje:! Y pasa como si no hubiera cerrado la sesión del usuario. Gracias.!
  #10 (permalink)  
Antiguo 13/08/2011, 12:34
Avatar de EthanBrody  
Fecha de Ingreso: abril-2011
Ubicación: Tierra Blanca, Veracruz-Llave, Mexico, Mexico
Mensajes: 21
Antigüedad: 13 años
Puntos: 1
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

Cita:
Iniciado por Uncontroled_Duck Ver Mensaje
Donde se guardan las noticias? archivo, base de datos...

La verdad es que no entiendo muy bien por que utilizas sesiones para tratar variables de noticias.

Si pones el code podrás obtener información más acertada, ya que muchas veces planteamos la solución de una forma y resulta que se puede hacer de forma más sencilla.

Saludos,

Las noticias las guardo en una base de datos. Pero el sistema consta de 3 paginas, las primeras dos para armar la noticia, y la tercera para publicarla, que es donde la envio a la base de datos.

Entonces usé una sesión.. para ir pasando las variables que llevaban la información desde la pagina 1 hasta la pagina 3.. (las variables llevaban el titulo de la noticia y el texto con un link hacia otra pagina, en la segunda pagina tambien ocupaba variables para guardar una dirección de alguna foto)... por eso use sesiones, porque no queria gaurdar directamiente todo en la base, hasta que el usuario viera una vista previa (pagina 3) y de ahí se publicara.!


Gracias por la ayuda!: Ya quedó?


Una pregunta tonta ahora que soy nuevo en el foro... ¿Debo cerrar este mensaje?
  #11 (permalink)  
Antiguo 13/08/2011, 16:02
danneg
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

El tema seguira abierto para futuras referencias, despues de 6 meses de inactividad se cerrara pero continuara siendo visible para toda la web

un saludo!! y un placer haberte ayudado!
  #12 (permalink)  
Antiguo 13/08/2011, 22:12
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

Preguntome yo porque te complicas tanto?... digo, es sencillo mantener variables de sesion usando arrays para cada cosa:

Código PHP:
Ver original
  1. $_SESSION['usuario'] = array('id', 'login', 'email', 'etc.');
  2. $_SESSION['noticia'] = array(
  3.     'titulo' => 'Algo aqui',
  4.     'imagen' => '', // No la ha subido aun
  5.     'texto' => '' // No ha capturado texto
  6. );

Cuando termines el proceso solo eliminas (o reinicias) $_SESSION['noticia'] y queda listo para continuar en el sitio sin tener que modificar o (eliminar y volver a crear) la parte del usuario.
__________________
- León, Guanajuato
- GV-Foto
  #13 (permalink)  
Antiguo 13/08/2011, 22:23
danneg
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Dos sesiones al mismo tiempo para diferentes cosas

@triby, no había pensado en eso, es una buena sugerencia, no cabe duda que cada día aprendo algo nuevo :D !!

Y sobre mi comentario anterior, tuve un error de expresión, los temas no se cierran pasados 6 meses, si no que es recomendable ya no comentarlos para evitar reflote.

Un saludo!

Etiquetas: multiples, sesiones
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:54.