Foros del Web » Programando para Internet » PHP »

Restringir el acceso a una pagina abierta por otro usuario

Estas en el tema de Restringir el acceso a una pagina abierta por otro usuario en el foro de PHP en Foros del Web. Hola a todos, quisiera saber si existe algun metodo para bloquera la entrada a una pagina que ya este abierta por otro usuario. Por ejm. ...
  #1 (permalink)  
Antiguo 02/01/2009, 12:36
Avatar de lrunge  
Fecha de Ingreso: agosto-2005
Ubicación: En algun lugar de Caracas
Mensajes: 165
Antigüedad: 18 años, 8 meses
Puntos: 4
Restringir el acceso a una pagina abierta por otro usuario

Hola a todos, quisiera saber si existe algun metodo para bloquera la entrada a una pagina que ya este abierta por otro usuario.

Por ejm. si entro en /index.php?f=01, mas nadie podra entrar, hasta que yo cierre la pagina, podran entrar a /index.php?f=XX, pero a la que estoy biendo NO

Me explico?

Muchas gracias a quien pueda ayudarme.

Saludos
__________________
"La sencillez de una respuesta, sera inversamente proporcional a su explicacion" Luis Runge
  #2 (permalink)  
Antiguo 02/01/2009, 12:56
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 3 meses
Puntos: 36
Respuesta: Restringir el acceso a una pagina abierta por otro usuario

Podrias crear un campo en la db, en donde diga si la pagina esta bloqueada o no. Al salir tendrias que cambiar el estado a disponible. Cuando alguien quiere verla verificas el estado, si es disponible lo cambias a ocupado. También podrias guardar la IP de la persona.
__________________
Spread Firefox | Download Day 2008
¡Únete en nuestra misión para alcanzar el Record Guinness al software más descargado en 24 horas! http://www.spreadfirefox.com/es-ES/worldrecord/
  #3 (permalink)  
Antiguo 02/01/2009, 13:03
Avatar de FabianSN  
Fecha de Ingreso: enero-2007
Ubicación: SNicolas, BsAs, Argentina
Mensajes: 96
Antigüedad: 17 años, 3 meses
Puntos: 2
Respuesta: Restringir el acceso a una pagina abierta por otro usuario

Por el lado de PHP no creo que haya algo directo que verifique esto, aunque supongo que usando sesiones se puede crear algo.

Espero no decir una tonteria pero si yo tuviera que hacerlo, digamos a lo "criollo" lo haría usando un campo que sirviera de bandera en la BD consultada.

Supongo que ese código f=01 se refiere a un producto, elemento o algo que está nomenclado en una tabla de una BD, con lo cual se podría hacer de 2 formas:
A) Agregando un campo a la tabla de donde se consulta dicho código.

B) Haciendo otra tabla con 2 campos (uno con el ID y otro con el campo que sirve para controlar)

El campo utilizado para controlar yo lo hubiese hecho como un campo date-time, con posibilidad de ser nulo en el caso A y las condiciones a evaluar antes de mostrar la página hubieran sido:

1) Campo de verificacion nulo --> nadie ha abierto este código.
2) Campo con una fecha y hora que no supera xx cantidad de minutos --> Negar la página por estar abierta por otro user.
3) Fecha y hora que supera los xx minutos estandard --> resetear este campo y presentar la página.

Con esto se cubriría que si alguien abre la página y luego cierra el navegador no quedara dicho ID negado al resto despues de un lapso de tiempo estimado.

En el caso B, o sea, si se hace otra tabla, simplemente con verificar si ese código existe o no en la tabla y que fecha y hora tiene, podría ser suficiente.

Porsupuesto que en ambos casos, si la página se abre, antes habría que hacer un INSERT/UPDATE para setear dichos campos con la fecha/hora del servidor.

Como verás mi solucion es un poco arcaica, pero a veces las cosas sencillas son más faciles de mantener y adaptar.

Saludos y espero te sirva.
__________________
Letra de Canciones
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:55.