Ver Mensaje Individual
  #18 (permalink)  
Antiguo 09/01/2009, 09:49
ambigus
 
Fecha de Ingreso: septiembre-2008
Mensajes: 221
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: [Aporte] Como hacer un buscador sencillo usando PHP y MySQL

Hola me presento, soy ambigus, me declaro novato y quiero decirte antes que nada, excelente aporte. Ahora bien me gustaría saber, acerca de tu aporte: Como hacer un Buscador sencillo, usando PHP y MySQL, puesto que quiero hacer uno para mi web. . Entonces me gustaría saber:

1. ¿Dónde inserto esto?:
Código:
<h1><a href=”<?php echo $_SERVER['PHP_SELF']; ?>”>Buscador - By RogerTM</a></h1>
<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>
a. En un HTML de la Index.html? (Página de inicio)?
b. En el archivo buscar.php?

2. Comprendo que esto forma parte del código buscar.php, pero ¿Cómo lleno las secciones: “localhost”,”root”,”******”?:
Código PHP:
<?php
// conectar al servidor
$server_link mysql_connect(”localhost”“root”*****);
if(!
$server_link){
die(
”Falló la Conexión “mysql_error());
}
3. Actualmente estoy trabajando en el servicio gratuito de gofreeserve.com, me gusta mucho y quiero desarrollar mi web ahi´. Entonces en la base de datos Mysql, tengo una que se denomina gofre_2656604_Prueba, puesto que mis datos son los siguientes:

Cuenta gratis de gofreeserve.com:
gofre_2656604
Contraseña: *******

En la base de datos he insertado el código de:
Código:
CREATE TABLE `noticias` (
`noticia_ID` int(11) NOT NULL auto_increment,
`noticiaTitulo` varchar(200) NOT NULL,
`noticiaNoticia` text NOT NULL,
PRIMARY KEY  (`noticia_ID`),
FULLTEXT KEY `buscador` (`noticiaTitulo`,`noticiaNoticia`)
) ENGINE=MyISAM;
Entonces, ¿Qué debo hacer para que me vaya funcionando?, en tu post planteas una explicación válida, pero debo decirte que no soy muy experto en estos temas, y me gustaría que me enseñarás.

4. Continuando con el archivo buscar.php, dices:
Código PHP:
// seleccionamos la base de datos
$db_selected mysql_select_db(”database”$server_link);
if(!
$db_selected){
die(
”No se pudo seleccionar la Base de Datos “mysql_error());

a. Acaso debo insertar mi base de datos: gofre_2656604 en donde dice: “database”, y listo?

5. En lo que sigue del código buscar.php, ¿No debo modificar nada más?:
Código PHP:
// varificamos que el formulario halla sido enviado
if(isset($_GET['buscar']) && $_GET['buscar'] == ‘Buscar’){
$frase addslashes($_GET['frase']);
// hacemos la consulta de busqueda
// ver explicación mas abajo
$sqlBuscar mysql_query(”SELECT noticiaTitulonoticiaNoticia,
MATCH (noticiaTitulonoticiaNoticia)
AGAINST (’$frase’ IN BOOLEAN MODE) AS coincidencias
FROM noticias
WHERE MATCH 
(noticiaTitulonoticiaNoticia)
AGAINST (’$frase’ IN BOOLEAN MODE)
ORDER BY coincidencias DESC”$server_link)
or die(
mysql_error());
$totalRows mysql_num_rows($sqlBuscar);
// Enviamos un mensaje
// indicando la cantidad de resultados ($totalRows)
// para la frase busada ($frase)
if(!empty($totalRows)){
echo 
stripslashes(<p>Su b&uacute;squeda arroj&oacute; <strong>$totalRows</strongresultados para <strong>$frase</strong></p>);
// mostramos los resultados
while($row mysql_fetch_array($sqlBuscar)){
echo 
<strong><a href=#'>$row[noticiaTitulo]</a>:</strong> <em>Coincidencias: “. round($row['coincidencias']) .”</em><br />”;
echo <p>.substr(strip_tags($row['noticiaNoticia']), 0255).”…</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>);
}
}
?> 
Ahora bien, me gustaría ir dando paso por paso, podrías porfavor ayudarme en esto?

Espero ansiosamente una respuesta.