Resulta que estoy trabajando con un sistema de login, para que usuarios registrados entren a una sección restringida del sitio.
El problema es que si bien, logra conectar a la bd, no valida de manera correcta al usuario, es decir me marca usuario invalido.
Dejo el codigo donde valida a los usuarios y la tabla de la bd por si alguno mas experimentado en el tema encuentra algo que yo no :S.
Un saludo y desde ya muchas gracias.-
Check Login
Código:
exito.php<?php $host='sql310.eshost.com.ar'; $username='eshos_6252824'; $password='***'; $db_name='eshos_6252824_user'; $tbl_name='usuarios'; //Conectamos con el servidor y seleccionamos la base de datos echo 'Intentando conectar a '.$host.'<br>'; echo '<b>Respuesta del servidor:</b> <br> '; $conexion = @mysql_connect($host, $username, $password); // se conecta con el servidor if (!$conexion){ echo "Error al intentar conectarse con el servidor MySQL<br>"; exit(); }else{ echo " Conexion exitosa con el servidor MySQL<br>"; }; if (!mysql_select_db($db_name, $conexion)){ // selecciona la base de datos echo "No se pudo conectar correctamente con la Base de datos<br>"; exit(); }else{ echo " Conexion exitosa con la Base de datos<br>"; }; //Cogemos los datos que nos llegan desde el formulario ( lo tendremos que crear) $minombre=$_POST['nick']; $contrasena=$_POST['password']; // Unas pequeñas medidas de seguridad para proteger las bases de datos de posibles inyecciones $minombre = stripslashes($minombre); $contrasena = stripslashes($contrasena); $minombre = mysql_real_escape_string($minombre); $contrasena = mysql_real_escape_string($contrasena); $sql="SELECT * FROM $tbl_name WHERE username='$minombre' and password='$contrasena'"; $result=mysql_query($sql); // Contamos el numero de filas $count=mysql_num_rows($result); //Si el resultado marcado es $minombre y $contrase�a,deber�a haber solo una fila if($count==1){ //Registramos usuario y redireccionamos a exito.php session_register("minombre"); session_register("contrasena"); header("location:exito.php"); } else { echo "Nombre de usuario equivocado o contrasena"; } ?>
Código:
SQL<?php session_start(); if(!session_is_registered('myusername')){ header("location:index.html"); } ?>
Código:
CREATE TABLE IF NOT EXISTS `usuarios` ( `nick` varchar(50) NOT NULL, `password` varchar(25) NOT NULL, `Index` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`Index`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;