He hecho el mismo post en el subforo de bugs y exploits, si ven que aquí sobra lo pueden borrar. (Aunque quizá lo borren ahí... Aishh).
Bueno, he intentado programar un sistema de logueo para acceder a una página en particular, pero con que lo he hecho yo desde cero con los pocos conocimientos que tengo, me pregunto si este sistema es totalmente seguro, dejando a parte SQL Injections (ya que aun no he mirado eso). El código es el siguiente:
Formulario.php
<html>
<head></head>
<body bgcolor="#000" text="#FFFFFF">
<center><br><br><br>
<form action="acceso.php" method="post">
Login:<br><input name="login" type="text" maxlength="9"></input><br><br>
Password: <br><input name="pass" type="password" maxlength="9"></input><br><br>
<input type="submit" value="Enviar">
</form>
</center>
</body>
</html>
Este no hace falta ni que lo explique porqué creo que es muy simple.
Acceso.php
<?php
$login= htmlentities($_POST['login']);
$pass= htmlentities($_POST['pass']);
$db="Usuarios";
$tabla="Datos";
echo "Datos:";
echo "<br>";
echo "El login es $login<br>";
echo "El password es $pass<br>";
$conexion=mysql_connect("localhost","root","");
if(!$conexion){
echo "No se ha podido conectar a la base de datos<br>";
return 0;
}else{
mysql_select_db($db, $conexion);
$res=mysql_query("SELECT * FROM $tabla", $conexion);
echo "Res=$res<br>";
while($fila = mysql_fetch_array($res)){
$login1 = $fila['login'];
$password1 = $fila['pass'];
echo "Login leido= $login1 Password leido=$password1";
}
}
mysql_close();
if(($login==$login1)&&($pass==$password1)){
header("location:AccesoValidado.html");
}else{
header("location:AccesoDenegado.html");
}
?>
No es muy difícil de entender, si tenéis alguna duda preguntad. Al final de este código es donde se comprueba si el password y usuario es el mismo. Yo creo que es seguro ya que el valor de una variables en php NO se pueden modificar externamente, no? Y si se intenta entrar a Acceso.php este redirecciona directamente hacia AccesoDenegado.html.
Lo que aun no sé es como hacer que a Accesovalidado sólo puedan llegar las personas loguedas. Me pregunto si es posible hacerlo sin cookies.
Gracias.