Filtro de busquedas (AYUDA)
Publicado por Agustin (6 intervenciones) el 11/03/2019 21:15:56
Estoy queriendo filtrar aún mas los resultados que arroja un buscador hecho con method get. Pero el navegador da el siguiente error:
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\Empleos\empleos\resultados.php on line 57
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\Empleos\empleos\resultados.php on line 58
El codigo es el siguiente:
Escucho recomendaciones/soluciones. desde ya muchas gracias.
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\Empleos\empleos\resultados.php on line 57
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\Empleos\empleos\resultados.php on line 58
El codigo es el siguiente:
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php require_once('conexion.php');
$menu='resultados';
//Creamos las variables
$consultados='';
$parametros='';
//Creamos el primer parametro en caso de que exista
if (isset($_POST['xcategoria'])) {
if ($_POST['xcategoria']!='') $parametros.="categoria=".$_POST['xcategoria'].'&';
}
//Creamos el segundo parametro en caso de que exista
if (isset($_POST['xpuesto'])) {
if ($_POST['xpuesto']!='') $parametros.="puesto=".$_POST['xpuesto'].'&';
}
//Dividimos los parametros
$porciones=explode('&',$parametros);
//Contamos la cant de parametros
$cant=count($porciones)-1;
//Si hay mas de 1 parametro los unimos con AND para mysql
if ($cant>1){
for ($i=0; $i < $cant; $i++) {
$consultados.= $porciones[$i].' AND ';
}
} else {
$consultados.= $porciones[0].' AND ';
}
//Eliminamos el AND del final
$consultados = substr ($consultados, 0, strlen($consultados) - 4);
//Obtenemos algo como columna1=dato1 AND columna2=dato2
$cadena=trim($_GET['buscar']);
$consulta='';
$partes=explode(' ',$cadena);
$cantidad=count($partes);
for ($i=0; $i < $cantidad; $i++) {
$consulta.= 'ciudad LIKE '.formatearcadena('%'.$partes[$i].'%','text').' AND ';
}
$consulta=substr($consulta,0,-4);
//Seleccionar tabla m_posts
$accion_post="SELECT * FROM e_posts WHERE $consulta AND $consultados ORDER BY visitas DESC";
$consulta_post=mysqli_query($conexion,$accion_post);
$datos_post=mysqli_fetch_assoc($consulta_post);
$cantidad_post=mysqli_num_rows($consulta_post);
?>
Escucho recomendaciones/soluciones. desde ya muchas gracias.
Valora esta pregunta
0