Foros del Web » Programando para Internet » PHP »

¿Por GET o con sesiones? ¿O con otro método?

Estas en el tema de ¿Por GET o con sesiones? ¿O con otro método? en el foro de PHP en Foros del Web. Hola amigos: En una serie de pantallas quiero mostrar unas cosas u otras según se esté utilizando un código u otro. Tengo la duda de ...
  #1 (permalink)  
Antiguo 24/02/2012, 02:08
 
Fecha de Ingreso: septiembre-2003
Mensajes: 337
Antigüedad: 20 años, 7 meses
Puntos: 4
¿Por GET o con sesiones? ¿O con otro método?

Hola amigos:

En una serie de pantallas quiero mostrar unas cosas u otras según se esté utilizando un código u otro. Tengo la duda de cómo hacerlo, de cómo tener en cuenta en todas esas pantallas ese dato (código).

Se me han ocurrido dos posibilidades:

1) Pasar en todas las pantallas por GET el código en cuestión y así poder utilizarlo.

Con este método tengo la duda de si alguien podría llegar y cambiar en la URL "a mano" el código que se muestra en el parámetro GET, y poner otro... Con eso supongo que directamente accedería a otros datos que no son los que deberían verse, con lo cual no sería muy seguro... ¿me equivoco?

2) Usar sesiones. Abro una sesión con el código y en cada pantalla compruebo la sesión.

La duda que tengo con esta opción es si habría problemas con otras sesiones que abro y que en un futuro tengo pensado abrir también (por ejemplo más adelante tengo pensado utilizar un sistema de login y para eso necesitaré sesiones). No sé si así podría haber "conflicto entre sesiones".

¿Qué os parece? ¿Hay quizá alguna otra posibilidad para ello?

Muchísimas gracias por adelantado.
  #2 (permalink)  
Antiguo 24/02/2012, 02:25
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: ¿Por GET o con sesiones? ¿O con otro método?

Tu código siempre debe verificar si el usuario tiene acceso a los datos que quiere ver, sea por el medio que sea, es decir no importa si es por get, post o sesiones, siempre debes verificar que el usuario efectivamente tiene permiso de ver tal o cual cosa.

No dices que hace tu código, tan sólo mencionas de manera muy general que muestran una serie de pantallas. Quizá si aclararas más detalladamente qué quieres lograr o qué información pretendes mostrar, se te pueda sugerir algo más concreto.
  #3 (permalink)  
Antiguo 24/02/2012, 02:37
 
Fecha de Ingreso: septiembre-2003
Mensajes: 337
Antigüedad: 20 años, 7 meses
Puntos: 4
Respuesta: ¿Por GET o con sesiones? ¿O con otro método?

Ah, perdón por no haberlo detallado con algún ejemplo de lo que pretendo.

Las pantallas a mostrar serán datos relacionados con el código. Todo lo que tengo en la base de datos, prácticamente todo, lleva en algún lado ese código. El código en cuestión es algo gordo.

Un ejemplo: Una imagen y un listado de datos.

Si utilizas un código, en las pantallas sale la imagen de ese código y debajo un listado de datos relacionados con el código. Si fuera otro código, la imagen sería diferente, la relacionada con ese nuevo código, así como los datos del listado, que serían también otros. Y así con muchas de las pantallas.

Espero haberlo explicado, más o menos...

Respecto a la verificación de datos, de momento no se trata de un usuario (eso irá más adelante, con lo de login que he comentado). Es solamente elegir un código de un listado inicial y en base a esa elección, las siguientes pantallas mostrarán unos datos u otros (como lo comentado en el ejemplo).

Muchas gracias!!
  #4 (permalink)  
Antiguo 24/02/2012, 02:50
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: ¿Por GET o con sesiones? ¿O con otro método?

Si al decir código te refieres por ejemplo a un id, la mejor forma de propagar dicho dato sería por get, ya que esto es parte de las urls amigables. Por un momento al decir código pensé a código de programación...

Y claro, como te había indicado antes, tu script debe verificar que la persona tiene permiso de ver los datos relacionados a ese código o id.
  #5 (permalink)  
Antiguo 24/02/2012, 03:03
 
Fecha de Ingreso: septiembre-2003
Mensajes: 337
Antigüedad: 20 años, 7 meses
Puntos: 4
Respuesta: ¿Por GET o con sesiones? ¿O con otro método?

Cita:
Iniciado por ocp001a Ver Mensaje
Si al decir código te refieres por ejemplo a un id...
Cierto ocp001a!! es un id, no sé porqué tengo la costumbre de llamarlo "código"... supongo que por "código identificativo", pero bueno, que sí, que es un "id".

Respecto a la verificación, eso ya será entonces cuando lo haga más adelante, cuando introduzca lo del login, ya que creo que de momento no me hace falta la comprobación de si el usuario puede ver o no (aún estoy en la fase en que cualquiera que acceda puede ver todo de todo pero más adelante habrá restricciones de permisos).

Por cierto, con el tema de las sesiones, ¿podría haber conflicto entre sesiones? ¿Se pueden utilizar diferentes sesiones en un mismo script? Por ejemplo, si yo ahora utilizo una sesión para pasar datos de un formulario a otro (tal y como hago), y luego con lo de los usuarios quiero usar también una sesión para verificar... ¿no habría problema?
  #6 (permalink)  
Antiguo 24/02/2012, 03:49
 
Fecha de Ingreso: febrero-2012
Ubicación: En mi propio mundo
Mensajes: 73
Antigüedad: 12 años, 2 meses
Puntos: 23
Respuesta: ¿Por GET o con sesiones? ¿O con otro método?

Hombre es que para pasar datos entre formularios es mejor usar el método Post o Get antes que sesiones.

Lo de conflictos de sesion . La sesión perdura desde que un usuario entra en la página web y se registra una sesión hasta que la abandona,expire o se destruya independientemente de a donde vaya dentro de la misma web.

Si tu ya has hecho un session_start() todas la variables de sesión que declares van a estar para ese usuario y por mucho que llames denuevo a session_start(), no se va a generar una sesión nueva, la sesión va a estar igual que antes.
  #7 (permalink)  
Antiguo 24/02/2012, 04:25
 
Fecha de Ingreso: septiembre-2003
Mensajes: 337
Antigüedad: 20 años, 7 meses
Puntos: 4
Respuesta: ¿Por GET o con sesiones? ¿O con otro método?

Cita:
Iniciado por Fierox Ver Mensaje
Hombre es que para pasar datos entre formularios es mejor usar el método Post o Get antes que sesiones.
Lo que pasa es que yo paso todos los datos de un formulario de una pantalla a otra, y luego vuelvo a la misma pantalla para mostrar los datos que ya se habían introducido en la primera... Por eso me comentaron que lo mejor para "mantener" todos los datos de un form, lo mejor era usar sesiones.

Cita:
Iniciado por Fierox Ver Mensaje
Si tu ya has hecho un session_start() todas la variables de sesión que declares van a estar para ese usuario y por mucho que llames denuevo a session_start(), no se va a generar una sesión nueva, la sesión va a estar igual que antes.
Supongo entonces que tendré que hacer un control de si hay ya sesión abierta o no... porque a ves me ha pasado que cuando intento hacer session_start habiendo ya una sesión abierta, me sale por pantalla un "warning" y eso queda muy feo ;)

¡Saludos!

Etiquetas: 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 10:04.