Foros del Web » Programando para Internet » PHP »

Navegar y seguir logueado

Estas en el tema de Navegar y seguir logueado en el foro de PHP en Foros del Web. Hola tengo una pagina y lo que quiero saber es como hago para que mis usuarios sigan conectados mientras cambien de seccion y vayan navegando. ...
  #1 (permalink)  
Antiguo 16/12/2009, 22:11
Avatar de mau_87lp  
Fecha de Ingreso: diciembre-2009
Ubicación: La Plata,Buenos Aires.
Mensajes: 72
Antigüedad: 14 años, 4 meses
Puntos: 3
Navegar y seguir logueado

Hola tengo una pagina y lo que quiero saber es como hago para que mis usuarios sigan conectados mientras cambien de seccion y vayan navegando. nose si me hago entender. aca esta el codigo de mi pagina.
login.php
Código:
<?php
session_start();
if(isset($SESSION)){
header("location:user.php"); /* Si ha iniciado la sesion, vamos a user.php */
} else { 
?>
<html>
<head>
<title></title>
<link rel="stylesheet" href="prueba.css" type="text/css" media="all">
</head>
<body>
<div id="cabecera"><p class="clase1" align="center"><h1>www.MauroBravo.com.ar</h1></p></div>
	<div id="menu">
<ul>
  <li class="nivel1"><a href="#">Inicio</a>
	<ul>
		<li><a href="#">Opción 1.1</a></li>
		<li><a href="#">Opción 1.2</a></li>
	</ul>
  </li>
  <li class="nivel1"><a href="#" class="nivel1">Soporte Tecnico</a>
	<ul>
		<li><a href="#">Opción 2.1</a></li>
		<li><a href="http://www.google.es">Opción 2.2</a></li>
		<li><a href="#">Opción 2.3</a></li>
		<li><a href="#">Opción 2.4</a></li>
		<li><a href="#">Opción 2.5</a></li>
	</ul>
</li>
  <li class="nivel1"><a href="#" class="nivel1">Tutoriales</a>
	<ul>
		<li><a href="#">Opción 3.1</a></li>
		<li><a href="#">Opción 3.2</a></li>
		<li><a href="#">Opción 3.3</a></li>
	</ul>
</li>
  <li class="nivel1"><a href="#" class="nivel1">Programas</a>
	<ul>
		<li><a href="#">Opción 4.1</a></li>
		<li><a href="#">Opción 4.2</a></li>
		<li><a href="#">Opción 4.3</a></li>
		<li><a href="#">Opción 4.4</a></li>
</ul>
</li>
  <li class="nivel1"><a href="#" class="nivel1">Contactame</a>
	<ul>
		<li><a href="#">Opción 5.1</a></li>
		<li><a href="#">Opción 5.2</a></li>
		<li><a href="#">Opción 5.3</a></li>
	</ul>
</li>
</ul>
</div>
<div id="container">
<div id="columna_izq">
<div id="menu3ver">
<h1>Bienvenido</h1>
  <h2>Identificaci&oacute;n </h2>
<form action="comprueba.php" method="POST" class="miform">
Login: <input type="text" name="login"><br>
Password: <input type="password" name="pass"><br><br>
<input type="submit" value="Entrar" class="boton">
</form>
<p>Si te quieres registrar apreta <a href="form.html">aqui</a>.</p>
</div>
<div id="menuver"><p align="center">Menu</p>
			<ul aling="left" class="ulmenhor">
			<li><a href="#"><p>- Inico  -</p></a></li>
			<li><a href="#"><p>- Lista2 -</p></a></li>
			<li><a href="#"><p>- Lista3 -</p></a></li>
			</ul>
		</div>
<div id="menu2ver"><p align="center">Menu</p>
			<ul aling="left" class="ulmenhor">
			<li><a href="#"><p>- Inico  -</p></a></li>
			<li><a href="#"><p>- Lista2 -</p></a></li>
			<li><a href="#"><p>- Lista3 -</p></a></li>
			</ul>
</div>
<div id="menu3ver"><p><h2>Publicidad</h2></p>
</div>
</div>
<div id="columna_der"></div>
</div>
</body>
</html>
<?php
} 
?>
user.php
Código:
<?php
session_start();
if(!isset($_SESSION["login"])){
header("location:login.php");
} else {
?>
<html>
<head>
<title></title>
<link rel="stylesheet" href="prueba.css" type="text/css" media="all">
</head>
<body>
<div id="cabecera"><p class="clase1" align="center"><h1>www.MauroBravo.com.ar</h1></p></div>
	<div id="menu">
<ul>
  <li class="nivel1"><a href="#">Inicio</a>
	<ul>
		<li><a href="#">Opción 1.1</a></li>
		<li><a href="#">Opción 1.2</a></li>
	</ul>
  </li>
  <li class="nivel1"><a href="#" class="nivel1">Soporte Tecnico</a>
<ul>
		<li><a href="#">Opción 2.1</a></li>
		<li><a href="http://www.google.es">Opción 2.2</a></li>
		<li><a href="#">Opción 2.3</a></li>
		<li><a href="#">Opción 2.4</a></li>
		<li><a href="#">Opción 2.5</a></li>
	</ul>
</li>
  <li class="nivel1"><a href="#" class="nivel1">Tutoriales</a>
	<ul>
		<li><a href="#">Opción 3.1</a></li>
		<li><a href="#">Opción 3.2</a></li>
		<li><a href="#">Opción 3.3</a></li>
	</ul>
</li>
  <li class="nivel1"><a href="#" class="nivel1">Programas</a>
	<ul>
		<li><a href="#">Opción 4.1</a></li>
		<li><a href="#">Opción 4.2</a></li>
		<li><a href="#">Opción 4.3</a></li>
		<li><a href="#">Opción 4.4</a></li>
	</ul>
</li>
  <li class="nivel1"><a href="#" class="nivel1">Contactame</a>
	<ul>
		<li><a href="#">Opción 5.1</a></li>
		<li><a href="#">Opción 5.2</a></li>
		<li><a href="#">Opción 5.3</a></li>
	</ul>
</li>
</ul>
</div>
<div id="container">
<div id="columna_izq">
<div id="menu3ver">
<?php
echo "<html><body>";
echo "<h1>Bienvenido</h1>";
echo "Bienvenido al Area de usurios: <strong>";
echo $_SESSION["nombre"]." ".$_SESSION["apaterno"]." ".$_SESSION["amaterno"]." ";
echo "</strong><br>Has entrado con el nick: <strong> ";
echo $_SESSION["login"];
echo "</strong><br>Para cerrar la sesión, pulsa: <a href='logout.php'>Aqui</a>";
echo "</body></html>".isset($_SESSION);
?>
</div>
<div id="menuver"><p align="center">Menu</p>
			<ul aling="left" class="ulmenhor">
			<li><a href="#"><p>- Inico  -</p></a></li>
			<li><a href="#"><p>- Lista2 -</p></a></li>
			<li><a href="#"><p>- Lista3 -</p></a></li>
			</ul>
		</div>
<div id="menu2ver"><p align="center">Menu</p>
			<ul aling="left" class="ulmenhor">
			<li><a href="#"><p>- Inico  -</p></a></li>
			<li><a href="#"><p>- Lista2 -</p></a></li>
			<li><a href="#"><p>- Lista3 -</p></a></li>
			</ul>
</div>
<div id="menu3ver"><p><h2>Publicidad</h2></p>
</div>
</div>
<div id="columna_der"></div>
</div>
</body>
</html>
<?php
}
?>
logout.php
Código:
<?php
session_start();
if(!isset($_SESSION["login"])){
header("location:login.php");
} else {
session_unset();
session_destroy();
?>
<html>
<head>
<title></title>
<link rel="stylesheet" href="prueba.css" type="text/css" media="all">
</head>
<body>
<div id="cabecera"><p class="clase1" align="center"><h1>www.MauroBravo.com.ar</h1></p></div>
	<div id="menu">
<ul>
  <li class="nivel1"><a href="#">Inicio</a>
	<ul>
		<li><a href="#">Opción 1.1</a></li>
		<li><a href="#">Opción 1.2</a></li>
	</ul>
  </li>
  <li class="nivel1"><a href="#" class="nivel1">Soporte Tecnico</a>
	<ul>
		<li><a href="#">Opción 2.1</a></li>
		<li><a href="http://www.google.es">Opción 2.2</a></li>
		<li><a href="#">Opción 2.3</a></li>
		<li><a href="#">Opción 2.4</a></li>
		<li><a href="#">Opción 2.5</a></li>
	</ul>
</li>
  <li class="nivel1"><a href="#" class="nivel1">Tutoriales</a>
<ul>
		<li><a href="#">Opción 3.1</a></li>
		<li><a href="#">Opción 3.2</a></li>
		<li><a href="#">Opción 3.3</a></li>
	</ul>
</li>
  <li class="nivel1"><a href="#" class="nivel1">Programas</a>
	<ul>
		<li><a href="#">Opción 4.1</a></li>
		<li><a href="#">Opción 4.2</a></li>
		<li><a href="#">Opción 4.3</a></li>
		<li><a href="#">Opción 4.4</a></li>
	</ul>
</li>
  <li class="nivel1"><a href="#" class="nivel1">Contactame</a>
	<ul>
		<li><a href="#">Opción 5.1</a></li>
		<li><a href="#">Opción 5.2</a></li>
		<li><a href="#">Opción 5.3</a></li>
	</ul>
</li>
</ul>
</div>
<div id="container">
<div id="columna_izq">
<div id="menu3ver">
<?php
echo "<h1>Bienvenido</h1>";
echo "Las variables de sesión han sido eliminadas, y la sesión se ha dado por finalizada correctamente da click <a href=\"login.php\">aqui para loguearte</a>";
?>
</div>
<div id="menuver"><p align="center">Menu</p>
			<ul aling="left" class="ulmenhor">
			<li><a href="#"><p>- Inico  -</p></a></li>
			<li><a href="#"><p>- Lista2 -</p></a></li>
			<li><a href="#"><p>- Lista3 -</p></a></li>
			</ul>
		</div>
<div id="menu2ver"><p align="center">Menu</p>
			<ul aling="left" class="ulmenhor">
			<li><a href="#"><p>- Inico  -</p></a></li>
			<li><a href="#"><p>- Lista2 -</p></a></li>
			<li><a href="#"><p>- Lista3 -</p></a></li>
			</ul>
</div>
<div id="menu3ver"><p><h2>Publicidad</h2></p>
</div>
</div>
<div id="columna_der"></div>
</div>
</body>
</html>
<?php
}
?>
comprueba.php
Código:
<?php 
session_start();
// modificacion de codigo Xombra (www.xombra.com) 21/03/2009 para sectorweb.net
    include("config.php");
    $login = htmlspecialchars(trim($_POST['login']));
    $pass = sha1(md5(trim($_POST['pass']))); // encriptamos en MD5 para despues comprar (Modificado)
    // $query="SELECT * FROM usuarios WHERE login='$login'"; Antes
	$link=mysql_connect($server,$dbuser,$dbpass);
    $query = sprintf("SELECT usuarios.login,
	                         usuarios.nombre,
	 					     usuarios.apaterno, 
							 usuarios.amaterno,
							 usuarios.email
	                   FROM usuarios WHERE usuarios.login='%s' && usuarios.password = '%s'",  // Ahora
               mysql_real_escape_string($login),mysql_real_escape_string($pass)); 	  
      $result=mysql_db_query($database,$query,$link);
      // if(mysql_num_rows($result)==0){ // antes
      if(mysql_num_rows($result)){ // nos devuelve 1 si encontro el usuario y el password
	  
		$array=mysql_fetch_array($result);
     	//  if($array["password"]==crypt($pass,"semilla") ){ // Antes
     	 /* Comprobamos que el password encriptado en la BD coincide con el password que nos han dado al encriptarlo. Recuerda usar semilla para encriptar los dos passwords. */
         $_SESSION["login"]=$array["login"];
         $_SESSION["nombre"]=$array["nombre"];
         $_SESSION["apaterno"]=$array["apaterno"];
         $_SESSION["amaterno"]=$array["amaterno"];
		 $_SESSION["email"]=$array["email"]; // Agrgado Nuevo
         header("Location:user.php");
       }  else {
		 echo "Login o Password Incorrectos. Click <a href=\"login.php\">aquí</a> para volver a intentarlo.";  // Ahora
      } 
