Cita:
Este archivo php verificara la existencia del usuario y creara una session mediante session_start(). En este archivo php, si no existe el usuario me da un mensaje de "usuario incorrecto" o "contraseña incorrecta " y si existe ingresa al sistema. Copio algo del codigo php:var pos_url ='includes/login.php';
var usuario=document.formlogueo.usuario.value;
var clave=document.formlogueo.clave.value;
var req = new XMLHttpRequest();
if (req)
{
req.onreadystatechange = function()
{
if (req.readyState == 4 && (req.status == 200 || req.status == 304))
{
if (req.responseText==1)
{
location.href='../index2.php'; // ingreso al sistema
}
else
{
alert(req.responseText);
}
}
}
req.open('POST', pos_url,true);
req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
req.send('usuario='+usuario+'&clave='+clave);
}
}
// aqui va el formulario
var usuario=document.formlogueo.usuario.value;
var clave=document.formlogueo.clave.value;
var req = new XMLHttpRequest();
if (req)
{
req.onreadystatechange = function()
{
if (req.readyState == 4 && (req.status == 200 || req.status == 304))
{
if (req.responseText==1)
{
location.href='../index2.php'; // ingreso al sistema
}
else
{
alert(req.responseText);
}
}
}
req.open('POST', pos_url,true);
req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
req.send('usuario='+usuario+'&clave='+clave);
}
}
// aqui va el formulario
archivo login.php
Código PHP:
if (isset($_POST['cod_asig']) && isset($_POST['clave']) && isset($_POST['dni_doc'])) // chequeamos si se definieron cod_asig y clave a travez de un formulario
{
// conectamos base de datos
// verificamos si existe el usuario
// si no existe el usuario hacemos un echo "usuario incorrecto" o "contraseña incorrecta" en su defecto.
// luego, si existe el usuario, hacemos query y lo dejamos en $tabla y luego creamos la session
session_name('session_usuarios'); // Lee y/o cambia el nombre de la sesión actual
session_start(); // Iniciamos session
session_cache_limiter('nocache,private'); // indicamos al navegador que no cache esta pagina
// si llego hasta aqui, significa que todo marcha bien, por lo tanto defino
$_SESSION['usuario']=$tabla['usuario']
$_SESSION['clave']=$tabla['clave'];
$_SESSION['nivel']=$tabla[nivel];
exit;
}
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:\archivos de programa\easyphp1-7\www\layouts\menuprincipal.php:83) in c:\archivos de programa\easyphp1-7\www\modulos\altasdealumnos.php on line 3
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\archivos de programa\easyphp1-7\www\layouts\menuprincipal.php:83) in c:\archivos de programa\easyphp1-7\www\modulos\altasdealumnos.php on line 3
sin embargo por las pruebas que hice, crea la session. Me gustaria si alguien puede indicarme cual es mi error. Estuve buscando informacion y me encontre que cuando creo sesiones no debe haber ningun echo ni codigo html ni nada
Para aclarar mas el tema, pongo lo siguiente en cada pagina para validar la session
Código PHP:
<?php
session_name('session_usuarios');
session_start(); // Iniciamos session
$nivel_acceso=1;
if (isset($_SESSION['nivel']))
{
if ($nivel_acceso<=$_SESSION['nivel'])
{
//include("modulos/mensajelogeo.php");
exit;
}
}
else
{
echo "no existe session";
}
?>
// sigue el codigo html