Menú Principal

conectados

Iniciado por neopuerta360, 12 Septiembre 2010, 18:57 PM

0 Miembros y 1 Visitante están viendo este tema.

neopuerta360

Hola a todos nesesito su ayuda como hago para saber si el usuario esta conectado.
Nesesito un codigo que me diga si el usuario esta conectado y que el codigo no nesesite base de datos MYSQL entienden. :D

Franki

Lo que tienes que hacer es en el script de login abrir la sesión y guardar una variable de sesión con el id del usuario mismo, o una variable authenticated con el valor a true.

Después en el script de logout las borras de la sesión y cierras la sesión.

Así puedes saber si el usuario está conectado con mirar si está establecida esa variable y si vale true.

neopuerta360

no entiendo sera que me lo puedes explicar mejor

Shell Root

Código (php) [Seleccionar]
# Cuando te loggeas correctamente
$sSession{ID} = true;

# Cuando cierras session correctamente
$sSession{ID} = false;


Eso es lo que dice @Franki,
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Franki

Buenas.

Exacto, el mecanismo de sesión sirve para mantener el estado entre distintas peticiones.

Si no entiendes el mecanismo de las sesiones en PHP puedes leer esta entrada que escribí hace tiempo en mi blog:

http://parasitovirtual.wordpress.com/2010/06/16/curso-php-capitulo-11-sesiones-y-cookies/

Si esto se considera SPAM me avisais y lo borro. O que el moderador borre la URL.

La idea está en que tu tendrás un script para loguear usuarios. En ese script, abres la sesión con:

session_start();

Compruebas que el usuario que se ha logueado haya introducido bien la contraseña. Aquí ya tú tendrás tu sistema, o una tabla usuarios en la base de datos, o un fichero donde guardes los usuarios y contraseñas. Digo esto porque como has preguntado un ejemplo sin base de datos...pues...

Una vez comprobado, si todo ha ido bien, guardas una variable en la sesión:

$_SESSION['authenticated']=true;
$_SESSION['id_user']=$id;

Luego en cada script que tengas, abres la sesión y compruebas si está establecida la variable y vale true:

if(isset($_SESSION['authenticated']) && $_SESSION['authenticated']==true)
{
  echo 'Usuario conectado';
} else echo 'Usuario no conectado';

neopuerta360

ok ya medio entendi gracias!

neopuerta360

como hago que se ponga automaticamente <b> cual es el godigo.

neopuerta360

el codigo no es asi como este:

<?$contenidoarchivo[1] = str_replace("[b]","<b>",$contenidoarchivo[1]) ;
$contenidoarchivo[1] = str_replace("[/b]","</b>",$contenidoarchivo[1]) ;
?>


esta bueno?

Shell Root

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.