Problema en consulta SQL con PHP
Publicado por JuanMa (1 intervención) el 17/12/2015 15:58:41
Buenas tardes. Tengo la siguiente función en una clase de PHP, la cual, al pasarle un e-mail por parámetro, me debería de devolver un array con los datos del usuario al que pertenece dicho e-mail.
Sin embargo, me devuelve el array vacío. Si sustituyo "select * from buscadores where mail = '" . $mail . "'" por "select * from buscadores where mail = '[email protected]'" sí me devuelve el array relleno con los datos de ese usuario.
Es la primera vez que me pasa y no sé por qué, pues la sintaxis está escrita correctamente.
¿Alguien me puede ayudar? Gracias de antemano.
P.D.: He comprobado, mediante un alert de JavaScript, que la variable $mail tuviese información, por lo que por eso no es el fallo. Lo curioso es que si compruebas la variable $select a través de un alert, no muestra nada, es decir, ni aparece el alert siquiera.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public function devolver_usuario_concreto($mail)
{
//Creo una variable para almacenar la consulta.
$select = "select * from buscadores where mail = '" . $mail . "'";
//Ejecuto la consulta en la base de datos y guardo el resultado en otra variable.
$result = @mysql_query($select, $this -> conexion) or die("No se ha podido ejecutar la consulta correctamente.<br />" . mysql_error());
//Creo una array en el que almacenare los datos.
$datos = array();
//Creo una variable que me indique la fila de la tabla.
$filas = 0;
//Mientras que los registros (filas) de las tablas no lleguen al final...
while($campos = mysql_fetch_row($result))
{
//Por cada campo (columna) de la tabla...
for ($columnas = 0; $columnas < count($campos); $columnas++)
{
//Introduzco en el array el dato de un determinado campo en un determinado registro.
$datos[$filas][$columnas] = $campos[$columnas];
}
//Actualizo el numero de la fila.
$filas++;
}
//Libero datos de la memoria.
mysql_free_result($result);
//Devuelvo el array.
return $datos;
}
Sin embargo, me devuelve el array vacío. Si sustituyo "select * from buscadores where mail = '" . $mail . "'" por "select * from buscadores where mail = '[email protected]'" sí me devuelve el array relleno con los datos de ese usuario.
Es la primera vez que me pasa y no sé por qué, pues la sintaxis está escrita correctamente.
¿Alguien me puede ayudar? Gracias de antemano.
P.D.: He comprobado, mediante un alert de JavaScript, que la variable $mail tuviese información, por lo que por eso no es el fallo. Lo curioso es que si compruebas la variable $select a través de un alert, no muestra nada, es decir, ni aparece el alert siquiera.
Valora esta pregunta


0