Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/01/2004, 17:14
annt40
 
Fecha de Ingreso: enero-2004
Ubicación: Colombia
Mensajes: 80
Antigüedad: 20 años, 3 meses
Puntos: 0
Pregunta Ayuda Sesiones Php

Hola!!
Estoy trabajando en un proyecto en php y estoy utilizando los siguientes scripts para validar usuarios creados en la BD y de esta manera hacer segura la aplicación. Los usuarios se validan sin problema pero la palicacion no es segura, puedo abrir desde el navegador cualqueir pagina y no valida la seguridad. ¿ me podrián ayudar con esto?
Estos son los scripts que estoy utilizando:
index.php (Formulario devalidación de los usuarios)
<?include("snsec.php");?>
<html>
<td width="10%">
<div align="left"><font color="#000000"><b><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333399">
<head>
<title>Boton desactibado</title>
<script language="JavaScript">
//(c) 1999-2001 Zone Web
function click() {
if (event.button==2) {
alert ('Este boton esta desabilitado.')
}
}
document.onmousedown=click
//-->
</script>
<title>Sistema Notificador </title>
</head>
<body>
<? include ("date.php"); ?>
<br>
<br>
<div align="center"><img src="escol.jpeg" width=80 height=70 border=0></div>
<div align="center"><b><h1>Sistema Notificador</h1></b></div>
<div align="center"><b><h4>Area Privada</h4></b></div>
<br>
<hr>
<div align="center">
<form action="control.php" method="POST">
<table aling="center" width="225" cellspadding="4" border="0">
<tr>
<td colspan="2" aling="center">
<?if($_GET["errorusuario"]=="SI"){
?>
<div align="center"><font color="#FB0000"><b>
<h3>Datos Incorrectos!!!</h3>
</b></font></div>
<?}else{?><bgcolor=#FB0000>
<?}?>
</td>
</tr>
<tr>
<div id="Layer1" style="position:absolute; left:229px; top:207px; width:302px; height:121px; z-index:1; background-color: #CCCCCC; layer-background-color: #CCCCCC; border: 1px none #000000">
<td aling="rigth"><font color="#CCCCCC"><font color="#000000"><b><font face="Geneva, Arial, Helvetica, san-serif" size="3" color="#333399">Usuario:</font></td>

<font color="#CCCCCC"></font></font>
<font color="#CCCCCC"></b></font>
<td>
<input type="Text" name="user_name" size="16" maxlength="50">
</td>
</tr>
<tr>
<td aling="rigth"><font color="#CCCCCC"><font color="#000000"><b><font face="Geneva, Arial, Helvetica, san-serif" size="3" color="#333399">Contraseña:</font></td>
<td><font color="#CCCCCC">
<input type="password" name="pws" size="16" maxlength="50">
</font></td>
<font color="#CCCCCC"></font></font></b>
</tr></font></b></font></div>
<tr>
<td colspan="2" aling="center">
<div align="center">
<input type="Submit" value="Entrar">
</div>
</td>
</div>
</tr>
</table>
</form>
</div>
<hr>
</body>
</font></b></font></div>
</html>

snsec.php (Modulo de Seguridad)
<?
//script de capa de seguridad
//Este archivo se encarga de dotar seguridad a toda la aplicación de acceso restringido
session_start();
//Inicio la Sesión
if($_SESSION["autenticado"!="SI"]){
// Comprueba que el usuario este autenticado
header("location:index.php");
//si el usuario no esta autenticado, se envia de nuevo a la pagina de validación
exit();
// Se cierra este script
}
?>

control.php (Modulo que conecta la BD y valida a los usuarios)
<? include("snsec.php");?>
<?
//conecto con la base de datos
$conn = mysql_connect("localhost","xx","xx");
//selecciono la BBDD
mysql_select_db("sndb",$conn);

//Sentencia SQL para buscar un usuario con esos datos
$ssql = "SELECT * FROM usuarios WHERE user_name='$user_name' and pws='$pws'";

//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_start();
session_register("autenticado");
$autenticado = "SI";
header ("Location:menuppal.php");
}else {
//si no existe le mando otra vez a la portada
header("Location:index.php?errorusuario=SI");
}
mysql_free_result($rs);
mysql_close($conn);
?>
Les agradezco la ayuda que me puedan prestar.
Annt40