20/11/2011, 16:48
|
(Desactivado) | | Fecha de Ingreso: septiembre-2011
Mensajes: 133
Antigüedad: 13 años, 2 meses Puntos: 1 | |
Respuesta: Incovenientes Amigos me sigue sin funcionar ¿Que hago?, necesito que al escribir lo que estoy buscando me salga sugerencia abajo (Igual a mercado libre), para eso necesito que me lea la tabla (Articulos) de mi base de datos mysql (openlatino)
Aca les dejo el php entero:
<!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>Cabecera</title>
</head>
<body>
<td width="612" height="28" align="right">
<form id="busqueda" name="busqueda" method="post" align="center" action="publicaciones.php">
<form id="form3" name="form3" method="post" align="center" action="busquedaavanzada.php">
<div align="center">¿Que estas buscando?
<input type="text" name="busqueda" size="50" />
<input name="Submit2" type="submit" class="botones1" value="Buscar" />
<input name="Submit3" type="submit" class="botones1" value="Busqueda avanzada" />
</div>
</form>
<div align="center">
<?php
//CADENA DE CONEXION
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'lipo';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error de conexion con la base de datos, a la brevedad sera solucionado');
$dbname = 'openlatino';
mysql_select_db($dbname);
//DEBO PREPARAR LOS TEXTOS QUE VOY A BUSCAR (SI EXISTE LA CADENA)
if ($busqueda != ''){
//CUENTA EL NUMERO DE PALABRAS
$trozos=explode(" ",$busqueda);
$numero=count($trozos);
if ($numero==1) {
//SI SOLO HAY UNA PALABRA DE BUSQUEDA SE ESTABLECE UNA INSTRUCCION CON LIKE
$cadbusca="SELECT TITULO FROM ARTICULOS WHERE VISIBLE =1
AND (TITULO LIKE '%$busqueda%' OR TITULO LIKE '%$busqueda%') LIMIT 50";
} elseif ($numero>1) {
//SI HAY UNA FRASE SE UTILIZA EL ALGORTIMO DE BUSQUEDA AVANZADO DE MATCH AGAINST
//BUSQUEDA DE FRASES CON MAS DE UNA PALABRA Y UN ALGORITMO ESPECIALIZADO
$cadbusca="SELECT TITULO, MATCH ( TITULO )
AGAINST ( '$busqueda' ) AS Score FROM ARTICULOS WHERE
MATCH ( TITULO ) AGAINST ( '$busqueda' ) ORDER BY Score DESC LIMIT 50";
}
$result=mysql("openlatino", $cadbusca);
While($row=mysql_fetch_object($result))
{
//MOSTRAMOS LOS TITULOS DE LOS ARTICULOS O LO QUE DESEEMOS
$titulo=$row->TITULO;
$titulo=$row->TITULO;
echo $titulo." - ".$titulo."<br>";
}
}
?>
</div>
</body> <!-- 2.- el body al sitio -->
</html>
Última edición por lokoguille2005; 20/11/2011 a las 16:55
Razón: Extra
|