Foros del Web » Programando para Internet » PHP »

redirección automática a la página anterior

Estas en el tema de redirección automática a la página anterior en el foro de PHP en Foros del Web. Saludos a toda la gente del foro. Tengo una página en la cual para acceder a una sección de la web llamada infoexclusiva.php hay que ...
  #1 (permalink)  
Antiguo 03/09/2009, 19:32
 
Fecha de Ingreso: noviembre-2003
Mensajes: 127
Antigüedad: 20 años, 5 meses
Puntos: 1
redirección automática a la página anterior

Saludos a toda la gente del foro.
Tengo una página en la cual para acceder a una sección de la web llamada infoexclusiva.php hay que estar registrado, si el usuaro no se ha logueado y desea acceder a infoexclusiva.php lo envía directo a la página login.php una vez que se loguea redirecciona a la página infoexclusiva.php automáticamente utilizando la sentencia:
header ("Location: infoexclusiva.php");
pero ahora no solo quiero que la seguridad se aplique a la página infoexclusiva.php sinó a otras dos una un panel en el cual el usuario puede cambiar la contraseña y otra en la cual el usuario puede actualizar sus datos, pero no se como hacer eso, algo así como las webs en las que puedes ver el contenido de algunas páginas pero para acceder a las descargas o acceder a los links de descargas tienes q estar logueado. Una vez que el usuario se loguea regresa a la página que el usuario estaba viendo.
A continuación pego el código que utilizo.

seguridad.php
Código:
//si es necesario cambiar la config. del php.ini desde el script
ini_set("session.use_only_cookies","1");
ini_set("session.use_trans_sid","0");

session_set_cookie_params(0, "/", $HTTP_SERVER_VARS["HTTP_HOST"], 0);
//cambiamos la duración a la cookie de la sesión

session_name("loginUsuario");
session_start();
ob_start();

if( !isset( $_SESSION['autentificado'] ) or $_SESSION["autentificado"] != 'SI' )
{
unset( $_SESSION['autentificado'] ); 

session_destroy();
header("Location: login.php");
}
check_login.php
Código:
include("conectar.php");
//si es necesario cambiar la config. del php.ini desde el script
ini_set("session.use_only_cookies","1");
ini_set("session.use_trans_sid","0"); 

//adquiero los datos del formulario
$usuario= ($_POST["usuario"]);
$contrasena=($_POST["contrasena"]);

//Sentencia SQL para buscar un usuario con esos datos y que tenga estado habilitado
$ssql = "SELECT * FROM USUARIOS WHERE nombre_usuario='$usuario' and clave_usuario='$contrasena' and habilitado=1";
//Ejecuto la sentencia
$rs = mysql_query($ssql,$conn); 

//vemos si el usuario y contraseña es váildo
//si la ejecución de la sentencia SQL nos da algún resultado
//es que si que existe esa conbinación usuario/contraseña 
if (mysql_num_rows($rs)!=0){
    //usuario y contraseña válidos
    //defino una sesion y guardo datos
	session_name("loginUsuario");
	//asignamos un nombre a la sesión para guardar diferentes datos
    session_start();
	// inicio la sesión 
	session_set_cookie_params(0, "/", $HTTP_SERVER_VARS["HTTP_HOST"], 0);
   //cambiamos la duración a la cookie de la sesión
    $_SESSION["autentificado"]= "SI";
	//se ha definido que la sesion está autorizada
	$_SESSION["ultimoAcceso"]=date("Y-n-j H:i:s");
	 //defino la fecha y hora de inicio de sesión en formato aaaa-mm-dd hh:mm:ss 
    header ("Location: infoexclusiva.php");
}else {
    //si no existe le mando otra vez a la portada
    header("Location:  login.php?errorusuario=si");
} 
mysql_free_result($rs);
mysql_close($conn);
Espero me puedan dar algunas pistas para solucionar esta duda.

Gracias y muchos saludos.

David
  #2 (permalink)  
Antiguo 04/09/2009, 15:44
Avatar de lukas4  
Fecha de Ingreso: octubre-2008
Ubicación: frente al pc
Mensajes: 496
Antigüedad: 15 años, 6 meses
Puntos: 12
Respuesta: redirección automática a la página anterior

pues es simplemente igual a como lo estas haciendo con la de infoexclusiva, solo q en lugar de poner infoexclusiva pondras el nombre de los otros archivos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:59.