Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-10-2006
juan_urquijo juan_urquijo is offline
Miembro
 
Registrado: ago 2006
Posts: 16
Poder: 0
juan_urquijo Va por buen camino
PHP Variables globales

Hola:

Soy relativamente novato en PHP. Hace algun tiempo realicé un sitio web con bases de datos usando PHP y MySQL. Lo unico que yo hacia era utilizar el ¨session_start¨, y con el ¨session_register¨ registraba las variables globales para poderlas utilizar como sesiones en todo el recorrido por las páginas del sistema. Ahora, lo unico que he podido hacer es pasar variables a la siguiente página utilizando el $_GET y $_POST, pero solo pasa a la pagina siguiente a la que está el formulario.

Lo que yo quiero hacer es que al registrar un usuario con su login y password, yo busco en una base de datos y adquiero un id_usuario (entero), un nombre de usuario (cadena de caracteres) y quiero mantener TODOS estos datos en unas 8 o 9 o más páginas (yo creo que no deberia importar el número de paginas mientras que el trabajo esté bien hecho).

Como debo manejar estas variables para poderlas pasar entre páginas?

Cualquier ayuda es bienvenida.

MUCHAS GRACIAS,

Juan Carlos.
Responder Con Cita
  #2  
Antiguo 04-10-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Bueno. Aunque PHP me encanta, lo cierto es que no soy un monstruo como otros en estos Foros... y no quiero Seoñalar...

Empero, te pondré el ejemplo de lo que hacemos en cierta aplicación Web que tenemos ahora mismo funcionando.

Nosotros contamos con una clase PHP de nombre Login y que, por cierto, está inspirada (sí, sí, inspirada, copiada vilmente) de una clase similar que se encuentra en el proyecto Menéame.

Voy a tratar de ir al grano, dicho lo dicho. La clase Login cuenta con métodos para averiguar si un usuario está autentificado, por ejemplo, y de la clase Login derivamos otra clase de nombre Usuario que permite, entre otras cosas, saber si un usuario es moderador, administrador, etc.

Lo "más importante", esto es, en lo que se basa la clase Login para determinar si un usuario está o no autentificado, los datos para averiguar esto se guardan en una Cookie, debidamente cifrados.

La clase Login se instancia en un objeto al procesarse cada página Web de la aplicación y nada más instanciarse (en su método constructor) se averigua si existe la oportuna cookie y se comprueban los datos de esta en caso de existir, claro está.

La clase Login cuenta con métodos como "Autentificar" y "Logout", que, obviamente, sirven para la autentificación de usuarios y para "sacarlos del sistema" cuando así lo deseen o caduque la cookie en que guardamos los datos de dicho usuario (únicamente en relación al proceso de autentificación o login).

Nunca he trabajado con sesiones en PHP (sé de su existencia y alguna que otra prueba he hecho), ni sé si lo que pides es posible hacerse o no, pero, supongo que utilizando cookies, por ejemplo, sí que es posible hacerlo, y para muestra el botón que he comentado.

Las cookies son una forma de guardar información "persistente" del lado del cliente. Comenta lo que te parezca de todo este rollo que he soltado si ves que tal. Por otro lado algún compañero tal vez quiera corregirme (bienvenida corrección) o aportar alguna otra información que pueda acaso interesarnos a todos.

Edito: Por cierto que la aplicación Web de que vengo hablando es software libre y su código fuente está disponible para su descarga. Lo digo por si quieres echar un vistazo. Tal vez te de alguna idea, aunque sea de lo que no tienes que hacer. Estoy hablando de Loturak. Ah, y el código de Menáme también está disponible, que lo sepas, si es que no lo sabías ya, vamos.
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 04-10-2006 a las 15:44:01.
Responder Con Cita
  #3  
Antiguo 04-10-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Juan

Aún cuentas con las variables de sesión, es sólo que se usan un poco distinto. Anteriormente, usabas session_register para, como dices, crear una variable que se mantendría entre páginas. El problema es que al parecer esto presuponía algunos problemas de seguridad. Por ello, lo que ahora se hace es usar el arreglo $_SESSION, al igual que haces con $_POST y $_GET.

Básicamente, lo que antes hacías con:

Código PHP:
session_start();

$usuario 'tribilin';
session_register('usuario'); 
ahora lo haces con

Código PHP:
session_start();

$_SESSION['usuario'] = 'tribilin';
$_SESSION 
Ya no podrás acceder a la variable $usuario, tendrás que hacerlo con $_SESSION['usuario']

// Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Funciones/variables Globales Jad C++ Builder 3 15-05-2006 19:22:41
Variables Globales Abel Garcia Firebird e Interbase 8 26-09-2005 15:20:59
!variables globales en novell Carlosguiland SQL 1 10-05-2005 16:32:17
Variables globales en PHP JulioGO PHP 3 08-04-2005 14:36:57
Variables Super Globales JANDREGUE Varios 1 18-03-2005 18:03:16


La franja horaria es GMT +2. Ahora son las 04:14:47.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi