Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/12/2012, 13:53
Avatar de patilanz
patilanz
 
Fecha de Ingreso: enero-2012
Mensajes: 880
Antigüedad: 13 años, 2 meses
Puntos: 29
Buscador personaliado

Hola estoy intentado crear mi propio buscador personalizado pero tengo el siguiente problema en esta funcion:

Código Javascript:
Ver original
  1. function allow_array(datos){
  2.     var findings=new Array(0);
  3.     for(i=0;i<perfiles.length;i++){
  4.         perfil=perfiles[i].split('|');
  5.         for(m=0;m<datos.length;m++){
  6.             if(search_type==search_user){
  7.                 if(perfil[0].indexOf(datos[m])!=-1){
  8.                     findings[findings.length]=perfiles[i];
  9.                     break;
  10.                 }
  11.             }else if(search_type==search_email){
  12.                 if(perfil[1].indexOf(datos[m])!=-1){
  13.                     findings[findings.length]=perfiles[i];
  14.                     break;
  15.                 }
  16.             }else if(search_type==search_name){
  17.                 if(perfil[2].indexOf(datos[m])!=-1){
  18.                     findings[findings.length]=perfiles[i];
  19.                     break;
  20.                 }
  21.             }else if(search_type==search_url){
  22.                 if(perfil[3].indexOf(datos[m])!=-1){
  23.                     findings[findings.length]=perfiles[i];
  24.                     break;
  25.                 }
  26.             }else if(search_type==search_sexo){
  27.                 if(perfil[4].indexOf(datos[m])!=-1){
  28.                     findings[findings.length]=perfiles[i];
  29.                     break;
  30.                 }
  31.             }else if(search_type==search_anos){
  32.                 if(perfil[5].indexOf(datos[m])!=-1){
  33.                     findings[findings.length]=perfiles[i];
  34.                     break;
  35.                 }
  36.             }
  37.         }
  38.     }
  39.     var mensaje='';
  40.     if(findings.length<1){
  41.         mensaje+='No encontrado';
  42.     }else{
  43.         for(l=0;l<findings.length;l++){
  44.             mensaje+=findings[l];
  45.         }
  46.     }
  47.     document.getElementById('p').innerHTML=mensaje;
  48.    
  49. }


El argumento que recibe la funcion es un array con las palabras buscadas por el usuario.
La variable global search_type se crea antes en otras funciones.

La variable findings es un array que contiene la base de datos. Es algo como esto:

findings[0]='user|name|email|url|etc...';
findings[1]='user2|name2|email2|url2|etc...';

El problema esta cuando por ejemeplo en el nombre aparecen dos o mas coninciedencias.. poes el resultado es no encontrado cuando hay muchas coincidencias..

No se porque me pasa esto??

Saludos