anamoneyba
Usuario Novato
Usuario Novato

A ver... estoy intentando crear una web con codigo php.. la cual estara "relacionada" con una base de datos.... en mysql....

La cosa es que tengo pagina de registro y pagina de acceso... al ingresar los datos se me quedan guardados perfectamente en mi base de datos... pero cuando intento acceder con los datos.... el mensaje que me tendria que salir es "Usuario y contraseña correctos" y lo que me sale es " Debe verificar usuario y contraseña..." y le he dado muchisimas vueltas de como hacerlo... Aqui pongo el codigo de todo... para ver si asi se ve el error y m podeis ayudar :(

Index:

<?php
session_start();
?>
Inicia sesión aquí!!!.<br />
<?php
echo 'Bienvenido, ';
if (isset($_SESSION['k_username'])) {

    echo '<b>'.$_SESSION['k_username'].'</b>.';
    echo '<p><a href="logout.php">Logout</a></p>';
}else{
    echo '<p><a href="login.php">Login</a></p>
     <p><a href="registrar.php">Registrar</a></p>';
}
?>

Logout:

<?php
session_start();
// Borramos toda la sesion
session_destroy();
echo 'Has cerrado la session <p><a href="index.php">index</a></p>';
?>
<SCRIPT LANGUAGE="javascript">
location.href = "index.php";
</SCRIPT>

Login:

<form action="validar_usuario.php" method="post">
Usuario:<input type="text" name="usuario" size="20" maxlength="20" />
<br />
Password:<input type="password" name="password" size="10" maxlength="10" />
<br />
<input type="submit" value="Ingresar"/>
<input type="reset" value="Borrar"/>
</form>

Registrar:

<?php
session_start();
//datos para establecer la conexion con la base de mysql.
mysql_connect('localhost','usuario','password')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('users')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function formRegistro(){
?>
<form action="registrar.php" method="post">
Usuario (max 20):
  <input type="text" name="username" size="20" maxlength="20" /><br />
Password (max 10):
<input type="password" name="password" size="10" maxlength="10" />
Confirma: <input type="password" name="password2" size="10" maxlength="10" /><br />
Email (max 40):
<input type="text" name="email" size="20" maxlength="40" /><br />
<input type="submit" value="Registrar" />
</form>
<?php
}
// verificamos si se han enviado ya las variables necesarias.
if (isset($_POST["username"])) {
    $username = $_POST["username"];
    $password = $_POST["password"];
    $password2 = $_POST["password2"];
    $email = $_POST["email"];
    // Hay campos en blanco
    if($username==NULL|$password==NULL|$password2==NULL|$email==NULL) {
        echo "un campo está vacio.";
        formRegistro();
    }else{
        // ¿Coinciden las contraseñas?
        if($password!=$password2) {
            echo "Las contraseñas no coinciden";
            formRegistro();
        }else{
            // Comprobamos si el nombre de usuario o la cuenta de correo ya existían
            $checkuser = mysql_query("SELECT usuario FROM usuarios WHERE usuario='$username'");
            $username_exist = mysql_num_rows($checkuser);
            $checkemail = mysql_query("SELECT email FROM usuarios WHERE email='$email'");
            $email_exist = mysql_num_rows($checkemail);
            if ($email_exist>0|$username_exist>0) {
                echo "El nombre de usuario o la cuenta de correo estan ya en uso";
                formRegistro();
            }else{
                $query = 'INSERT INTO usuarios (usuario, password, email, fecha)
                VALUES (\''..'\',\''..'\',\''..'\',\''.date("Y-m-d").'\')';
                mysql_query($query) or die(mysql_error());
                echo 'El usuario '.$username.' ha sido registrado de manera satisfactoria.<br />';
                echo 'Ahora puede entrar ingresando su usuario y su password <br />';
                ?>
                <FORM ACTION="validar_usuario.php" METHOD="post">
                  Usuario : <INPUT TYPE="text" NAME="usuario" SIZE=20 MAXLENGTH=20><br />
                  Password: <INPUT TYPE="password" NAME="password" SIZE=10 MAXLENGTH=10><br />
                  <INPUT TYPE="submit" VALUE="Ingresar">
                  <INPUT TYPE="reset" VALUE="Borrar">
                </FORM>
                <?php
            }
        }
    }
}else{
    formRegistro();
}
?>

Validar usuario:

<?php session_start();

//datos para establecer la conexion con la base de mysql.

mysql_connect('localhost','usuario','password')or die ('Ha fallado la conexión: '.mysql_error());

mysql_select_db('users')or die ('Error al seleccionar la Base de Datos: '.mysql_error());

function quitar($mensaje)


{
    $nopermitidos = array("'",'\','<','>',""");
    $mensaje = str_replace($nopermitidos, "", $mensaje);
    return $mensaje;
}

if(trim($HTTP_POST_VARS["usuario"]) != "" && trim($HTTP_POST_VARS["password"]) != "")

{

    // Puedes utilizar la funcion para eliminar algun caracter en especifico
    //$usuario = strtolower(quitar($HTTP_POST_VARS["usuario"]));
    //$password = $HTTP_POST_VARS["password"];
    // o puedes convertir los a su entidad HTML aplicable con htmlentities
    
    $usuario = strtolower(htmlentities($HTTP_POST_VARS["usuario"], ENT_QUOTES));
    $password = $HTTP_POST_VARS["password"];
    $result = mysql_query('SELECT password, usuario FROM usuarios WHERE usuario=''.$usuario.''');
    if($row = mysql_fetch_array($result)){
        if($row["password"] == $password){
        
            $_SESSION["k_username"] = $row['usuario'];
            echo 'Has sido logueado correctamente '.$_SESSION['username'].' <p>';
            echo '<a href="index.php">Index</a></p>';
            
            //Elimina el siguiente comentario si quieres que re-dirigir automáticamente a index.php
            /*Ingreso exitoso, ahora sera dirigido a la pagina principal.
            <SCRIPT LANGUAGE="javascript">
            location.href = "index.php";
            </SCRIPT>*/
            
            
        }else{
            echo 'Password incorrecto';
        }
    }else{
        echo 'Usuario no existente en la base de datos';
    }
    mysql_free_result($result);
}else{
    echo 'Debe especificar un usuario y password';
}
mysql_close();
?>

Gracias de antemano... ^^!

Avatar Image
@man / @woman
@man / @woman

Y donde defines el mensaje: " Debe verificar usuario y contraseña..."

anamoneyba
Usuario Novato
Usuario Novato

Supuestamente lo que tiene que hacer ese mensaje es aparecer si no se añade nada en los campos de usuario o el de contraseña...! :S Eso intentaba xD pero algo estoy haciendo mal :(

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
TemaUsuariosRespuestasVisitasActividad
Por: , el 06/Feb/2010, 13:36
simulbotiga botigavirtual aerialss8852kFeb/10
Por: , el 08/Jul/2009, 22:58
aneury_yariel GestionXls3890Jul/09
Por: , el 04/Jul/2008, 03:40
sabita_9911 Ellocodelataquilla17kJul/08
Por: , el 01/Oct/2007, 00:06
Atutina02kOct/07
Por: , el 06/Mar/2006, 14:34
tornoius chavp NoSetup.org fb@68851210794489044kMay/15