Ver Mensaje Individual
  #4 (permalink)  
Antiguo 08/09/2007, 10:48
Avatar de pzin
pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 9 meses
Puntos: 2114
Re: iniciar seccion php

Hola tazzmk.

Se dice, en todo caso, session, o, sesión (castellano neutral ).

Para iniciar una sesión, se usa session_start(), y, las sesiones funcionan conjuntamente con cookies. Es decir, si no están activadas las cookies, no puedes usar sesiones a menos que pases el SID (la identificación de la sesión; Session ID) por la URL.

La teoría es la siguiente.

Podrías incluir en cada una de tus páginas el formulario para hacer login, y, también, incluir en todas tus páginas un archivo que si se envía ese formulario, compruebe si usuario existe y si la contraseña de éste es igual a la almacenada en la base de datos (convendría cifrar las contraseñas con md5() o sha1()).

Una vez comprobados los datos, y si éstos son correctos, declarar algunas variables, como por ejemplo:
Código PHP:
<?php
$_SESSION
['identificado'] = true;
$_SESSION['uid'] = $consulta['id_usuario'];
$_SESSION['nombre'] = $consulta['nick'];
?>
Así podrías en las páginas que te hicieran falta (incluso en ciertas partes de una página) crear contenido para los usuarios unicamente, saludar a cada usuario por su nick y hacer operaciones en la base de datos con su ID de usuario.
Código PHP:
// contenido dependiendo del tipo de usuario
if($_SESSION['identificado']) {
// aquí el contenido para los usuarios registrados e identificados
} else {
// aquí el contenido para los usuario "visitantes"
}

// añadimos a la base de datos que el usuario a visto otra página
mysql_query("
UPDATE usuarios
SET paginasvistas=paginasvistas+1
WHERE id_usuario="
.$_SESSION['uid']."
LIMIT 1
"
);

// saludos al usuario
echo "Hola ".$_SESSION['nombre']; 
Cabe destacar que las variables de sesión ($_SESSION) solo hay que declararlas una única vez, y que, éstas serán destruidas al cerrar la sesión (ya sea cerrando el navegador o con session_destroy()).

La idea básica es esa.

Para cualquier duda mas aquí estamos.