aki va todo el codigo, ahora implemente una clase ke esta ne funcionmiento en otra parte,pero resulta ke el error ahora es ke no me pasa el valor de las variables despues de hacer la verificacion, jajj aahora si ke nose ke pasa
Clase ke uso para las sesiones(esta clase funciona corrrectamente pk esta en uso
Código PHP:
class sesion{
var $carrera;
var $creada;
var $asignaturas;
var $user;
var $nombres;
var $paterno;
var $login;
function sesion(){
$this->creada = true;
}
function creaSesion($log,$cod,$asig,$user,$nom,$pat){
$this->login = $log;
$this->carrera =$cod;
$this->asignaturas=$asig;
$this->user=$user;
$this->nombres=$nom;
$this->paterno=$pat;
$sess_name = "ses";
session_name($sess_name);
$variable_de_session = "login";
$variable_de_session_2 = "carrera";
$variable_de_Session_3 = "seguridad";
$variable_de_Session_4="user";
$variable_de_Session_5="nombres";
$variable_de_Session_6="paterno";
$variable_de_Session_7="asignaturas";
session_register($variable_de_session);
session_register($variable_de_session2);
session_register($variable_de_session3);
session_register($variable_de_session4);
session_register($variable_de_session5);
session_register($variable_de_session6);
session_register($variable_de_session7);
session_start();
$_SESSION['login'] = $this->login;
$_SESSION['nombres'] = $this->nombres;
$_SESSION['paterno'] = $this->paterno;
$_SESSION['user'] = $this->user;
$_SESSION['asignaturas'] = $this->asignaturas;
$_SESSION['carrera'] = $this->carrera;
$_SESSION['seguridad'] = "_O-l_H-";
}
function validaSesion(){
$variable_de_session = "login";
session_register($variable_de_session);
session_start();
if(session_is_registered("login")){
return($_SESSION['login']);
}
else
return(FALSE);
}
}
este es el codigo del control,donde sehacen las validaciones de usuarios
Código PHP:
require_once("./ClaseSesion.php");
$sesion=new Sesiones();
$user=$sesion->VerificarTipoUsuario($_POST['login']);
$login=$_POST['login'];
$pass=$_POST['contra'];
require_once("class.sesiones.inc.php");
$ses=new sesion();
switch($user){
case "alumno":{$documento="../data/usuarios/alumnos.xml";
$id="matricula";}
break;
case "profesor":{$documento="../data/usuarios/profesores.xml";
$id="rut";
}
break;
case "admin":{$documento="../admin/xml/admin.xml";
$id="id";
}
break;
}
$xml = simplexml_load_file($documento);
foreach($xml->$user as $archivo){
if(trim($archivo->$id)==$login){
if(strtolower($pass)==($archivo->password)){
$ses->creaSesion($login,$archivo->carrera,$archivo->asignaturas,$user,$archivo->nombres,$archivo->paterno);
}
}
}
if($ses->validaSesion()!=false){
header ("Location: index2.php");
}else{
header ("Location: index.html");
}
y finalmente este es el codigo de la validacion ke tendria ke ir en cada pagina
Código PHP:
<?
require_once("class.sesiones.inc.php");
$ses=new sesion();
if($ses->validaSesion()!=FALSE){
header ("Location: index.html");
}else { $mm=$ses->validaSesion()};
?>
<html>
<head>
<title>
esto $mm=$ses->validaSesion() lo hago para ver el valor de la variable. e inserto esto <?php echo "nn".$mm;?> en otra parte de codigo html y este valor no me lo muestra... ayuda por favor
ese es todo el codigo, la validacio de usuario funciona,tambien la validacion de sesion el la pagina index2.php, asi ke cual sera el error??.... no lo se, ademas en php.ini tengo esto
session.use_cookies = ON
ademas estoy ocupando iun iframes