este es el archivo lhh.class.login.php, donde tengo las clases de conexion e inicio de sesion.
Código PHP:
class Connection {
private $host;
private $user;
private $pass;
private $data;
private $connection;
public function setParams($_host,$_user,$_pass,$_data) {
$this->host = $_host;
$this->user = $_user;
$this->pass = $_pass;
$this->data = $_data;
}
public function conn() {
$this->connection = mysql_connect($this->host,$this->user,$this->pass);
if ($this->connection): $database = mysql_select_db($this->data);return true;
else: return false; endif;
}
public function closeConn() {
mysql_close($this->connection);
}
}
class Login {
private $user;
private $pass;
public function setLogin($_user,$_pass) {
$this->user = $_user;
$this->pass = $_pass;
}
public function login() {
$query = sprintf("select * from users where user='%s' and pass='%s'",
mysql_real_escape_string($this->user),
mysql_real_escape_string($this->pass));
$result = mysql_query($query);
$data = mysql_fetch_assoc($result);
if ($data['user'] == $this->user && $data['pass'] == $this->pass):
session_start();
$_SESSION['user_id'] = $data['user_id'];
$_SESSION['user'] = $data['user'];
$_SESSION['pass'] = $data['pass'];
$_SESSION['name'] = $data['f_name'];
$_SESSION['last'] = $data['l_name'];
$_SESSION['mail'] = $data['email'];
return true;
else:
return false;
endif;
}
}
este es el archivo login.php que llamo a traves de ajax para iniciar la sesion.
Código PHP:
include('lhh.class.login.php');
include('config.php');
$con = new Connection;
$con->setParams($db_host,$db_user,$db_pass,$db_data);
$con->conn();
if ($con->conn()): echo('conectado'); else: echo('no se pudo conectar'); endif;
$username = $_REQUEST['user'];
$password = $_REQUEST['pass'];
$login = new Login;
$login->setLogin($username,$password);
$login->login();
echo($_SESSION['pass']);
el archivo config.php solo son los datos de conexion. ($host,$user,$pass,$data)
El proceso es el siguiente:
En el archivo index.php tengo un formulario donde pide usuario y contraseña, una vez que el usuario da click en enviar, este a travez de un script de jquery manda llamar login.php usando ajax, en y en ese momento me crea la variables de sesion, pero en cuanto recargo la pagina, ya existe ninguna sesion.
Espero su ayuda.