?>
config.php:
Código PHP:
<?php
$server
="localhost";
$database="usuarios";
$dbpass="***************";
$dbuser="root"
?>
Por ejemplo si tengo varias paginas como user.php, que codigo le tengo que poner para que siga conectado con su mismo usuario y que por ejemplo copie la direccion (www.algo.com/seccion) y luego la ponga y pueda entra, yo quiero que si ponen esa direccion y no esta logueado los frene o les pida que ponga usuario y contraseña.


Desde ya muchas gracias
  #2 (permalink)  
Antiguo 16/12/2009, 22:18
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: Navegar y seguir logueado

Es con variables de sesión, pero veo que ya las estás usando... si sacaste el código de algún sitio y no lo has escrito tú, investiga qué son las variables de sesión y cómo las estás usando. Si el código lo haz escrito íntegramente tú, no entiendo cuál es tu duda. ¡Suerte!
  #3 (permalink)  
Antiguo 16/12/2009, 23:20
Avatar de mau_87lp  
Fecha de Ingreso: diciembre-2009
Ubicación: La Plata,Buenos Aires.
Mensajes: 72
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Navegar y seguir logueado

Perdon ya encotre el error, era un error en el codigo. El codigo php lo encontre en otra pagina y le agregue html,en uno de los comentarios en la parte php aparece la pagina. En otra seccion de la pagina habia puesto el mismo codigo que la pagina user.php pero antes de "session_start(); " habia puesto mas codigo y por eso me tiraba error al querer ir de user.php a la otra pagina que tenia el error. Disculpas dggluz por haberte echo perder tiempo en leer el post por esta tonteria, espero no me vuelva a pasar,muchas gracias y un saludo
  #4 (permalink)  
