Foros del Web » Programando para Internet » PHP »

Duda php busqueda recusrsiva en base de datos

Estas en el tema de Duda php busqueda recusrsiva en base de datos en el foro de PHP en Foros del Web. hola a todos espero que alguien pueda solucionarme este problemilla ,pues no e encontrado nada de info en la web. la cuestion es que quiero ...
  #1 (permalink)  
Antiguo 03/04/2013, 00:23
 
Fecha de Ingreso: abril-2013
Mensajes: 22
Antigüedad: 11 años
Puntos: 0
Pregunta Duda php busqueda recusrsiva en base de datos

hola a todos

espero que alguien pueda solucionarme este problemilla ,pues no e encontrado nada de info en la web.

la cuestion es que quiero realizar una busqueda(recurisiva) de un usuario en base de datos acces

pero dispongo de muchas bases de datos en diferentes directorios y subdirectorios

quiero realizar una busqueda que recorre todos los directorios y bd en busca de usuario.

ya e hecho un aplicación pareceida pero que busca en ficheros.

Código PHP:
function funcionRecursiva($path){

$aBuscar="tximino";

if(
$aBuscar!=""){
    
$longitud=strlen($aBuscar);//longitud de la palabra a buscar
    
$carpetas=scandir($path);//carpetas es un array

    
echo "<ul>";

    foreach (
$carpetas as $resultado) {
        if(
$resultado!="." && $resultado!=".." && $resultado!="Thumbs.db"){
            if(
is_file($path.$resultado)){//si lo encontrado es un fichero
          //capturamos su contenido
            
$contenido=file_get_contents($path.$resultado);
            echo 
"<li>".$path.$resultado."</li>";
            
            
//cambiamos un salto de linea por un espacio en blanco
            
$contenido=str_replace("\n"," ",$contenido);

            
//Y ahora, partimos el contenido por todo sus espacios vacios ( en blanco )
            
$palabras=explode(" ",$contenido);//$palabras será ahora un array que contendrá todas las palabras del archivo
            
echo "<pre>";//mostramos palabras
                  
echo print_r$palabras );
            echo 
"</pre>";


            for(
$i=0;$i<count($palabras);$i++){
                
                    if(
$palabras[$i]==$aBuscar){
                         echo 
"<font face='Courier New, Courier, monospace' size='+1'>
                                     Palabra hallada => en <b>"
.$resultado."</b></tt><br />";
                    }              
            
            }
          }
        }
        
    }
    echo 
"</ul>";
}

}

funcionRecursiva("carpeta/"); 
salu2 haber si alguien sabe algo
  #2 (permalink)  
Antiguo 03/04/2013, 00:59
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Duda php busqueda recusrsiva en base de datos

La logica seria similar pero en el momento que tienes un fichero debes comprobar si su extension es mdb, luego conectar con esa "bbdd", luego recorrer sus tablas y ejecutar la busqueda, la cual si no tines mas restriciones la tendrás que hacer sobre todas las tablas y todos los campos posibles...

Es decir la diferencia es que no podrás partir el fichero en palabras y buscar al usuario debes conectar con ODBC y ejecutar una o n consultas sql contra la bbdd.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 03/04/2013, 07:47
 
Fecha de Ingreso: abril-2013
Mensajes: 22
Antigüedad: 11 años
Puntos: 0
Respuesta: Duda php busqueda recusrsiva en base de datos

gracias por la respuesta me a venido muy bien

la conexion a acces
$conexion=odbc_connect ('DRIVER={Microsoft Access Driver (*.mdb)}; DBQ='$ruta, '', '');

y la consulta
$sql="select * from usuario where.....";
$busqueda=odbc_exec($conexion, $sql);

mas info:
http://www.desarrolloweb.com/articulos/ejemplo-conexion-php-access-dsn.html

Etiquetas: busqueda
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 08:26.