Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/02/2011, 14:07
yooom
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 15 años, 9 meses
Puntos: 4
Información buscador en tiempo real

hola chic@s estoy buscando un buscador en tiempo real esto es todo lo que eh podido encontrar si sabeis aqui estoy para apoyar y para dar con la respuesta saludos.

Código PHP:


<html> 

<
head> 
<!-- 
Buscador en JavaScript --> 
<
SCRIPT LANGUAGE='JavaScript'> 
var 
numeroPaginas=10; //PAGINAS TOTALES 
var numeroDatos=4;     //DATOS POR PAGINA (descr,pal clave, link, titulo) 
var baseDatos=new Array(numeroPaginas); 
for (
i=0; i<numeroPaginas; i++) //ES PARA CREAR LOS CUATRO DATOS DE CADA PAGINA 
{ baseDatos=new Array(numeroDatos); } 
<!-- 
Creación de la base de datos --> 
baseDatos[0][0]="http://dalila.sip.ucm.es/miembros/olga/colores"; 
baseDatos[0][1]="Colores RGB"; 
baseDatos[0][2]="El propósito de esta página es mostrarte cómo especificar colores uniformes en HTML"; 
baseDatos[0][3]="html,colores,RGB"; 
<!-- --> 
baseDatos[1][0]="http://dalila.sip.ucm.es/miembros/olga/dimensionado"; 
baseDatos[1][1]="Dimensionado de Imágenes"; 
baseDatos[1][2]="Incluir imágenes en una página web es muy sencillo"; 
baseDatos[1][3]="imagen,jpg,jpeg,gif,html"; 
<!-- --> 
baseDatos[2][0]="http://dalila.sip.ucm.es/miembros/olga/tablas"; 
baseDatos[2][1]="Las Tablas en HTML"; 
baseDatos[2][2]="Las tablas son uno de los elementos más versátiles de HTML. Permiten mostrar la información de una manera compacta y clara."; 
baseDatos[2][3]="fila,columna,celda,tabla,html"; 
<!-- --> 
baseDatos[3][0]="http://dalila.sip.ucm.es/miembros/olga/form"; 
baseDatos[3][1]="Los Formularios en HTML"; 
baseDatos[3][2]="HTML permite emplear los llamados formularios, para que el usuario pueda enviar información hacia el servidor."; 
baseDatos[3][3]="formularios,validacion,javascript,html"; 
<!-- --> 
baseDatos[4][0]="http://dalila.sip.ucm.es/miembros/olga/frames"; 
baseDatos[4][1]="Los Frames en HTML"; 
baseDatos[4][2]="El uso de marcos (frames) es una técnica muy utilizada en la actualidad."; 
baseDatos[4][3]="frame,marco,target,html"; 
<!-- --> 
baseDatos[5][0]="http://dalila.sip.ucm.es/miembros/olga/enlaces"; 
baseDatos[5][1]="Marcos y Enlaces"; 
baseDatos[5][2]="Si tienes algo de experiencia en esto de la navegación por Internet, te habrás dado cuenta de que en algunas páginas los marcos pueden anidarse interminablemente."; 
baseDatos[5][3]="marcos,enlaces,target,html"; 
<!-- --> 
baseDatos[6][0]="http://dalila.sip.ucm.es/miembros/olga/mapas"; 
baseDatos[6][1]="Ejemplo de Mapa"; 
baseDatos[6][2]="En HTML, se denomina mapa a la imagen utilizada para enlazar con varias páginas, yendo a una u otra según la zona sobre la que se pulse el ratón."; 
baseDatos[6][3]="mapa,imagen,html"; 
<!-- --> 
baseDatos[7][0]="http://dalila.sip.ucm.es/miembros/olga/javas"; 
baseDatos[7][1]="Ejemplos de JavaScript"; 
baseDatos[7][2]="Aquí podrás encontrar algunas aplicaciones de JavaScript para que puedas mejorar la presentación de tus páginas web." 
baseDatos[7][3]="scripts,ventanas,scrolls,eventos,javascript"; 
<!-- --> 
baseDatos[8][0]="http://dalila.sip.ucm.es/miembros/basico"; 
baseDatos[8][1]="Nociones Básicas de JavaScript"; 
baseDatos[8][2]="En esta página encontrarás las nociones básicas sobre JavaScript que necesitas para mejorar tus páginas web."; 
baseDatos[8][3]="variables,bucles,funciones,eventos,cajas,arrays,javascript"; 
<!-- --> 
baseDatos[9][0]="http://dalila.sip.ucm.es/miembros/olga/arrays"; 
baseDatos[9][1]="Los Arrays en JavaScript"; 
baseDatos[9][2]="Los arrays son un elemento extremadamente importante en cualquier lenguaje de programación."; 
baseDatos[9][3]="arrays,arrays densos,arrays bidimensionales,javascript"; 
<!-- --> 

