SQL - Problema con mysql + php

 
Vista:
sin imagen de perfil
Val: 22
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Problema con mysql + php

Publicado por John (9 intervenciones) el 22/01/2021 13:13:17
Hola buenas, estoy intentando mediante una consulta y sesiones (con _get y _post) acceder a la base de datos para consultar mis propios datos de usuario que se ha logeado pero me salta este error: " mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given".

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
28
29
30
31
32
33
34
35
36
37
38
<?php
session_start();
 
if(!isset($_SESSION['tipo']))
{
	$_SESSION['tipo']="invitado";
}
echo "Tipo de usuario: " . $_SESSION['tipo'] . "<br><br>\n";
 
$servidor="127.0.0.1";
$usuario_bd="root";
$clave_bd="";
$basedatos="tienda";
$tabla1 = "clientes";
$usuario=$_GET['usuario'];
 
 
$sql = "SELECT num_cliente, dni, nombre FROM $tabla1 where nombre = $usuario";
$conexion=mysqli_connect($servidor,$usuario_bd,$clave_bd,$basedatos);
mysqli_set_charset($conexion,"utf8");
$resultado = mysqli_query($conexion,$sql);
 
 
 
while( ($fila=mysqli_fetch_array($resultado)) )
{
 
	echo "<hr>";
 
	echo "Numero Cliente:". $fila['num_cliente'] . "<br>";
 
	echo "DNI:".$fila['dni'] . "<br>";
 
	echo "Nombre:". nl2br($fila['nombre']) . "<br>";
}
 
 
?>

En $usuario se guarda correctamente el usuario logeado, pero por algún motivo que desconozco, la sentencia sql me falla en el where. En la base de datos tengo un usuario resgistrado con el mismo nombre que se pasa por el _get, pero no funciona :S.

A ver si podéis ayudarme, muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Problema con mysql + php

Publicado por anonymous (43 intervenciones) el 22/01/2021 13:29:35
Lo primero es que verifiques que esa misma consulta te funciona directamente en MySQL, una vez que compruebes que funcione, habilitar el modo debug en PHP para analizar bien.

Pero por lo pronto ese error se refiere a que si te esta regresando un boolean, es porque tienes un error en tu consulta, revisala primero en la consola de mysql.

Y por lo demás, intenta separar un poco ese código, tienes todo mezclado a modo de código espagueti, y hacer mantenimiento a un aplicativo en esas condiciones es desastroso, te sugiero leer un poco de MVC e implementarle.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 22
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Problema con mysql + php

Publicado por John (9 intervenciones) el 22/01/2021 13:33:01
Encontré el error, me faltaban las comillas simples en $usuario...

1
$sql = "SELECT num_cliente, dni, nombre FROM $tabla1 where nombre = '$usuario'";

Así es como funciona.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar