I'm trying to get the result of the following sql query, but it doesn't give me any results and I placed the problem at the end of the query when I concatenate the variable.
$consulta = 'SELECT tipo.nombre AS tipo, recetas.id_tipo AS id_Tipo, usuarios.nombre AS usuarios, recetas.id_usuario AS id_Usuario, recetas.nombre AS recetas, recetas.id AS id_Receta, recetas.preparacion, recetas.fecha_creacion, recetas.imagen, recetas.inf_nutricional, recetas.ingredientes FROM tipo, usuarios, recetas WHERE recetas.id_tipo = tipo.id AND recetas.id_usuario = usuarios.id AND recetas.nombre LIKE \'%' . $nombre . '%\'';
--- MODIFICATION ---
I put the whole function
function getByName($nombre) {
$consulta = 'SELECT tipo.nombre AS tipo, recetas.id_tipo AS id_Tipo, usuarios.nombre AS usuarios, recetas.id_usuario AS id_Usuario, recetas.nombre AS recetas, recetas.id AS id_Receta, recetas.preparacion, recetas.fecha_creacion, recetas.imagen, recetas.inf_nutricional, recetas.ingredientes FROM tipo, usuarios, recetas WHERE recetas.id_tipo = tipo.id AND recetas.id_usuario = usuarios.id AND recetas.nombre LIKE \'%' . $nombre . '%\'';
$resultado = mysqli_query($this->conectar->getConexion(), $consulta);
$array["items"] = array();
while($row = mysqli_fetch_assoc($resultado)) {
$arrayAsociativo = [
"idTipo" => $row["id_Tipo"],
"tipo" => $row["tipo"],
"idUsuario" => $row["id_Usuario"],
"usuario" => $row["usuarios"],
"idReceta" => $row["id_Receta"],
"receta" => $row["recetas"],
"preparacion" => $row["preparacion"],
"fechaCreacion" => $row["fecha_creacion"],
"imagen" => $row["imagen"],
"infNutricional" => $row["inf_nutricional"],
"ingredientes" => $row["ingredientes"]
];
array_push($array["items"], $arrayAsociativo);
}
return $array;
}
Using PDO , you can do something like:
With mysqli_query , you can pass the variable to the query in two ways, first:
And the second building a variable: