Foros del Web » Programando para Internet » PHP »

Motor de busqueda de datos en un fichero

Estas en el tema de Motor de busqueda de datos en un fichero en el foro de PHP en Foros del Web. Construyo una página web con un formulario junto con un motor de búsqueda para encontrar datos en un fichero. Este fichero lo hago con el ...
  #1 (permalink)  
Antiguo 12/05/2005, 17:19
Avatar de Laura25  
Fecha de Ingreso: abril-2005
Mensajes: 121
Antigüedad: 19 años
Puntos: 0
Motor de busqueda de datos en un fichero

Construyo una página web con un formulario junto con un motor de
búsqueda para encontrar datos en un fichero.
Este fichero lo hago con el bloc de notas,y tiene los campos de nombre , apellidos y edad.

Entonces hay un formulario,se selecciona el campo y despues se escribe lo que se quiere buscar.
Entronces se abre el fichero de texto y busca una coincidencia con el campo correpondiente que se haya especificado en el formulario. Por ejemplo, si se seleccionó en el formulario la opción edad, y se puso en el 'Texto a buscar' 24, debería buscar aquellas personas del fichero que tengan
edad 24.
Y entonces se genera una página web dinámica para mostrar los resultados en forma de tabla.

Necesito un poco de orientación con esto y hacerlo en php
  #2 (permalink)  
Antiguo 12/05/2005, 17:24
Avatar de dwaks  
Fecha de Ingreso: agosto-2002
Ubicación: Panamá
Mensajes: 962
Antigüedad: 21 años, 8 meses
Puntos: 15
Bueno la orientacion que te doy es que los archivos de texto es la peor decicion que puedes elegir para ese tipo de informacion y desarrollo.

Para que sea mejor utiliza una base de datos en mysql y haces tus respectivas tablas ya que poder hacer busquedas de php a la base de datos es mas rapido, confiable, seguro y los resultados que te devuelve los puedes manejar mas rapido.
  #3 (permalink)  
Antiguo 12/05/2005, 17:42
Avatar de Laura25  
Fecha de Ingreso: abril-2005
Mensajes: 121
Antigüedad: 19 años
Puntos: 0
es algo muy sencillito y por eso lo hago con el bloc de notas
y me corre prisa claro

gracias de todas formas!
  #4 (permalink)  
Antiguo 13/05/2005, 03:06
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Tendrías que poner un separador entre lo que representarían los diferentes tipos de datos (nombre, apellidos, edad)... sería el equivalente a las columnas en una Base de Datos. Igual tendrías que manejar los diferentes registros en cada línea...

De forma gráfica la estructura de tu archivo podrías ser algo como:
Código:
Arturo|Rodríguez|24
Alberto|Peña|16
...|...|...
Entonces, primero harías un explode por renglones y posteriormente por tu separador... y la busqueda sería algo como:
Código PHP:
switch($algo) {
case 
'nombre'$i=0; break;
case 
'apellido'$i=1; break;
case 
'edad'$i=2; break;
}
for(
j=0j<count($filas); j++) { // $filas será tu primes explode
// recorremos todos los datos de "una misma columna"
    
if($buscando==$datos[$j][$i]) $encontrados.=$datos[$j][$i]."<br>";
}
echo 
$encontrados
Algo así... solo planteo una solución. Te será útil:
www.php.net/fopen
www.php.net/fread
www.php.net/fgets
www.php.net/fclose
www.php.net/explode
Supongo no tendrás problema con eso...

Ahora bien, por pequeña que sea tu aplicación, es recomendable que manejes Base de Datos .

Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"

Última edición por jam1138; 13/05/2005 a las 21:41
  #5 (permalink)  
Antiguo 13/05/2005, 11:18
Avatar de Laura25  
Fecha de Ingreso: abril-2005
Mensajes: 121
Antigüedad: 19 años
Puntos: 0
y la pagina de resultados como se muestra?
  #6 (permalink)  
Antiguo 13/05/2005, 18:50
Avatar de Laura25  
Fecha de Ingreso: abril-2005
Mensajes: 121
Antigüedad: 19 años
Puntos: 0
sigo cn mis pruebas..
  #7 (permalink)  
Antiguo 13/05/2005, 22:02
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Cita:
Iniciado por Laura25
sigo cn mis pruebas..
... ¿y ese mensaje pa' qué? ... jejeje...
Cita:
Iniciado por Laura25
y la pagina de resultados como se muestra?
Como quireas/lo decees... en mi ejemplo solo guardo las coincidencias en una variable y se imprimirán cada una de las coincidencias en un renglón nuevo...

Quizá te interese mostrar todos los datos de un valor enontrado... .. yo el echo dentro del if ocupando un cilo que ahora recorrería los "campos". La verdad es que las posibilidades son muchas y depende de cada uno la forma a utilizar.

Otro enlace que te sería útil: http://www.php.net/manual/es/ref.strings.php ; Funciones de Cadenas... actualmente planteo que la busqueda de haga por coincidencis exáctas, con estás funcionas podrás igual recuperar, poe ejemplo:
- palabras similares: Busco: Antonio; Recupero: Antoní
- cadenas que estén dentro de otra cadena: Busco Antonio; Recupero: Marco Antonio
- Palabras sin diferencias entre Mayúsculas y minúscula: Busco: antonio; Recupero: Antonio
- Cadenas que empiezen con otra cadena: Busco: J; Recupero: José, Jesús, Jacinto...
- Etc, etc, etc, etc....

Creo yo un sistema de busquedas tiene que tomar en cuenta esos casos que antes planteé... ...

Vuelvo a mencionar (solo por mencionar), que es más recomendable usar una Base de Datos... No va a ser más rápido y funcionar mejor que algo que está pensado para hacer específicamente lo que necesitas...

La mejor de las suertes ... presumenos cuando lo termines, desde ahora te aplaudo , si necesitas ayuda , veremos qué podemos hacer. La verdad es que, al menos a mí, se me hace un ejercicio muy interezante.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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 16:26.