Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/03/2007, 15:21
oscarf8
 
Fecha de Ingreso: febrero-2007
Mensajes: 32
Antigüedad: 17 años, 2 meses
Puntos: 0
Sesiones con register_global off

Hola,

Les explico la situación.

Hasta ahora estoy usando sesiones y siguiendo ejemplos logre hacer el logueo web que me funciono perfecto en mi pc (donde logicamente tengo instalado apache y mysql), al subirlo al hosting me encuentro que la pagina que hace el logueo no funciona, es mas me queda en blanco y solo me abre cuando escribo en la direccion la url que llega a la pagina, y ahi le suministro el usuario y la contraseña pero no hace nada. En vista a este problema investigue y me entere que en varios hosting y en el php desde la version 4, creo, desactivan una variable que esta en php.ini "register_global off", por cuestiones de seguridad. Me molesto un poco, porque en los sitios donde investigue sobre sesiones no advierten sobre este problema. Para solucionar desactive tambien register_global a off y me puse hacer la respectivas modificaciones al codigo de mi pagina, hago las pruebas nuevamente en mi pc y todo funciona perfecto, pero nuevamente cuando subo al hosting el problema continua.

No tengo experiencia en esto, asi que recurro a su ayuda y su sugerencia, de que puede estar pasando en mi hosting o que estoy haciendo mal.

Aqui les pego el codigo que uso para el logueo

<div id="puerta" >
<?

if (!$HTTP_POST_VARS){
?>
<form action="acceso.php" method=post>

<?
$s=0;
if ($_GET["s"])
{
$s=$_GET["s"];

}

if ($s==1)
{
echo "Acceso denegado";
}
?>

<div id="formulario-etiquetas" > usuario: </div> <div id="formulario-controles" > <input type=text name="usuario" size=15> </div>
<div id="formulario-etiquetas" > clave </div> <div id="formulario-controles" > <input type=password name="clave" size=15> </div>
<div id="formulario-etiquetas" > <input type=submit value="enviar"> </div>
</form>
<?
}else{
//Estoy recibiendo el formulario, compongo el cuerpo
$usuario = $_POST["usuario"];
$clave = $_POST["clave"];

//Sentencia SQL para buscar un usuario con esos datos
$ssql = "select * from acceso WHERE nckacceso='$usuario' and pssacceso='$clave'";

//Ejecuto la sentencia
$rs = mysql_query($ssql);

if (mysql_num_rows($rs)!=0)
{
//usuario y contraseña válidos
//defino una sesion y guardo datos
session_set_cookie_params(0, "/", $_SERVER["HTTP_HOST"], 0);
//cambiamos la duración a la cookie de la sesión
session_start();
$_SESSION["autentificado"]= "SI";
$_SESSION["login"]= $usuario;
header ("Location: ../admin/admin.php");
}
else
{
//si no existe le mando otra vez a la portada
header("Location: acceso.php?s=1");
}
mysql_free_result($rs);
}
?>
</div>


y la autenticación que hago en cada una de las paginas:

<body>
<?
//Inicio la sesión
session_start();

//COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO
if ($_SESSION["autentificado"] != "SI") {
//si no existe, envio a la página de autentificacion
header("Location: ../acceso/acceso.php");
//ademas salgo de este script
exit();
}

//Conexion con la base
mysql_connect("localhost","root","quintero");

//Selecciona una base de datos
mysql_select_db("dbssc");
?>


Agradezco en lo que me puedan ayudar.

Saludos.