I have a problem with a query in php and mysql, I do not know why it shows the following error in two lines of my code, it shows it in line 35 and line 45:
Warning: mysqli_num_rows () expects parameter 1 to be mysqli_result, boolean given in C: \ wamp64 \ www \ Seccion 15 valija \ php \ buscar.php on line 35
Warning: mysqli_fetch_array () expects parameter 1 to be mysqli_result, boolean given in C: \ wamp64 \ www \ Section 15 valise \ php \ buscar.php on line 45
This is my line 35
$ rows = mysqli_num_rows ($ query);
and this is line 45
while ($ results = mysqli_fetch_array ($ query))
this is the file where I have the code:
<?php
require('conexion.php');
//Variable de búsqueda
$consultaBusqueda = $_POST['valorBusqueda'];
//Filtro anti-XSS
$caracteres_malos = array("<", ">", "\"", "'", "/", "<", ">", "'", "/");
$caracteres_buenos = array("& lt;", "& gt;", "& quot;", "& #x27;", "& #x2F;", "& #060;", "& #062;", "& #039;", "& #047;");
$consultaBusqueda = str_replace($caracteres_malos, $caracteres_buenos, $consultaBusqueda);
//Variable vacía (para evitar los E_NOTICE)
$mensaje = "";
//Comprueba si $consultaBusqueda está seteado
if (isset($consultaBusqueda)) {
//Selecciona todo de la tabla mmv001
//donde el nombre sea igual a $consultaBusqueda,
//o el apellido sea igual a $consultaBusqueda,
//o $consultaBusqueda sea igual a nombre + (espacio) + apellido
$consulta = mysqli_query($conn, "SELECT * FROM valija_nueva
WHERE CONVERT(nombre_empresa USING utf8) COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
OR quien_envia COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
OR autorizacion COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
OR CONVERT(nombre_empresa USING utf8) COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
OR CONVERT(junta USING utf8) COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
OR fecha_contrato COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
OR fecha_entrega COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
OR fecha_recepcion COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
OR CONVERT(nombre_sindicato USING utf8) COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
OR CONCAT( CONVERT(nombre_empresa USING utf8),' ',quien_envia) COLLATE UTF8_SPANISH_CI LIKE '%$consultaBusqueda%'
");
//Obtiene la cantidad de filas que hay en la consulta
$filas = mysqli_num_rows($consulta);
//Si no existe ninguna fila que sea igual a $consultaBusqueda, entonces mostramos el siguiente mensaje
if ($filas === 0) {
$mensaje = "<p>No hay ningún usuario con ese nombre y/o apellido</p>";
} else {
//Si existe alguna fila que sea igual a $consultaBusqueda, entonces mostramos el siguiente mensaje
echo 'Resultados para <strong>'.$consultaBusqueda.'</strong>';
//La variable $resultado contiene el array que se genera en la consulta, así que obtenemos los datos y los mostramos en un bucle
while($resultados = mysqli_fetch_array($consulta)) {
$no_control = $resultados['no_control'];
$contenido_valija = nl2br($resultados['contenido_valija']);
$fecha_recepcion = $resultados['fecha_recepcion'];
$quien_envia = $resultados['quien_envia'];
$mensajero = $resultados['mensajero'];
$otro = $resultados['mensajero_temporal'];
$origen = $resultados['origen'];
$destino = $resultados['destino'];
$autorizacion = $resultados['autorizacion'];
$nombre_empresa = nl2br($resultados['nombre_empresa']);
$junta = nl2br($resultados['junta']);
$nombre_sindicato = nl2br($resultados['nombre_sindicato']);
$tipo_documento = $resultados['tipo_documento'];
$rubrica = $resultados['rubrica'];
$fecha_contrato = $resultados['fecha_contrato'];
$firma_secgral = $resultados['firma_secgral'];
$devolucion = $resultados['devolucion'];
$fecha_entrega = $resultados['fecha_entrega'];
$voletin = $resultados['voletin'];
$observacion = $resultados['observacion'];
$estatus = $resultados['estatus'];
$usuario = $resultados['usuario'];
$revisiones = $resultados['revisiones'];
//Output
$mensaje .= '
<div class="table-responsive">
<link rel="stylesheet" href="estilos/diseño.css">
<table class="table table-bordered">
<tbody>
<tr>
<td><strong>Numero de control</strong></td>
<td><strong>Contenido de la valija</strong> </td>
<td><strong>Fecha de recepcion de documentos</strong></td>
<td><strong>Quien envio esta valija</strong></td>
<td><strong>Mensajero</strong></td>
<td><strong>Mensajero temporal</strong></td>
<td><strong>Origen</strong></td>
<td><strong>Destino</strong></td>
<td><strong>Valija autorizada por</strong></td>
<td><strong>Nombre de la empresa</strong></td>
<td><strong>Junta</strong></td>
<td><strong>Nombre del sindicato</strong></td>
<td><strong>Tipo de documento</strong></td>
<td><strong>Rubrica:</strong></td>
<td><strong>Fecha del contrato</strong></td>
<td><strong>Firma del secretario general</strong></td>
<td><strong>Devolucion</strong></td>
<td><strong>Fecha de entrega de valija</strong></td>
<td><strong>Boletin</strong></td>
<td><strong>Observaciones</strong></td>
<td><strong>Estatus</strong></td>
<td><strong>Usuario</strong></td>
<td><strong>Revisiones</strong></td>
</tr>
<tr>
<td>' . $no_control . '</td>
<td width="500px" nowrap>' . $contenido_valija . '</td>
<td width="150px" nowrap>' . $fecha_recepcion . '</td>
<td width="150px" nowrap>' . $quien_envia . '</td>
<td width="150px" nowrap>' . $mensajero . '</td>
<td width="150px" nowrap>' . $otro . '</td>
<td width="150px" nowrap>' . $origen . '</td>
<td width="150px" nowrap>' . $destino . '</td>
<td width="150px" nowrap>' . $autorizacion . '</td>
<td width="500px" nowrap>' . $nombre_empresa . '</td>
<td width="500px" nowrap>' . $junta . '</td>
<td width="500px" nowrap>' . $nombre_sindicato . '</td>
<td width="150px" nowrap>' . $tipo_documento . '</td>
<td width="150px" nowrap>' . $rubrica . '</td>
<td width="150px" nowrap>' . $fecha_contrato . '</td>
<td width="150px" nowrap>' . $firma_secgral . '</td>
<td width="150px" nowrap>' . $devolucion . '</td>
<td width="150px" nowrap>' . $fecha_entrega . '</td>
<td width="150px" nowrap>' . $voletin . '</td>
<td width="300px" nowrap>' . $observacion . '</td>
<td width="150px" nowrap>' . $estatus . '</td>
<td width="150px" nowrap>' . $usuario . '</td>
<td width="150px" nowrap>' . $revisiones . '</td>
</tr>
</tbody>
</table>
</div>';
};//Fin while $resultados
}; //Fin else $filas
};//Fin isset $consultaBusqueda
//Devolvemos el mensaje que tomará jQuery
echo $mensaje;
?>