Veremos cómo crear un buscador utilizando PHP y MySQL. El mismo consta de una base de datos, un formulario y un sencillo script escrito en PHP que realiza la búsqueda en la base de datos. Con algunas modificaciones, es posible realizar un buscador mucho más robusto, aunque el siguiente es ideal para realizar un buscador simple sin demasiadas exigencias.
Base de datos
Creamos una base de datos con tres campos: id, título y noticia.
CREATE TABLE `noticias` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`titulo` VARCHAR( 255 ) NOT NULL ,
`noticia` LONGTEXT NOT NULL
);
Código del buscador
En este ejemplo, tanto el formulario como el script PHP, se encuentran en la misma página:
<html>
<head>
<title>Buscador simple en PHP</title>
</head>
<body>
<form action="buscar.php" method="post">
Buscar: <input name="palabra">
<input type="submit" name="buscador" value="Buscar">
</form>
<?
if ($_POST[‘buscador’])
{
// Tomamos el valor ingresado
$buscar = $_POST[‘palabra’];
// Si está vacío, lo informamos, sino realizamos la búsqueda
if(empty($buscar))
{
echo "No se ha ingresado una cadena a buscar";
}else{
// Conexión a la base de datos y seleccion de registros
$con=mysql_connect("localhost","usuario","password");
$sql = "SELECT * FROM noticias WHERE noticia like ‘%$buscar%’ ORDER BY id DESC";
mysql_select_db("base_de_datos", $con);
$result = mysql_query($sql, $con);
// Tomamos el total de los resultados
$total = mysql_num_rows($result);
// Imprimimos los resultados
if ($row = mysql_fetch_array($result)){
echo "Resultados para: <b>$buscar</b>";
do {
?>
<p><b><a href="noticia.php?id=<?=$row[‘id’];?>"><?=$row[‘titulo’];?></a></b></p>
<?
} while ($row = mysql_fetch_array($result));
echo "<p>Resultados: $total</p>";
} else {
// En caso de no encontrar resultados
echo "No se encontraron resultados para: <b>$buscar</b>";
}
}
}
?>
</body>
</html>
En caso de querer ubicar el formulario en otra página diferente solo debemos copiar el código del mismo:
<form action="buscar.php" method="post">
Buscar: <input name="palabra">
<input type="submit" name="buscador" value="Buscar">
</form>
Como mencionamos el comienzo de este artículo, el buscador sirve para realizar búsquedas simples en una base de datos. Con algunas modificaciones es posible realizar un buscador mucho más potente y personalizado a las necesidades del programador.