Foros del Web » Programando para Internet » PHP »

Buscador PHP

Estas en el tema de Buscador PHP en el foro de PHP en Foros del Web. Hola a todos!! Tengo un problema con un buscador en PHP para mi web. Hace poco vi un post [URL="http://www.forosdelweb.com/f18/aporte-como-hacer-buscador-sencillo-usando-php-mysql-632623/"]http://www.forosdelweb.com/f18/aporte-como-hacer-buscador-sencillo-usando-php-mysql-632623/[/URL] geeeeeeenial, en el que se ...
  #1 (permalink)  
Antiguo 20/01/2010, 02:37
 
Fecha de Ingreso: enero-2010
Mensajes: 5
Antigüedad: 14 años, 3 meses
Puntos: 0
Buscador PHP

Hola a todos!!

Tengo un problema con un buscador en PHP para mi web.
Hace poco vi un post [URL="http://www.forosdelweb.com/f18/aporte-como-hacer-buscador-sencillo-usando-php-mysql-632623/"]http://www.forosdelweb.com/f18/aporte-como-hacer-buscador-sencillo-usando-php-mysql-632623/[/URL] geeeeeeenial, en el que se explicaba de manera muy sencilla como implementarlo.

Pues bien, lo adapté a mi base de datos y perfecto. Pero me he dado cuenta de una cosa...si busco por TAGS, la primera foto que tengo almacenada, no me aparece...no me muestra ningun dato de ella. En cam del resto sí.

Muy raro todo...a ver si alguien se le ocurre donde puede estar el problema.

GRACIAS!!!

Aquí teneis la tabla FOTOS en la que se realiza la búsqueda
Cita:
CREATE TABLE fotos(
id SERIAL NOT NULL,
nombre VARCHAR(25) NOT NULL,
nombre_archivo VARCHAR(100) NOT NULL,
descripcion TEXT NULL,
ancho_web FLOAT(6,2) NOT NULL,
alto_web FLOAT(6,2) NOT NULL,
ancho_impresion FLOAT(6,2) NOT NULL,
alto_impresion FLOAT(6,2) NOT NULL,
tamanyo_web INTEGER NOT NULL,
tamanyo_impresion INTEGER NOT NULL,
visitas INTEGER NOT NULL default 0,
descargas INTEGER NOT NULL default 0,
fecha_subida VARCHAR(30) NOT NULL,
fotografo_nombre VARCHAR(25) NULL,
fotografo_apellidos VARCHAR(100) NULL,
precio_web FLOAT(6,2) NOT NULL,
precio_impresion FLOAT(6,2) NOT NULL,
tags TEXT NULL,
id_subcat VARCHAR(50) NOT NULL,
baja BOOL NOT NULL default 0,

CONSTRAINT cp_fotos PRIMARY KEY (id),
CONSTRAINT ca_fotos_categoria FOREIGN KEY (id_subcat)
REFERENCES categoria
ON DELETE RESTRICT ON UPDATE CASCADE,
FULLTEXT KEY full_buscador (descripcion, tags)

)ENGINE=MyISAM;


Y aquí el código PHP

Cita:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>

<form name="buscar" action="<?php $_SERVER['PHP_SELF'] ?>" method="get">
Buscar: <input type="text" size="50" value="<?php echo $_GET['frase']; ?>" name="frase" />
<input type="submit" name="buscar" value="Buscar" />
</form>

<?php
require ('conexion.php');
// verificamos que el formulario haya sido enviado
if(isset($_GET['buscar']) && $_GET['buscar'] == 'Buscar'){
$frase = addslashes($_GET['frase']);
// hacemos la consulta de busqueda
$sqlBuscar = mysql_query("SELECT id, descripcion, tags,
MATCH (descripcion, tags)
AGAINST ('$frase' IN BOOLEAN MODE) AS coincidencias
FROM fotos
WHERE MATCH (descripcion, tags)
AGAINST ('$frase' IN BOOLEAN MODE)
ORDER BY coincidencias DESC", $conex)
or die(mysql_error());
$totalRows = mysql_num_rows($sqlBuscar);
// Enviamos un mensaje
// indicando la cantidad de resultados ($totalRows)
// para la frase buscada ($frase)
if(!empty($totalRows)){
echo stripslashes("<p>Su b&uacute;squeda arroj&oacute; <strong>$totalRows</strong> resultados para <strong>$frase</strong></p>");
// mostramos los resultados
while($row = mysql_fetch_array($sqlBuscar)){
$id=$row['id'];
echo "<strong><a href='imagenes.php?id=".$id.">$row[tags]</a>:</strong> <em>Coincidencias: ". round($row['coincidencias']) ."</em><br />";
echo "<p>".substr(strip_tags($row['descripcion']), 0, 255)."...</p>";
}
}
// si se ha enviado vacio el formulario
// mostramos un mensaje del tipo Oops...!
elseif(empty($_GET['frase'])){
echo "Debe introducir una palabra o frase.";
}
// si no hay resultados
// otro mensaje del tipo Oops...!
elseif($totalRows == 0){
echo stripslashes("Su busqueda no arrojo resultados para <strong>$frase</strong>");
}
}
?>

</body>
</html>
A ver si tengo suerte
  #2 (permalink)  
Antiguo 21/01/2010, 02:45
 
Fecha de Ingreso: enero-2010
Mensajes: 5
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Buscador PHP

Muchas gracias. Ya he encontrado la solución...

Un abrazo a todos!

Etiquetas: buscadores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:55.