var 
sinAcento=new Array('a','e','i','o','u'); 
var 
conAcento=new Array('á','é','í','ó','ú'); 
var 
entradasResultado=""; 
var 
paginaResultados=""; 

function 
prepararPalabra(palabra) //PONE LA PALABRA EN MINUSCULAS Y SIN TILDES 
{ var resultado=""; var longitud; //DEVUELVE EL REULTADO 
resultado=palabra.toLowerCase(); 
longitud=resultado.length; 
for (
i=0; i<5; i++) 
{ 
posicion=resultado.indexOf(conAcento); 
while (
posicion!=-1) 
{ 
resultado=resultado.substring(0,posicion)+sinAcento+resultado.substring(posicion+1,longitud); 
posicion=resultado.indexOf(conAcento);} 
} 
return 
resultado; 
} 

function 
buscarPalabra(palabra,desde) //SI ENCUENTRA LA PALABRA DESDE DESDE EN ALGUNA BASEDATOS 
{ var indice=-1; //MODIFICA EL INDICE CON EL Nº DE BASEDATOS 
for (i=desde; i<numeroPaginas; i++) //DEVUELVE EL INDICE EN NUMERO 
if (baseDatos[0].search(palabra)!=-1 || baseDatos[1].search(palabra)!=-1 || 
baseDatos[2].search(palabra)!=-1 || baseDatos[3].search(palabra)!=-1) 
{ 
indice=i; 
break; } 
return 
indice; 
} 

function 
principioPagina(palabra,cantidad) //PRINCIPIO DE PAGINA 
{ paginaResultados+="<HTML><HEAD><TITLE>Resultados de la búsqueda</TITLE></HEAD>"+ 
"<BODY BGCOLOR='#FFFFFF'><FONT FACE='helvetica'><CENTER>"+ 
"<FONT SIZE=+2><B>Resultados de la búsqueda</B></FONT><HR NOSHADE></CENTER>"; 
if (
cantidad==0) 
paginaResultados+="<P>Lo sentimos, no se han obtenido resultados para la palabra " 
else paginaResultados+="<P>Se ha(n) encontrado "+cantidad+" resultado(s) relacionados con "; 
paginaResultados+="<FONT COLOR='#0000FF'><B>"+palabra+"</B></FONT>.<BR>" 
} 

function 
anyadirEntrada(posicion) //PONE UN RESULTADO (TITULO+BR+DESCR) 
{ entradasResultado+="<P><A HREF='"+baseDatos[posicion][0]+".html'>"+baseDatos[posicion][1]+"</A><BR>" 
+baseDatos[posicion][2]; 
} 

function 
finalPagina() // EL FINAL DE LA PAGE 
{ paginaResultados+="<BR><BR><BR>(R)</BODY></HTML>"; 
} 

function 
buscador(palabra) //EL BUSCADOR COMPLETO 
{ numeroResultados=0; 
paginaResultados=""; 
entradasResultado=""; 

var 
buscada=prepararPalabra(palabra); 
var 
claveBuscada=new RegExp(buscada); 
indice=-1; 
do { 
indice=buscarPalabra(claveBuscada,indice+1); 
if (
indice!=-1) 
{ 
anyadirEntrada(indice); 
numeroResultados++; } 
} while (
indice!=-1) 
principioPagina(buscada,numeroResultados); 
paginaResultados+=entradasResultado; 
finalPagina(); 
mostrarVentana(paginaResultados); 
} 

function 
mostrarVentana(pagina) 
{ 
opciones="toolbar=0,status=0,menubar=0,"+ 
"resizable=0,scollbars=1,width=575,height=450"; 
nuevaVentana=window.open("","",opciones) 
nuevaVentana.document.close(); 
nuevaVentana.document.open(); 
nuevaVentana.document.write(pagina); 
} 
</SCRIPT> 

</head> 

<body> 
<FORM NAME='entrada'> 
<CENTER> 
<TABLE> 
<TR> 
<TD><FONT FACE='helvetica'><B>Palabra clave:</B></FONT></TD> 
<TD><INPUT TYPE='text' NAME='dato' SIZE=18></TD> 
<TD><FONT FACE='helvetica'><INPUT TYPE='button' VALUE='Buscar' 
onClick="buscador(document.entrada.dato.value)"></FONT></TD> 
<TD><FONT FACE='helvetica'><INPUT TYPE='button' VALUE='Borrar' 
onClick="document.entrada.dato.value=''"></FONT></TD> 
</TR> 
</TABLE> 
</FORM> 

</body> 

</html>