Porqué al ejecutar el Select no ubica el registro el cual realmente existe ?

Hola. Espero te encuentres bien. Quisiera saber si pudieras colaborarme con el siguiente problema: Tengo un archivo PHP dentro del cual ejecuto un select buscando si existe un nombre de usuario dado (el cual capturo en otro PHP el cual se ejecuta inmediatamente antes), pero nunca ubica el nombre usuario en la tabla de la BD, aunque realmente exista.

********************

El código del archivo que ejecuta el select es el siguiente:

--------------------

<?php
session_start();
require_once("conexión.php");
//preguntamos si el usuario existe en la Base de Datos
$sql = "SELECT * FROM usuarios WHERE user = ' ".$_POST["usuario"]." ' ";
$nomb_usuario = $_POST["usuario"];
$result = mysql_query($sql, $conexión);
echo "Número de registros traídos - función primera: &nbsp;".mysql_num_rows($result)."<br/>";
if ( mysql_num_rows($result) == 0 )
{
echo "No Existe el usuario <br/>";
echo "<script type = 'text/javascript'>
alert ('El Usuario No existe en la Base de Datos');
window.location='index.php';
</script>";

}
else
{
echo "El usuario Si Existe";
}
$reg = mysql_fetch_array($result, MYSQL_ASSOC);
echo $reg["id"];
echo $reg["nombre"]."<br/>";
echo $reg["user"]."<br/>";
echo $reg["pass"]."<br/>";
?>

********************

Siempre mysql_num_rows($result) resulta siendo igual a Cero, aunque el usuario realmente exista.

********************

El código del 'index.php' es:

--------

<HTML>
<HEAD>
<TITLE>Logeo de Usuario</TITLE>
</HEAD>
<BODY>
<form name="form" action="logeo.php" method="post">
<h2>Ingrese sus Datos:</h2>
Usuario: &nbsp; &nbsp; <input type="text" name="usuario">
<br>
Password: &nbsp; &nbsp; <input type="password" name="pass" >
<br>
<br>
<input type="submit" value="Ingresar" title="Ingresar">
</form>
</BODY>
</HTML>

********************

********************

El código de 'conexión.php' es:

----

<?php
$conexión = mysql_connect ("localhost", "root", "");
$bd = mysql_select_db("prueba_acceso");
// *************** Declaración de Funciones *************** //
function mensaje_inicial()
{
echo "BIENVENIDOS - ESTA ES UNA DEMOSTRACIÓN";
}
?>

********************

Gracias de antemano.

1 respuesta

Respuesta
1

Haz un echo de $sql para ver lo que realmente ejecuta el sistema

Gracias. El problema era que en el select ($sql = "SELECT * FROM usuarios WHERE user = ' ".$_POST["usuario"]." ' ";) estaba dejando un espacio demás antes y otro demás después en el punto en donde se coloca ".$_POST["usuario"].".

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas