Foros del Web » Programando para Internet » PHP »

no pasa la variable session_register

Estas en el tema de no pasa la variable session_register en el foro de PHP en Foros del Web. Hola maestros estoy tratando de autentificar mi pagina, es decir , que los usuarios se tienen que registrar para esto hice un script el cual ...
  #1 (permalink)  
Antiguo 24/02/2005, 11:22
Avatar de payo22  
Fecha de Ingreso: noviembre-2002
Ubicación: México
Mensajes: 839
Antigüedad: 21 años, 5 meses
Puntos: 1
no pasa la variable session_register

Hola maestros

estoy tratando de autentificar mi pagina, es decir , que los usuarios se tienen que registrar para esto hice un script el cual me pide el login y el pass despues lo valido haciendo una consulta a mi bd y si existe me pasa a la pagina privada ahora si teclean la pagina primero verifica si se han registrado y si no los manda a la pagina de inicio para que se registren pero si ya se registron si muestra la pagina.

pero cuando pongo el script que verifica siempre me manda a la principal no se que este haciendo mal

mi script que verifica en la bd es el siguiente:

control.php
Código PHP:
<?
//conecto con la base de datos

$usuario=$HTTP_POST_VARS['usuario'];
$contrasena=$HTTP_POST_VARS['contrasena'];

$conn mysql_connect("localhost","usuario","pass");
mysql_select_db("NAME",$conn);

$ssql "SELECT * FROM usuarios WHERE nombre_usuario='$usuario' and clave_usuario='$contrasena'";

$rs mysql_query($ssql,$conn);

if (
mysql_num_rows($rs)!=0){
    
session_start();
    
session_register("autentificado");
    
$autentificado "SI";
    
header ("Location: alta_estacion.php");
}else {
    
header("Location: admon.php?errorusuario=si");
}
mysql_free_result($rs);
mysql_close($conn);
?>
y el codigo que pongo en cada pagina privada es el siguiente:

seguridad.php

Código PHP:
<?
//TOMO VARIABLES DE SESION SOBRE LA AUTENTIFICACION
session_register("autentificado");
//COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO
if ($autentificado != "SI") {
    
//si no existe, envio a la pagina de autentificacion
    
header("Location: admon.php");
    
//ademas salgo de este script
    
exit();
}
?>
y este codigo lo agrego a la pagina o paginas privadas por ejemplo:

<?include("seguridad.php");?>
<html>
y aqui todo el codigo.

pero aqui siempre me manda a la pagina de autentificacion aunque ya me haya registrado y nunca me muestra la pagina privada no se que este haciendo mal.

gracias por todo.

Última edición por payo22; 24/02/2005 a las 11:25
  #2 (permalink)  
Antiguo 24/02/2005, 11:50
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
NOOOOOO uses session_register() .. esa forma de trabajar con sesiones está obsoleta (y es insegura) ..

Revisa la documentación oficial de PHP sobre sesiones (www.php.net/session) y las FAQ's de este foro para ver como trabajar con los "arrays superglobales" ...

(sobre tu problema .. en seguridad.php .. no debes hacer un nuevo session_register() .. eso sí usar session_start() .. pero por tu seguridad NOOO uses $autentificado .. usa al menos $HTTP_SESSION_VARS['autentificado'] para ver y acceder a dicho valor ...)

Un saludo,

Última edición por Cluster; 24/02/2005 a las 11:51
  #3 (permalink)  
Antiguo 24/02/2005, 11:57
Avatar de payo22  
Fecha de Ingreso: noviembre-2002
Ubicación: México
Mensajes: 839
Antigüedad: 21 años, 5 meses
Puntos: 1
gracias Maestro Cluster voy a checarlo y ya despues veremos como quedo
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 13:32.