Antiguo 16/12/2009, 23:24
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Navegar y seguir logueado

Cita:
Iniciado por mau_87lp Ver Mensaje
Perdon ya encotre el error, era un error en el codigo. El codigo php lo encontre en otra pagina y le agregue html,en uno de los comentarios en la parte php aparece la pagina. En otra seccion de la pagina habia puesto el mismo codigo que la pagina user.php pero antes de "session_start(); " habia puesto mas codigo y por eso me tiraba error al querer ir de user.php a la otra pagina que tenia el error. Disculpas dggluz por haberte echo perder tiempo en leer el post por esta tonteria, espero no me vuelva a pasar,muchas gracias y un saludo
Aún así no puedo evitar felicitarte, ya que es importante que hayas notado todo esto....

como sabes, es un "error" común y si ya lo entiendes y resuelves, puedes ayudar a los demás mas adelante...

suerte!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 16/12/2009, 23:41
Avatar de mau_87lp  
Fecha de Ingreso: diciembre-2009
Ubicación: La Plata,Buenos Aires.
Mensajes: 72
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Navegar y seguir logueado

Cita:
Iniciado por pateketrueke Ver Mensaje
Aún así no puedo evitar felicitarte, ya que es importante que hayas notado todo esto....

como sabes, es un "error" común y si ya lo entiendes y resuelves, puedes ayudar a los demás mas adelante...

suerte!!
Gracias y pienso que el fin es aprender para luego poder ayudar entre otras cosas, un saludo
  #6 (permalink)  
Antiguo 16/12/2009, 23:51
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: Navegar y seguir logueado

Excelente actitud ¡Suerte!
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 01:40.