Hola:
He buscado en el foro pero las respuestas no me orientan.
En wampserver he modificado el valor de session.auto_start = 1 ; en el archivo php.ini y el codigo se desarrolla bien:
Código PHP:
Ver original<?php
if (isset($_POST['submit'])) {
$nombre = $_POST['txtnombre'];
$pass = $_POST['txtpassword'];
if ($reqlen > 0)
{
include("conexion.php");
$sql="SELECT * FROM usuarios WHERE Nombre ="."'$nombre'". " AND Password ="."'$pass'";
{
echo "<script language='JavaScript'>alert('No está autorizado');</script>";
}
else
{
//usuario y contraseña válidos
//defino una sesion y guardo datos
$_SESSION["autentificado"]= "SI";
echo "<script languaje='javascript' type='text/javascript'>window.open('form_control.php');</script>";
}
}
else
{
echo 'Por favor, rellene todos los campos requeridos.';
}
}
?>
Como véis declaro la variable de sesión.
Luego en el inicio de las páginas hago un include(seguridad.php)
que contiene este código:
Código PHP:
Ver original<?php
//COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO
if ($_SESSION["autentificado"] != "SI") {
//si no existe, envio a la página de autentificacion
header("Location: index.php"); //ademas salgo de este script
}
?>
Y todo va bien.
He subido colgado las páginas en el hosting y no me redirecciona, manteniéndome en index.php que es el de autentificación.
El php.ini del hosting tiene session..auto_start en off.
Supongo que el problema viene por esto, ya que cuando varié el valor en el php.ini del localhost funcionó.
Ahora bien, si tengo que incluir
¿esto sería lo correcto? Es decir al inicio del código del index.php
¿Hay que incluirlo en el el código del script de conexión?
¿Incluirlo en el codigo del script "seguridad.php"?
Toda la información y código lo he obtendio de desarrollo web.
Gracias.