Ver Mensaje Individual
  #3 (permalink)  
Antiguo 16/12/2015, 16:55
xfrancis
 
Fecha de Ingreso: septiembre-2009
Mensajes: 164
Antigüedad: 14 años, 7 meses
Puntos: 3
Respuesta: Problemas de sesion

Tengo esto en el conn.php

Código PHP:
<?php 
if(!isset($_SESSION)) 

session_start(); 
}  

$db_name ="xfrancis"//DAtabase name 
$db_username ="****"//database user name
$db_password ="****"//database password
$db_path ="localhost"// your database server name most of server use localhost

$db = @mysql_connect("$db_path","$db_username","$db_password");
@
mysql_select_db("$db_name",$db);
?>
en el log.php

Código PHP:
<?
include('conn.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if(!isset($_SESSION['usuario']) ) //comprobamos que no existe la session, es decir, que no se ha logeado, y mostramos el form
{

//Creamos el form k irá a autentificar.php para comprobar los datos con la tabla users
echo '<div id="formulario"><form action="autentificar.php" method="POST">
Nick: <input type="text" name="nick" size="30"><br>
Password: <input type="password" name="password" size="30" ><br></div>
<div id=formulario_boton><br>
<input type="submit" name="submit" value="Enviar"></form> </div><br><a href="restaurarpassword.php">¿Olvidaste tu contraseña?</a><br><a href="registro.php">Registrate</a>'
;

}else{

//SI se ha logeado, mostramos el nick y la opción de deslogearse
//Este sería el menú que saldría a la gente que esta logeada, se puede modificar y añadir cosas
echo '<b>Bienvenido '.$_SESSION['usuario'].'</b><br><br>';  //ej Bienvenido Juan
 //mostramos el level del user
echo '<a href="javascript:history.back(-2);" title="Ir la página anterior">Volver a la página anterior</a><br><br>';

echo 
'<a href=logout.php>Terminar sesión</a>'//link para deslogearse, iría a logout.php

}
?>

y en el autentificar.php

Código PHP:
<?php
include('conn.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if( ($_POST['nick'] == "") or ($_POST['password'] == "") )//comprobamos que las variables enviadas por el form de login.php tienen contenido
{
Header("Location: index.php");
 
//estan vacías, volvemos al index
}else{

//comprobamos en la db si existe ese nick con esa pass
$con=("SELECT * FROM usuarios WHERE nick='$_POST[nick]' and password='$_POST[password]' ");
$usuarios mysql_query($con,$db) or die(mysql_error());
if(
$user_ok mysql_fetch_array($usuarios)) //si existe comenzamos con la sesion, si no, al index
{
echo 
"exito";
//session_register("usuario"); //registramos la variable usuario que contendrá el nick del user
//session_register("idusuario"); //registramos la variable idusuario que contendrá la id del user
//session_register("level"); //registramos la variable level que contendrá el level del user
//damos valores a las variables de la sesión
$_SESSION[usuario] = $user_ok["nick"]; //damos el nick a la variable usuario
$_SESSION[idusuario] = $user_ok["id"]; //damos la id del user a la variable idusuario
$_SESSION[level] = $user_ok["level"];

Header("Location:".$_SERVER['HTTP_REFERER']);  
echo 
"$_SESSION[usuario]";

}else{
//Header("Location: index.php");
echo 'Nick y pass incorrectos';
}


?>