Código PHP:
<?php
header('Content-Type: text/html; charset=UTF-8');
$usuario = $_GET["busca"];
if (strlen($usuario) >= 2) {
$mysqli = new mysqli("l", "r", "pass", "bd");
if (mysqli_connect_errno()) {
echo("Ha ocurrido un error.");
exit();
}
$mysqli->set_charset("utf8");
$sentencia = "SELECT nombre FROM tabla WHERE nombre LIKE '%".$usuario."%' ORDER BY nombre asc";
$resultado = $mysqli->query($sentencia);
$contador = 0;
if ($resultado->num_rows > 0) {
while ($row = $resultado->fetch_array(MYSQLI_ASSOC)) {
if($contador == 0) {
echo '<ol><li class="seleccionado">' .ResaltarSubStr($row['nombre'], $usuario). '</li>';
} else {
echo '<li class="noseleccionado">' .ResaltarSubStr($row['nombre'], $usuario). '</li>';
}
$contador += 1;
}
echo "</ol>";
} else {
echo '<span>Sin resultados</span>';
}
$resultado->free();
$mysqli->close();
}
// ========= funciones ===========
function ResaltarSubStr($nombre, $usuario) {
$patron = "/\b($usuario)+(\w)/i";
$marca = preg_replace($patron, "<strong>$1</strong>$2", $nombre);
return $marca;
}
// ====================
?>